1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright (C) 2016 Stefan Roese <sr@denx.de>
12 * Dummy implementation that can be overwritten by a board
15 __weak int board_ahci_enable(void)
20 static int mvebu_ahci_bind(struct udevice *dev)
22 struct udevice *scsi_dev;
25 ret = ahci_bind_scsi(dev, &scsi_dev);
27 debug("%s: Failed to bind (err=%d\n)", __func__, ret);
34 static int mvebu_ahci_probe(struct udevice *dev)
37 * Board specific SATA / AHCI enable code, e.g. enable the
38 * AHCI power or deassert reset
42 ahci_probe_scsi(dev, (ulong)dev_remap_addr(dev));
47 static const struct udevice_id mvebu_ahci_ids[] = {
48 { .compatible = "marvell,armada-380-ahci" },
49 { .compatible = "marvell,armada-3700-ahci" },
50 { .compatible = "marvell,armada-8k-ahci" },
51 { .compatible = "cavium,octeon-7130-ahci" },
55 U_BOOT_DRIVER(ahci_mvebu_drv) = {
58 .of_match = mvebu_ahci_ids,
59 .bind = mvebu_ahci_bind,
60 .probe = mvebu_ahci_probe,