xref: /rk3399_rockchip-uboot/arch/arm/dts/zynq-7000.dtsi (revision 5ee236a3eae42e49a82b668a368a7d7673da1bca)
1f8f36c5dSJagannadha Sutradharudu Teki/*
2f8f36c5dSJagannadha Sutradharudu Teki * Xilinx Zynq 7000 DTSI
3f8f36c5dSJagannadha Sutradharudu Teki * Describes the hardware common to all Zynq 7000-based boards.
4f8f36c5dSJagannadha Sutradharudu Teki *
5f8f36c5dSJagannadha Sutradharudu Teki * Copyright (C) 2013 Xilinx, Inc.
6f8f36c5dSJagannadha Sutradharudu Teki *
7f8f36c5dSJagannadha Sutradharudu Teki * SPDX-License-Identifier:	GPL-2.0+
8f8f36c5dSJagannadha Sutradharudu Teki */
9f8f36c5dSJagannadha Sutradharudu Teki/include/ "skeleton.dtsi"
10f8f36c5dSJagannadha Sutradharudu Teki
11f8f36c5dSJagannadha Sutradharudu Teki/ {
12f8f36c5dSJagannadha Sutradharudu Teki	compatible = "xlnx,zynq-7000";
13580a54c5SMasahiro Yamada
14580a54c5SMasahiro Yamada	cpus {
15580a54c5SMasahiro Yamada		#address-cells = <1>;
16580a54c5SMasahiro Yamada		#size-cells = <0>;
17580a54c5SMasahiro Yamada
18580a54c5SMasahiro Yamada		cpu@0 {
19580a54c5SMasahiro Yamada			compatible = "arm,cortex-a9";
20580a54c5SMasahiro Yamada			device_type = "cpu";
21580a54c5SMasahiro Yamada			reg = <0>;
22580a54c5SMasahiro Yamada			clocks = <&clkc 3>;
23580a54c5SMasahiro Yamada			clock-latency = <1000>;
24bece06ceSMichal Simek			cpu0-supply = <&regulator_vccpint>;
25580a54c5SMasahiro Yamada			operating-points = <
26580a54c5SMasahiro Yamada				/* kHz    uV */
27580a54c5SMasahiro Yamada				666667  1000000
28580a54c5SMasahiro Yamada				333334  1000000
29580a54c5SMasahiro Yamada			>;
30580a54c5SMasahiro Yamada		};
31580a54c5SMasahiro Yamada
32580a54c5SMasahiro Yamada		cpu@1 {
33580a54c5SMasahiro Yamada			compatible = "arm,cortex-a9";
34580a54c5SMasahiro Yamada			device_type = "cpu";
35580a54c5SMasahiro Yamada			reg = <1>;
36580a54c5SMasahiro Yamada			clocks = <&clkc 3>;
37580a54c5SMasahiro Yamada		};
38580a54c5SMasahiro Yamada	};
39580a54c5SMasahiro Yamada
40580a54c5SMasahiro Yamada	pmu {
41580a54c5SMasahiro Yamada		compatible = "arm,cortex-a9-pmu";
42580a54c5SMasahiro Yamada		interrupts = <0 5 4>, <0 6 4>;
43580a54c5SMasahiro Yamada		interrupt-parent = <&intc>;
44580a54c5SMasahiro Yamada		reg = < 0xf8891000 0x1000 0xf8893000 0x1000 >;
45580a54c5SMasahiro Yamada	};
46580a54c5SMasahiro Yamada
47bece06ceSMichal Simek	regulator_vccpint: fixedregulator@0 {
48bece06ceSMichal Simek		compatible = "regulator-fixed";
49bece06ceSMichal Simek		regulator-name = "VCCPINT";
50bece06ceSMichal Simek		regulator-min-microvolt = <1000000>;
51bece06ceSMichal Simek		regulator-max-microvolt = <1000000>;
52bece06ceSMichal Simek		regulator-boot-on;
53bece06ceSMichal Simek		regulator-always-on;
54bece06ceSMichal Simek	};
55bece06ceSMichal Simek
56580a54c5SMasahiro Yamada	amba {
57580a54c5SMasahiro Yamada		compatible = "simple-bus";
58580a54c5SMasahiro Yamada		#address-cells = <1>;
59580a54c5SMasahiro Yamada		#size-cells = <1>;
60580a54c5SMasahiro Yamada		interrupt-parent = <&intc>;
61580a54c5SMasahiro Yamada		ranges;
62580a54c5SMasahiro Yamada
63fb1a5061SMichal Simek		adc: adc@f8007100 {
64fb1a5061SMichal Simek			compatible = "xlnx,zynq-xadc-1.00.a";
65fb1a5061SMichal Simek			reg = <0xf8007100 0x20>;
66fb1a5061SMichal Simek			interrupts = <0 7 4>;
67fb1a5061SMichal Simek			interrupt-parent = <&intc>;
68fb1a5061SMichal Simek			clocks = <&clkc 12>;
69fb1a5061SMichal Simek		};
70fb1a5061SMichal Simek
71fb1a5061SMichal Simek		can0: can@e0008000 {
72fb1a5061SMichal Simek			compatible = "xlnx,zynq-can-1.0";
73fb1a5061SMichal Simek			status = "disabled";
74fb1a5061SMichal Simek			clocks = <&clkc 19>, <&clkc 36>;
75fb1a5061SMichal Simek			clock-names = "can_clk", "pclk";
76fb1a5061SMichal Simek			reg = <0xe0008000 0x1000>;
77fb1a5061SMichal Simek			interrupts = <0 28 4>;
78fb1a5061SMichal Simek			interrupt-parent = <&intc>;
79fb1a5061SMichal Simek			tx-fifo-depth = <0x40>;
80fb1a5061SMichal Simek			rx-fifo-depth = <0x40>;
81fb1a5061SMichal Simek		};
82fb1a5061SMichal Simek
83fb1a5061SMichal Simek		can1: can@e0009000 {
84fb1a5061SMichal Simek			compatible = "xlnx,zynq-can-1.0";
85fb1a5061SMichal Simek			status = "disabled";
86fb1a5061SMichal Simek			clocks = <&clkc 20>, <&clkc 37>;
87fb1a5061SMichal Simek			clock-names = "can_clk", "pclk";
88fb1a5061SMichal Simek			reg = <0xe0009000 0x1000>;
89fb1a5061SMichal Simek			interrupts = <0 51 4>;
90fb1a5061SMichal Simek			interrupt-parent = <&intc>;
91fb1a5061SMichal Simek			tx-fifo-depth = <0x40>;
92fb1a5061SMichal Simek			rx-fifo-depth = <0x40>;
93fb1a5061SMichal Simek		};
94fb1a5061SMichal Simek
95fb1a5061SMichal Simek		gpio0: gpio@e000a000 {
96fb1a5061SMichal Simek			compatible = "xlnx,zynq-gpio-1.0";
97fb1a5061SMichal Simek			#gpio-cells = <2>;
98fb1a5061SMichal Simek			clocks = <&clkc 42>;
99fb1a5061SMichal Simek			gpio-controller;
100fb1a5061SMichal Simek			interrupt-parent = <&intc>;
101fb1a5061SMichal Simek			interrupts = <0 20 4>;
102fb1a5061SMichal Simek			reg = <0xe000a000 0x1000>;
103fb1a5061SMichal Simek		};
104fb1a5061SMichal Simek
105a0cb47f1SMichal Simek		i2c0: i2c@e0004000 {
106580a54c5SMasahiro Yamada			compatible = "cdns,i2c-r1p10";
107580a54c5SMasahiro Yamada			status = "disabled";
108580a54c5SMasahiro Yamada			clocks = <&clkc 38>;
109580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
110580a54c5SMasahiro Yamada			interrupts = <0 25 4>;
111580a54c5SMasahiro Yamada			reg = <0xe0004000 0x1000>;
112580a54c5SMasahiro Yamada			#address-cells = <1>;
113580a54c5SMasahiro Yamada			#size-cells = <0>;
114580a54c5SMasahiro Yamada		};
115580a54c5SMasahiro Yamada
116a0cb47f1SMichal Simek		i2c1: i2c@e0005000 {
117580a54c5SMasahiro Yamada			compatible = "cdns,i2c-r1p10";
118580a54c5SMasahiro Yamada			status = "disabled";
119580a54c5SMasahiro Yamada			clocks = <&clkc 39>;
120580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
121580a54c5SMasahiro Yamada			interrupts = <0 48 4>;
122580a54c5SMasahiro Yamada			reg = <0xe0005000 0x1000>;
123580a54c5SMasahiro Yamada			#address-cells = <1>;
124580a54c5SMasahiro Yamada			#size-cells = <0>;
125580a54c5SMasahiro Yamada		};
126580a54c5SMasahiro Yamada
127580a54c5SMasahiro Yamada		intc: interrupt-controller@f8f01000 {
128580a54c5SMasahiro Yamada			compatible = "arm,cortex-a9-gic";
129580a54c5SMasahiro Yamada			#interrupt-cells = <3>;
130580a54c5SMasahiro Yamada			interrupt-controller;
131580a54c5SMasahiro Yamada			reg = <0xF8F01000 0x1000>,
132580a54c5SMasahiro Yamada			      <0xF8F00100 0x100>;
133580a54c5SMasahiro Yamada		};
134580a54c5SMasahiro Yamada
135a0cb47f1SMichal Simek		L2: cache-controller@f8f02000 {
136580a54c5SMasahiro Yamada			compatible = "arm,pl310-cache";
137580a54c5SMasahiro Yamada			reg = <0xF8F02000 0x1000>;
138580a54c5SMasahiro Yamada			arm,data-latency = <3 2 2>;
139580a54c5SMasahiro Yamada			arm,tag-latency = <2 2 2>;
140580a54c5SMasahiro Yamada			cache-unified;
141580a54c5SMasahiro Yamada			cache-level = <2>;
142580a54c5SMasahiro Yamada		};
143580a54c5SMasahiro Yamada
144fb1a5061SMichal Simek		mc: memory-controller@f8006000 {
145fb1a5061SMichal Simek			compatible = "xlnx,zynq-ddrc-a05";
146fb1a5061SMichal Simek			reg = <0xf8006000 0x1000>;
147fb1a5061SMichal Simek		};
148fb1a5061SMichal Simek
149a0cb47f1SMichal Simek		uart0: serial@e0000000 {
1508a8c46a6SMichal Simek			compatible = "xlnx,xuartps", "cdns,uart-r1p8";
151580a54c5SMasahiro Yamada			status = "disabled";
152580a54c5SMasahiro Yamada			clocks = <&clkc 23>, <&clkc 40>;
1538a8c46a6SMichal Simek			clock-names = "uart_clk", "pclk";
154580a54c5SMasahiro Yamada			reg = <0xE0000000 0x1000>;
155580a54c5SMasahiro Yamada			interrupts = <0 27 4>;
156580a54c5SMasahiro Yamada		};
157580a54c5SMasahiro Yamada
158a0cb47f1SMichal Simek		uart1: serial@e0001000 {
1598a8c46a6SMichal Simek			compatible = "xlnx,xuartps", "cdns,uart-r1p8";
160580a54c5SMasahiro Yamada			status = "disabled";
161580a54c5SMasahiro Yamada			clocks = <&clkc 24>, <&clkc 41>;
1628a8c46a6SMichal Simek			clock-names = "uart_clk", "pclk";
163580a54c5SMasahiro Yamada			reg = <0xE0001000 0x1000>;
164580a54c5SMasahiro Yamada			interrupts = <0 50 4>;
165580a54c5SMasahiro Yamada		};
166580a54c5SMasahiro Yamada
167a8a8fc9cSJagan Teki		spi0: spi@e0006000 {
16840b383faSMichal Simek			compatible = "xlnx,zynq-spi-r1p6";
169a8a8fc9cSJagan Teki			reg = <0xe0006000 0x1000>;
170a8a8fc9cSJagan Teki			status = "disabled";
171a8a8fc9cSJagan Teki			interrupt-parent = <&intc>;
172a8a8fc9cSJagan Teki			interrupts = <0 26 4>;
173a8a8fc9cSJagan Teki			clocks = <&clkc 25>, <&clkc 34>;
174a8a8fc9cSJagan Teki			clock-names = "ref_clk", "pclk";
175cdc9dd07SJagan Teki			spi-max-frequency = <166666700>;
176a8a8fc9cSJagan Teki			#address-cells = <1>;
177a8a8fc9cSJagan Teki			#size-cells = <0>;
178a8a8fc9cSJagan Teki		};
179a8a8fc9cSJagan Teki
180a8a8fc9cSJagan Teki		spi1: spi@e0007000 {
18140b383faSMichal Simek			compatible = "xlnx,zynq-spi-r1p6";
182a8a8fc9cSJagan Teki			reg = <0xe0007000 0x1000>;
183a8a8fc9cSJagan Teki			status = "disabled";
184a8a8fc9cSJagan Teki			interrupt-parent = <&intc>;
185a8a8fc9cSJagan Teki			interrupts = <0 49 4>;
186a8a8fc9cSJagan Teki			clocks = <&clkc 26>, <&clkc 35>;
187a8a8fc9cSJagan Teki			clock-names = "ref_clk", "pclk";
188cdc9dd07SJagan Teki			spi-max-frequency = <166666700>;
189a8a8fc9cSJagan Teki			#address-cells = <1>;
190a8a8fc9cSJagan Teki			#size-cells = <0>;
191a8a8fc9cSJagan Teki		};
192a8a8fc9cSJagan Teki
193580a54c5SMasahiro Yamada		gem0: ethernet@e000b000 {
1947e163363SMichal Simek			compatible = "cdns,zynq-gem", "cdns,gem";
19508305febSMichal Simek			reg = <0xe000b000 0x1000>;
196580a54c5SMasahiro Yamada			status = "disabled";
197580a54c5SMasahiro Yamada			interrupts = <0 22 4>;
198580a54c5SMasahiro Yamada			clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>;
199580a54c5SMasahiro Yamada			clock-names = "pclk", "hclk", "tx_clk";
200*5ee236a3SMichal Simek			#address-cells = <1>;
201*5ee236a3SMichal Simek			#size-cells = <0>;
202580a54c5SMasahiro Yamada		};
203580a54c5SMasahiro Yamada
204580a54c5SMasahiro Yamada		gem1: ethernet@e000c000 {
2057e163363SMichal Simek			compatible = "cdns,zynq-gem", "cdns,gem";
20608305febSMichal Simek			reg = <0xe000c000 0x1000>;
207580a54c5SMasahiro Yamada			status = "disabled";
208580a54c5SMasahiro Yamada			interrupts = <0 45 4>;
209580a54c5SMasahiro Yamada			clocks = <&clkc 31>, <&clkc 31>, <&clkc 14>;
210580a54c5SMasahiro Yamada			clock-names = "pclk", "hclk", "tx_clk";
211*5ee236a3SMichal Simek			#address-cells = <1>;
212*5ee236a3SMichal Simek			#size-cells = <0>;
213580a54c5SMasahiro Yamada		};
214580a54c5SMasahiro Yamada
215a0cb47f1SMichal Simek		sdhci0: sdhci@e0100000 {
216580a54c5SMasahiro Yamada			compatible = "arasan,sdhci-8.9a";
217580a54c5SMasahiro Yamada			status = "disabled";
218580a54c5SMasahiro Yamada			clock-names = "clk_xin", "clk_ahb";
219580a54c5SMasahiro Yamada			clocks = <&clkc 21>, <&clkc 32>;
220580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
221580a54c5SMasahiro Yamada			interrupts = <0 24 4>;
222580a54c5SMasahiro Yamada			reg = <0xe0100000 0x1000>;
223580a54c5SMasahiro Yamada		} ;
224580a54c5SMasahiro Yamada
225a0cb47f1SMichal Simek		sdhci1: sdhci@e0101000 {
226580a54c5SMasahiro Yamada			compatible = "arasan,sdhci-8.9a";
227580a54c5SMasahiro Yamada			status = "disabled";
228580a54c5SMasahiro Yamada			clock-names = "clk_xin", "clk_ahb";
229580a54c5SMasahiro Yamada			clocks = <&clkc 22>, <&clkc 33>;
230580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
231580a54c5SMasahiro Yamada			interrupts = <0 47 4>;
232580a54c5SMasahiro Yamada			reg = <0xe0101000 0x1000>;
233580a54c5SMasahiro Yamada		} ;
234580a54c5SMasahiro Yamada
235580a54c5SMasahiro Yamada		slcr: slcr@f8000000 {
236580a54c5SMasahiro Yamada			#address-cells = <1>;
237580a54c5SMasahiro Yamada			#size-cells = <1>;
238580a54c5SMasahiro Yamada			compatible = "xlnx,zynq-slcr", "syscon";
239580a54c5SMasahiro Yamada			reg = <0xF8000000 0x1000>;
240580a54c5SMasahiro Yamada			ranges;
241580a54c5SMasahiro Yamada			clkc: clkc@100 {
242580a54c5SMasahiro Yamada				#clock-cells = <1>;
243580a54c5SMasahiro Yamada				compatible = "xlnx,ps7-clkc";
244580a54c5SMasahiro Yamada				ps-clk-frequency = <33333333>;
245580a54c5SMasahiro Yamada				fclk-enable = <0>;
246580a54c5SMasahiro Yamada				clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x",
247580a54c5SMasahiro Yamada						"cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x",
248580a54c5SMasahiro Yamada						"dci", "lqspi", "smc", "pcap", "gem0", "gem1",
249580a54c5SMasahiro Yamada						"fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1",
250580a54c5SMasahiro Yamada						"sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1",
251580a54c5SMasahiro Yamada						"dma", "usb0_aper", "usb1_aper", "gem0_aper",
252580a54c5SMasahiro Yamada						"gem1_aper", "sdio0_aper", "sdio1_aper",
253580a54c5SMasahiro Yamada						"spi0_aper", "spi1_aper", "can0_aper", "can1_aper",
254580a54c5SMasahiro Yamada						"i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper",
255580a54c5SMasahiro Yamada						"gpio_aper", "lqspi_aper", "smc_aper", "swdt",
256580a54c5SMasahiro Yamada						"dbg_trc", "dbg_apb";
257580a54c5SMasahiro Yamada				reg = <0x100 0x100>;
258580a54c5SMasahiro Yamada			};
259580a54c5SMasahiro Yamada		};
260580a54c5SMasahiro Yamada
261fb1a5061SMichal Simek		dmac_s: dmac@f8003000 {
262fb1a5061SMichal Simek			compatible = "arm,pl330", "arm,primecell";
263fb1a5061SMichal Simek			reg = <0xf8003000 0x1000>;
264fb1a5061SMichal Simek			interrupt-parent = <&intc>;
265fb1a5061SMichal Simek			interrupt-names = "abort", "dma0", "dma1", "dma2", "dma3",
266fb1a5061SMichal Simek				"dma4", "dma5", "dma6", "dma7";
267fb1a5061SMichal Simek			interrupts = <0 13 4>,
268fb1a5061SMichal Simek			             <0 14 4>, <0 15 4>,
269fb1a5061SMichal Simek			             <0 16 4>, <0 17 4>,
270fb1a5061SMichal Simek			             <0 40 4>, <0 41 4>,
271fb1a5061SMichal Simek			             <0 42 4>, <0 43 4>;
272fb1a5061SMichal Simek			#dma-cells = <1>;
273fb1a5061SMichal Simek			#dma-channels = <8>;
274fb1a5061SMichal Simek			#dma-requests = <4>;
275fb1a5061SMichal Simek			clocks = <&clkc 27>;
276fb1a5061SMichal Simek			clock-names = "apb_pclk";
277fb1a5061SMichal Simek		};
278fb1a5061SMichal Simek
279fb1a5061SMichal Simek		devcfg: devcfg@f8007000 {
280fb1a5061SMichal Simek			compatible = "xlnx,zynq-devcfg-1.0";
281fb1a5061SMichal Simek			reg = <0xf8007000 0x100>;
282fb1a5061SMichal Simek		};
283fb1a5061SMichal Simek
284580a54c5SMasahiro Yamada		global_timer: timer@f8f00200 {
285580a54c5SMasahiro Yamada			compatible = "arm,cortex-a9-global-timer";
286580a54c5SMasahiro Yamada			reg = <0xf8f00200 0x20>;
287580a54c5SMasahiro Yamada			interrupts = <1 11 0x301>;
288580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
289580a54c5SMasahiro Yamada			clocks = <&clkc 4>;
290580a54c5SMasahiro Yamada		};
291580a54c5SMasahiro Yamada
292a0cb47f1SMichal Simek		ttc0: timer@f8001000 {
293580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
294b346bd1dSMichal Simek			interrupts = <0 10 4>, <0 11 4>, <0 12 4>;
295580a54c5SMasahiro Yamada			compatible = "cdns,ttc";
296580a54c5SMasahiro Yamada			clocks = <&clkc 6>;
297580a54c5SMasahiro Yamada			reg = <0xF8001000 0x1000>;
298580a54c5SMasahiro Yamada		};
299580a54c5SMasahiro Yamada
300a0cb47f1SMichal Simek		ttc1: timer@f8002000 {
301580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
302b346bd1dSMichal Simek			interrupts = <0 37 4>, <0 38 4>, <0 39 4>;
303580a54c5SMasahiro Yamada			compatible = "cdns,ttc";
304580a54c5SMasahiro Yamada			clocks = <&clkc 6>;
305580a54c5SMasahiro Yamada			reg = <0xF8002000 0x1000>;
306580a54c5SMasahiro Yamada		};
307fb1a5061SMichal Simek
308a0cb47f1SMichal Simek		scutimer: timer@f8f00600 {
309580a54c5SMasahiro Yamada			interrupt-parent = <&intc>;
310580a54c5SMasahiro Yamada			interrupts = < 1 13 0x301 >;
311580a54c5SMasahiro Yamada			compatible = "arm,cortex-a9-twd-timer";
312580a54c5SMasahiro Yamada			reg = < 0xf8f00600 0x20 >;
313580a54c5SMasahiro Yamada			clocks = <&clkc 4>;
314580a54c5SMasahiro Yamada		} ;
315fb1a5061SMichal Simek
316fb1a5061SMichal Simek		usb0: usb@e0002000 {
317fb1a5061SMichal Simek			compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
318fb1a5061SMichal Simek			status = "disabled";
319fb1a5061SMichal Simek			clocks = <&clkc 28>;
320fb1a5061SMichal Simek			interrupt-parent = <&intc>;
321fb1a5061SMichal Simek			interrupts = <0 21 4>;
322fb1a5061SMichal Simek			reg = <0xe0002000 0x1000>;
323fb1a5061SMichal Simek			phy_type = "ulpi";
324fb1a5061SMichal Simek		};
325fb1a5061SMichal Simek
326fb1a5061SMichal Simek		usb1: usb@e0003000 {
327fb1a5061SMichal Simek			compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2";
328fb1a5061SMichal Simek			status = "disabled";
329fb1a5061SMichal Simek			clocks = <&clkc 29>;
330fb1a5061SMichal Simek			interrupt-parent = <&intc>;
331fb1a5061SMichal Simek			interrupts = <0 44 4>;
332fb1a5061SMichal Simek			reg = <0xe0003000 0x1000>;
333fb1a5061SMichal Simek			phy_type = "ulpi";
334fb1a5061SMichal Simek		};
335fb1a5061SMichal Simek
336fb1a5061SMichal Simek		watchdog0: watchdog@f8005000 {
337fb1a5061SMichal Simek			clocks = <&clkc 45>;
338fb1a5061SMichal Simek			compatible = "cdns,wdt-r1p2";
339fb1a5061SMichal Simek			interrupt-parent = <&intc>;
340fb1a5061SMichal Simek			interrupts = <0 9 1>;
341fb1a5061SMichal Simek			reg = <0xf8005000 0x1000>;
342fb1a5061SMichal Simek			timeout-sec = <10>;
343fb1a5061SMichal Simek		};
344580a54c5SMasahiro Yamada	};
345f8f36c5dSJagannadha Sutradharudu Teki};
346