linux-zen-desktop/Documentation/devicetree/bindings/usb/octeon-usb.txt

63 lines
1.6 KiB
Plaintext
Raw Permalink Normal View History

2023-08-30 17:31:07 +02:00
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>;
};
};