Serial Advanced Technology Attachment (SATA)

The NXP i.MX6 CPU Quad and Dual variants include an integrated Serial Advanced Technology Attachment (SATA) controller that is compatible with the Advanced Host Controller Interface (AHCI) specification.

The ConnectCore 6 Plus SBC includes one SATA connector.

Kernel configuration

You can manage SATA driver support through the following kernel configuration option:

This option is enabled as built-in on the default ConnectCore 6 SBC kernel configuration file.

This option is enabled as built-in on the default ConnectCore 6 Plus kernel configuration file.

Platform driver mapping

The AHCI SATA platform driver is located at drivers/ata/ahci_imx.c.

Device tree bindings and customization

File Description
Documentation/devicetree/bindings/ata/ahci-platform.txt AHCI platform device tree binding

The device tree node for the AHCI SATA driver is defined in the common i.MX6 device tree:

Common i.MX6Q device tree
sata: sata@02200000 {
    compatible = "fsl,imx6q-ahci";
    reg = <0x02200000 0x4000>;
    interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
    clocks = <&clks IMX6QDL_CLK_SATA>,
            <&clks IMX6QDL_CLK_SATA_REF_100M>,
            <&clks IMX6QDL_CLK_AHB>;
    clock-names = "sata", "sata_ref", "ahb";
    status = "disabled";
};

SATA is enabled on the ConnectCore 6 Plus SBC device tree:

ConnectCore 6 Plus SBC device tree
&sata {
        status = "okay";
};

SATA user space usage

Serial ATA disks are detected by the kernel during the boot process and assigned a device node in the form sdx. Partitions in the drive appear as nodes in the form sdxN, N being the partition number.

Note Serial ATA disks support hot-plugging as long as the proper power cables are used. Adaptors from legacy Molex-type connectors to SATA connectors will not provide safe hotplugging.