bcm-cygnus.dtsi 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610
  1. /*
  2. * BSD LICENSE
  3. *
  4. * Copyright(c) 2014 Broadcom Corporation. All rights reserved.
  5. *
  6. * Redistribution and use in source and binary forms, with or without
  7. * modification, are permitted provided that the following conditions
  8. * are met:
  9. *
  10. * * Redistributions of source code must retain the above copyright
  11. * notice, this list of conditions and the following disclaimer.
  12. * * Redistributions in binary form must reproduce the above copyright
  13. * notice, this list of conditions and the following disclaimer in
  14. * the documentation and/or other materials provided with the
  15. * distribution.
  16. * * Neither the name of Broadcom Corporation nor the names of its
  17. * contributors may be used to endorse or promote products derived
  18. * from this software without specific prior written permission.
  19. *
  20. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  21. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  22. * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  23. * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  24. * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  25. * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  26. * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  27. * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  28. * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  29. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  30. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. */
  32. #include <dt-bindings/interrupt-controller/arm-gic.h>
  33. #include <dt-bindings/interrupt-controller/irq.h>
  34. #include <dt-bindings/clock/bcm-cygnus.h>
  35. #include "skeleton.dtsi"
  36. / {
  37. compatible = "brcm,cygnus";
  38. model = "Broadcom Cygnus SoC";
  39. interrupt-parent = <&gic>;
  40. cpus {
  41. #address-cells = <1>;
  42. #size-cells = <0>;
  43. cpu@0 {
  44. device_type = "cpu";
  45. compatible = "arm,cortex-a9";
  46. next-level-cache = <&L2>;
  47. reg = <0x0>;
  48. };
  49. };
  50. /include/ "bcm-cygnus-clock.dtsi"
  51. pmu {
  52. compatible = "arm,cortex-a9-pmu";
  53. interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
  54. };
  55. core {
  56. compatible = "simple-bus";
  57. ranges = <0x00000000 0x19000000 0x1000000>;
  58. #address-cells = <1>;
  59. #size-cells = <1>;
  60. timer@20200 {
  61. compatible = "arm,cortex-a9-global-timer";
  62. reg = <0x20200 0x100>;
  63. interrupts = <GIC_PPI 11 IRQ_TYPE_EDGE_RISING>;
  64. clocks = <&periph_clk>;
  65. };
  66. gic: interrupt-controller@21000 {
  67. compatible = "arm,cortex-a9-gic";
  68. #interrupt-cells = <3>;
  69. #address-cells = <0>;
  70. interrupt-controller;
  71. reg = <0x21000 0x1000>,
  72. <0x20100 0x100>;
  73. };
  74. L2: l2-cache {
  75. compatible = "arm,pl310-cache";
  76. reg = <0x22000 0x1000>;
  77. cache-unified;
  78. cache-level = <2>;
  79. };
  80. };
  81. axi {
  82. compatible = "simple-bus";
  83. ranges;
  84. #address-cells = <1>;
  85. #size-cells = <1>;
  86. otp: otp@301c800 {
  87. compatible = "brcm,ocotp";
  88. reg = <0x0301c800 0x2c>;
  89. brcm,ocotp-size = <2048>;
  90. status = "disabled";
  91. };
  92. pcie_phy: phy@301d0a0 {
  93. compatible = "brcm,cygnus-pcie-phy";
  94. reg = <0x0301d0a0 0x14>;
  95. #address-cells = <1>;
  96. #size-cells = <0>;
  97. pcie0_phy: phy@0 {
  98. reg = <0>;
  99. #phy-cells = <0>;
  100. };
  101. pcie1_phy: phy@1 {
  102. reg = <1>;
  103. #phy-cells = <0>;
  104. };
  105. };
  106. pinctrl: pinctrl@301d0c8 {
  107. compatible = "brcm,cygnus-pinmux";
  108. reg = <0x0301d0c8 0x30>,
  109. <0x0301d24c 0x2c>;
  110. spi_0: spi_0 {
  111. function = "spi0";
  112. groups = "spi0_grp";
  113. };
  114. spi_1: spi_1 {
  115. function = "spi1";
  116. groups = "spi1_grp";
  117. };
  118. spi_2: spi_2 {
  119. function = "spi2";
  120. groups = "spi2_grp";
  121. };
  122. };
  123. mailbox: mailbox@3024024 {
  124. compatible = "brcm,iproc-mailbox";
  125. reg = <0x03024024 0x40>;
  126. interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
  127. #interrupt-cells = <1>;
  128. interrupt-controller;
  129. #mbox-cells = <1>;
  130. };
  131. gpio_crmu: gpio@3024800 {
  132. compatible = "brcm,cygnus-crmu-gpio";
  133. reg = <0x03024800 0x50>,
  134. <0x03024008 0x18>;
  135. ngpios = <6>;
  136. #gpio-cells = <2>;
  137. gpio-controller;
  138. interrupt-controller;
  139. interrupt-parent = <&mailbox>;
  140. interrupts = <0>;
  141. };
  142. mdio: mdio@18002000 {
  143. compatible = "brcm,iproc-mdio";
  144. reg = <0x18002000 0x8>;
  145. #size-cells = <1>;
  146. #address-cells = <0>;
  147. status = "disabled";
  148. gphy0: ethernet-phy@0 {
  149. reg = <0>;
  150. };
  151. gphy1: ethernet-phy@1 {
  152. reg = <1>;
  153. };
  154. };
  155. switch: switch@18007000 {
  156. compatible = "brcm,bcm11360-srab", "brcm,cygnus-srab";
  157. reg = <0x18007000 0x1000>;
  158. status = "disabled";
  159. ports {
  160. #address-cells = <1>;
  161. #size-cells = <0>;
  162. port@0 {
  163. reg = <0>;
  164. phy-handle = <&gphy0>;
  165. phy-mode = "rgmii";
  166. };
  167. port@1 {
  168. reg = <1>;
  169. phy-handle = <&gphy1>;
  170. phy-mode = "rgmii";
  171. };
  172. port@8 {
  173. reg = <8>;
  174. label = "cpu";
  175. ethernet = <&eth0>;
  176. fixed-link {
  177. speed = <1000>;
  178. full-duplex;
  179. };
  180. };
  181. };
  182. };
  183. i2c0: i2c@18008000 {
  184. compatible = "brcm,cygnus-iproc-i2c", "brcm,iproc-i2c";
  185. reg = <0x18008000 0x100>;
  186. #address-cells = <1>;
  187. #size-cells = <0>;
  188. interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
  189. clock-frequency = <100000>;
  190. status = "disabled";
  191. };
  192. wdt0: wdt@18009000 {
  193. compatible = "arm,sp805" , "arm,primecell";
  194. reg = <0x18009000 0x1000>;
  195. interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
  196. clocks = <&axi81_clk>;
  197. clock-names = "apb_pclk";
  198. };
  199. gpio_ccm: gpio@1800a000 {
  200. compatible = "brcm,cygnus-ccm-gpio";
  201. reg = <0x1800a000 0x50>,
  202. <0x0301d164 0x20>;
  203. ngpios = <24>;
  204. #gpio-cells = <2>;
  205. gpio-controller;
  206. interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
  207. interrupt-controller;
  208. };
  209. i2c1: i2c@1800b000 {
  210. compatible = "brcm,cygnus-iproc-i2c", "brcm,iproc-i2c";
  211. reg = <0x1800b000 0x100>;
  212. #address-cells = <1>;
  213. #size-cells = <0>;
  214. interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
  215. clock-frequency = <100000>;
  216. status = "disabled";
  217. };
  218. pcie0: pcie@18012000 {
  219. compatible = "brcm,iproc-pcie";
  220. reg = <0x18012000 0x1000>;
  221. #interrupt-cells = <1>;
  222. interrupt-map-mask = <0 0 0 0>;
  223. interrupt-map = <0 0 0 0 &gic GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
  224. linux,pci-domain = <0>;
  225. bus-range = <0x00 0xff>;
  226. #address-cells = <3>;
  227. #size-cells = <2>;
  228. device_type = "pci";
  229. ranges = <0x81000000 0 0 0x28000000 0 0x00010000
  230. 0x82000000 0 0x20000000 0x20000000 0 0x04000000>;
  231. phys = <&pcie0_phy>;
  232. phy-names = "pcie-phy";
  233. status = "disabled";
  234. msi-parent = <&msi0>;
  235. msi0: msi-controller {
  236. compatible = "brcm,iproc-msi";
  237. msi-controller;
  238. interrupt-parent = <&gic>;
  239. interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
  240. <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
  241. <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
  242. <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
  243. };
  244. };
  245. pcie1: pcie@18013000 {
  246. compatible = "brcm,iproc-pcie";
  247. reg = <0x18013000 0x1000>;
  248. #interrupt-cells = <1>;
  249. interrupt-map-mask = <0 0 0 0>;
  250. interrupt-map = <0 0 0 0 &gic GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
  251. linux,pci-domain = <1>;
  252. bus-range = <0x00 0xff>;
  253. #address-cells = <3>;
  254. #size-cells = <2>;
  255. device_type = "pci";
  256. ranges = <0x81000000 0 0 0x48000000 0 0x00010000
  257. 0x82000000 0 0x40000000 0x40000000 0 0x04000000>;
  258. phys = <&pcie1_phy>;
  259. phy-names = "pcie-phy";
  260. status = "disabled";
  261. msi-parent = <&msi1>;
  262. msi1: msi-controller {
  263. compatible = "brcm,iproc-msi";
  264. msi-controller;
  265. interrupt-parent = <&gic>;
  266. interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
  267. <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
  268. <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
  269. <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
  270. };
  271. };
  272. dma0: dma@18018000 {
  273. compatible = "arm,pl330", "arm,primecell";
  274. reg = <0x18018000 0x1000>;
  275. interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
  276. <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>,
  277. <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
  278. <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
  279. <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
  280. <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
  281. <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
  282. <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
  283. <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
  284. clocks = <&apb_clk>;
  285. clock-names = "apb_pclk";
  286. #dma-cells = <1>;
  287. };
  288. uart0: serial@18020000 {
  289. compatible = "snps,dw-apb-uart";
  290. reg = <0x18020000 0x100>;
  291. reg-shift = <2>;
  292. reg-io-width = <4>;
  293. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  294. clocks = <&axi81_clk>;
  295. clock-frequency = <100000000>;
  296. status = "disabled";
  297. };
  298. uart1: serial@18021000 {
  299. compatible = "snps,dw-apb-uart";
  300. reg = <0x18021000 0x100>;
  301. reg-shift = <2>;
  302. reg-io-width = <4>;
  303. interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  304. clocks = <&axi81_clk>;
  305. clock-frequency = <100000000>;
  306. status = "disabled";
  307. };
  308. uart2: serial@18022000 {
  309. compatible = "snps,dw-apb-uart";
  310. reg = <0x18022000 0x100>;
  311. reg-shift = <2>;
  312. reg-io-width = <4>;
  313. interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
  314. clocks = <&axi81_clk>;
  315. clock-frequency = <100000000>;
  316. status = "disabled";
  317. };
  318. uart3: serial@18023000 {
  319. compatible = "snps,dw-apb-uart";
  320. reg = <0x18023000 0x100>;
  321. reg-shift = <2>;
  322. reg-io-width = <4>;
  323. interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
  324. clocks = <&axi81_clk>;
  325. clock-frequency = <100000000>;
  326. status = "disabled";
  327. };
  328. spi0: spi@18028000 {
  329. compatible = "arm,pl022", "arm,primecell";
  330. reg = <0x18028000 0x1000>;
  331. #address-cells = <1>;
  332. #size-cells = <0>;
  333. interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
  334. pinctrl-0 = <&spi_0>;
  335. clocks = <&axi81_clk>;
  336. clock-names = "apb_pclk";
  337. status = "disabled";
  338. };
  339. spi1: spi@18029000 {
  340. compatible = "arm,pl022", "arm,primecell";
  341. reg = <0x18029000 0x1000>;
  342. #address-cells = <1>;
  343. #size-cells = <0>;
  344. interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
  345. pinctrl-0 = <&spi_1>;
  346. clocks = <&axi81_clk>;
  347. clock-names = "apb_pclk";
  348. status = "disabled";
  349. };
  350. spi2: spi@1802a000 {
  351. compatible = "arm,pl022", "arm,primecell";
  352. reg = <0x1802a000 0x1000>;
  353. #address-cells = <1>;
  354. #size-cells = <0>;
  355. interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
  356. pinctrl-0 = <&spi_2>;
  357. clocks = <&axi81_clk>;
  358. clock-names = "apb_pclk";
  359. status = "disabled";
  360. };
  361. sdhci0: sdhci@18041000 {
  362. compatible = "brcm,sdhci-iproc-cygnus";
  363. reg = <0x18041000 0x100>;
  364. interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
  365. clocks = <&lcpll0 BCM_CYGNUS_LCPLL0_SDIO_CLK>;
  366. bus-width = <4>;
  367. sdhci,auto-cmd12;
  368. status = "disabled";
  369. };
  370. eth0: ethernet@18042000 {
  371. compatible = "brcm,amac";
  372. reg = <0x18042000 0x1000>,
  373. <0x18110000 0x1000>;
  374. reg-names = "amac_base", "idm_base";
  375. interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
  376. status = "disabled";
  377. };
  378. sdhci1: sdhci@18043000 {
  379. compatible = "brcm,sdhci-iproc-cygnus";
  380. reg = <0x18043000 0x100>;
  381. interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
  382. clocks = <&lcpll0 BCM_CYGNUS_LCPLL0_SDIO_CLK>;
  383. bus-width = <4>;
  384. sdhci,auto-cmd12;
  385. status = "disabled";
  386. };
  387. nand: nand@18046000 {
  388. compatible = "brcm,nand-iproc", "brcm,brcmnand-v6.1";
  389. reg = <0x18046000 0x600>, <0xf8105408 0x600>,
  390. <0x18046f00 0x20>;
  391. reg-names = "nand", "iproc-idm", "iproc-ext";
  392. interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
  393. #address-cells = <1>;
  394. #size-cells = <0>;
  395. brcm,nand-has-wp;
  396. };
  397. ehci0: usb@18048000 {
  398. compatible = "generic-ehci";
  399. reg = <0x18048000 0x100>;
  400. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  401. status = "disabled";
  402. };
  403. ohci0: usb@18048800 {
  404. compatible = "generic-ohci";
  405. reg = <0x18048800 0x100>;
  406. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  407. status = "disabled";
  408. };
  409. clcd: clcd@180a0000 {
  410. compatible = "arm,pl111", "arm,primecell";
  411. reg = <0x180a0000 0x1000>;
  412. interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
  413. interrupt-names = "combined";
  414. clocks = <&axi41_clk>, <&apb_clk>;
  415. clock-names = "clcdclk", "apb_pclk";
  416. status = "disabled";
  417. };
  418. v3d: v3d@180a2000 {
  419. compatible = "brcm,cygnus-v3d";
  420. reg = <0x180a2000 0x1000>;
  421. clocks = <&mipipll BCM_CYGNUS_MIPIPLL_CH2_V3D>;
  422. clock-names = "v3d_clk";
  423. interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
  424. status = "disabled";
  425. };
  426. vc4: gpu {
  427. compatible = "brcm,cygnus-vc4";
  428. };
  429. gpio_asiu: gpio@180a5000 {
  430. compatible = "brcm,cygnus-asiu-gpio";
  431. reg = <0x180a5000 0x668>;
  432. ngpios = <146>;
  433. #gpio-cells = <2>;
  434. gpio-controller;
  435. interrupt-controller;
  436. interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
  437. gpio-ranges = <&pinctrl 0 42 1>,
  438. <&pinctrl 1 44 3>,
  439. <&pinctrl 4 48 1>,
  440. <&pinctrl 5 50 3>,
  441. <&pinctrl 8 126 1>,
  442. <&pinctrl 9 155 1>,
  443. <&pinctrl 10 152 1>,
  444. <&pinctrl 11 154 1>,
  445. <&pinctrl 12 153 1>,
  446. <&pinctrl 13 127 3>,
  447. <&pinctrl 16 140 1>,
  448. <&pinctrl 17 145 7>,
  449. <&pinctrl 24 130 10>,
  450. <&pinctrl 34 141 4>,
  451. <&pinctrl 38 54 1>,
  452. <&pinctrl 39 56 3>,
  453. <&pinctrl 42 60 3>,
  454. <&pinctrl 45 64 3>,
  455. <&pinctrl 48 68 2>,
  456. <&pinctrl 50 84 6>,
  457. <&pinctrl 56 94 6>,
  458. <&pinctrl 62 72 1>,
  459. <&pinctrl 63 70 1>,
  460. <&pinctrl 64 80 1>,
  461. <&pinctrl 65 74 3>,
  462. <&pinctrl 68 78 1>,
  463. <&pinctrl 69 82 1>,
  464. <&pinctrl 70 156 17>,
  465. <&pinctrl 87 104 12>,
  466. <&pinctrl 99 102 2>,
  467. <&pinctrl 101 90 4>,
  468. <&pinctrl 105 116 6>,
  469. <&pinctrl 111 100 2>,
  470. <&pinctrl 113 122 4>,
  471. <&pinctrl 123 11 1>,
  472. <&pinctrl 124 38 4>,
  473. <&pinctrl 128 43 1>,
  474. <&pinctrl 129 47 1>,
  475. <&pinctrl 130 49 1>,
  476. <&pinctrl 131 53 1>,
  477. <&pinctrl 132 55 1>,
  478. <&pinctrl 133 59 1>,
  479. <&pinctrl 134 63 1>,
  480. <&pinctrl 135 67 1>,
  481. <&pinctrl 136 71 1>,
  482. <&pinctrl 137 73 1>,
  483. <&pinctrl 138 77 1>,
  484. <&pinctrl 139 79 1>,
  485. <&pinctrl 140 81 1>,
  486. <&pinctrl 141 83 1>,
  487. <&pinctrl 142 10 1>;
  488. };
  489. ts_adc_syscon: ts_adc_syscon@180a6000 {
  490. compatible = "brcm,iproc-ts-adc-syscon", "syscon";
  491. reg = <0x180a6000 0xc30>;
  492. };
  493. touchscreen: touchscreen@180a6000 {
  494. compatible = "brcm,iproc-touchscreen";
  495. #address-cells = <1>;
  496. #size-cells = <1>;
  497. ts_syscon = <&ts_adc_syscon>;
  498. clocks = <&asiu_clks BCM_CYGNUS_ASIU_ADC_CLK>;
  499. clock-names = "tsc_clk";
  500. interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
  501. status = "disabled";
  502. };
  503. adc: adc@180a6000 {
  504. compatible = "brcm,iproc-static-adc";
  505. #io-channel-cells = <1>;
  506. io-channel-ranges;
  507. adc-syscon = <&ts_adc_syscon>;
  508. clocks = <&asiu_clks BCM_CYGNUS_ASIU_ADC_CLK>;
  509. clock-names = "tsc_clk";
  510. interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
  511. status = "disabled";
  512. };
  513. pwm: pwm@180aa500 {
  514. compatible = "brcm,kona-pwm";
  515. reg = <0x180aa500 0xc4>;
  516. #pwm-cells = <3>;
  517. clocks = <&asiu_clks BCM_CYGNUS_ASIU_PWM_CLK>;
  518. status = "disabled";
  519. };
  520. keypad: keypad@180ac000 {
  521. compatible = "brcm,bcm-keypad";
  522. reg = <0x180ac000 0x14c>;
  523. interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>;
  524. clocks = <&asiu_clks BCM_CYGNUS_ASIU_KEYPAD_CLK>;
  525. clock-names = "peri_clk";
  526. clock-frequency = <31250>;
  527. pull-up-enabled;
  528. col-debounce-filter-period = <0>;
  529. status-debounce-filter-period = <0>;
  530. row-output-enabled;
  531. status = "disabled";
  532. };
  533. };
  534. };