Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | OCTEON/OCTEON+ USB BLOCK |
| 2 | |
| 3 | 1) Main node |
| 4 | |
| 5 | Required properties: |
| 6 | |
| 7 | - compatible: must be "cavium,octeon-5750-usbn" |
| 8 | |
| 9 | - reg: specifies the physical base address of the USBN block and |
| 10 | the length of the memory mapped region. |
| 11 | |
| 12 | - #address-cells: specifies the number of cells needed to encode an |
| 13 | address. The value must be 2. |
| 14 | |
| 15 | - #size-cells: specifies the number of cells used to represent the size |
| 16 | of an address. The value must be 2. |
| 17 | |
| 18 | - ranges: specifies the translation between child address space and parent |
| 19 | address space. |
| 20 | |
| 21 | - clock-frequency: speed of the USB reference clock. Allowed values are |
| 22 | 12000000, 24000000 or 48000000. |
| 23 | |
| 24 | - cavium,refclk-type: type of the USB reference clock. Allowed values are |
| 25 | "crystal" or "external". |
| 26 | |
| 27 | - refclk-frequency: deprecated, use "clock-frequency". |
| 28 | |
| 29 | - refclk-type: deprecated, use "cavium,refclk-type". |
| 30 | |
| 31 | 2) Child node |
| 32 | |
| 33 | The main node must have one child node which describes the built-in |
| 34 | USB controller. |
| 35 | |
| 36 | Required properties: |
| 37 | |
| 38 | - compatible: must be "cavium,octeon-5750-usbc" |
| 39 | |
| 40 | - reg: specifies the physical base address of the USBC block and |
| 41 | the length of the memory mapped region. |
| 42 | |
| 43 | - interrupts: specifies the interrupt number for the USB controller. |
| 44 | |
| 45 | 3) Example: |
| 46 | |
| 47 | usbn: usbn@1180068000000 { |
| 48 | compatible = "cavium,octeon-5750-usbn"; |
| 49 | reg = <0x11800 0x68000000 0x0 0x1000>; |
| 50 | ranges; /* Direct mapping */ |
| 51 | #address-cells = <2>; |
| 52 | #size-cells = <2>; |
| 53 | clock-frequency = <12000000>; |
| 54 | cavium,refclk-type = "crystal"; |
| 55 | |
| 56 | usbc@16f0010000000 { |
| 57 | compatible = "cavium,octeon-5750-usbc"; |
| 58 | reg = <0x16f00 0x10000000 0x0 0x80000>; |
| 59 | interrupts = <0 56>; |
| 60 | }; |
| 61 | }; |
| 62 | |