162306a36Sopenharmony_ci* UCTL SATA controller glue 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciUCTL is the bridge unit between the I/O interconnect (an internal bus) 462306a36Sopenharmony_ciand the SATA AHCI host controller (UAHC). It performs the following functions: 562306a36Sopenharmony_ci - provides interfaces for the applications to access the UAHC AHCI 662306a36Sopenharmony_ci registers on the CN71XX I/O space. 762306a36Sopenharmony_ci - provides a bridge for UAHC to fetch AHCI command table entries and data 862306a36Sopenharmony_ci buffers from Level 2 Cache. 962306a36Sopenharmony_ci - posts interrupts to the CIU. 1062306a36Sopenharmony_ci - contains registers that: 1162306a36Sopenharmony_ci - control the behavior of the UAHC 1262306a36Sopenharmony_ci - control the clock/reset generation to UAHC 1362306a36Sopenharmony_ci - control endian swapping for all UAHC registers and DMA accesses 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciProperties: 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci- compatible: "cavium,octeon-7130-sata-uctl" 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci Compatibility with the cn7130 SOC. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci- reg: The base address of the UCTL register bank. 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci- #address-cells, #size-cells, ranges and dma-ranges must be present and hold 2462306a36Sopenharmony_ci suitable values to map all child nodes. 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ciExample: 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci uctl@118006c000000 { 2962306a36Sopenharmony_ci compatible = "cavium,octeon-7130-sata-uctl"; 3062306a36Sopenharmony_ci reg = <0x11800 0x6c000000 0x0 0x100>; 3162306a36Sopenharmony_ci ranges; /* Direct mapping */ 3262306a36Sopenharmony_ci dma-ranges; 3362306a36Sopenharmony_ci #address-cells = <2>; 3462306a36Sopenharmony_ci #size-cells = <2>; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci sata: sata@16c0000000000 { 3762306a36Sopenharmony_ci compatible = "cavium,octeon-7130-ahci"; 3862306a36Sopenharmony_ci reg = <0x16c00 0x00000000 0x0 0x200>; 3962306a36Sopenharmony_ci interrupt-parent = <&cibsata>; 4062306a36Sopenharmony_ci interrupts = <2 4>; /* Bit: 2, level */ 4162306a36Sopenharmony_ci }; 4262306a36Sopenharmony_ci }; 43