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