diff options
author | Andre Przywara <andre.przywara@arm.com> | 2019-04-12 16:28:54 +0530 |
---|---|---|
committer | Jagan Teki <jagan@amarulasolutions.com> | 2019-04-17 14:34:45 +0530 |
commit | f8c8669760610b2949d8d9ccaeef8231a44d4205 (patch) | |
tree | b2ba1412acd1bb0d64da31694fdf1937b3fe1b9e | |
parent | bb3362b0ca0771a511d4a622d591b4dea5cb15e4 (diff) | |
download | u-boot-f8c8669760610b2949d8d9ccaeef8231a44d4205.tar.gz |
sunxi: update SATA driver to always use DM_SCSI
It seems like the Allwinner SATA driver is already quite capable of
using the driver model, so we can force this on all boards and can
remove support for a non-DM_SCSI build.
This removes the warning about boards with SATA ports not being
DM_SCSI compliant.
It also takes the opportunity to move the driver out of the board/sunxi
directory to join its siblings in drivers/ata, and to make it a proper
Kconfig citizen.
The board defconfigs stay untouched.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
[jagan: select DM_SCSI separately]
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
-rw-r--r-- | board/sunxi/Makefile | 3 | ||||
-rw-r--r-- | drivers/ata/Kconfig | 8 | ||||
-rw-r--r-- | drivers/ata/Makefile | 1 | ||||
-rw-r--r-- | drivers/ata/ahci_sunxi.c (renamed from board/sunxi/ahci.c) | 10 | ||||
-rw-r--r-- | include/configs/sunxi-common.h | 6 | ||||
-rw-r--r-- | scripts/config_whitelist.txt | 1 |
6 files changed, 9 insertions, 20 deletions
diff --git a/board/sunxi/Makefile b/board/sunxi/Makefile index 4d6258d932..c4e13f8c38 100644 --- a/board/sunxi/Makefile +++ b/board/sunxi/Makefile @@ -8,9 +8,6 @@ # Wolfgang Denk, DENX Software Engineering, wd@denx.de. obj-y += board.o obj-$(CONFIG_SUN7I_GMAC) += gmac.o -ifndef CONFIG_SPL_BUILD -obj-$(CONFIG_SUNXI_AHCI) += ahci.o -endif obj-$(CONFIG_MACH_SUN4I) += dram_sun4i_auto.o obj-$(CONFIG_MACH_SUN5I) += dram_sun5i_auto.o obj-$(CONFIG_MACH_SUN7I) += dram_sun5i_auto.o diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index 7ebee75c0a..4be5c63f09 100644 --- a/drivers/ata/Kconfig +++ b/drivers/ata/Kconfig @@ -101,6 +101,14 @@ config SATA_SIL3114 help Enable this driver to support the SIL3114 SATA controllers. +config SUNXI_AHCI + bool "Enable Allwinner SATA driver support" + depends on AHCI + default y if ARCH_SUNXI + help + Enable this driver to support the SATA controllers found in the + Allwinner A10, A20 and R40 SoCs. + config AHCI_MVEBU bool "Marvell EBU AHCI SATA support" depends on ARCH_MVEBU diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index 10bed53bb3..a69edb10f7 100644 --- a/drivers/ata/Makefile +++ b/drivers/ata/Makefile @@ -18,3 +18,4 @@ obj-$(CONFIG_SATA_SIL3114) += sata_sil3114.o obj-$(CONFIG_SATA_SIL) += sata_sil.o obj-$(CONFIG_SANDBOX) += sata_sandbox.o obj-$(CONFIG_AHCI_MVEBU) += ahci_mvebu.o +obj-$(CONFIG_SUNXI_AHCI) += ahci_sunxi.o diff --git a/board/sunxi/ahci.c b/drivers/ata/ahci_sunxi.c index 9b03013667..77b932aa03 100644 --- a/board/sunxi/ahci.c +++ b/drivers/ata/ahci_sunxi.c @@ -70,15 +70,6 @@ static int sunxi_ahci_phy_init(u8 *reg_base) return 0; } -#ifndef CONFIG_DM_SCSI -void scsi_init(void) -{ - if (sunxi_ahci_phy_init((u8 *)SUNXI_SATA_BASE) < 0) - return; - - ahci_init((void __iomem *)SUNXI_SATA_BASE); -} -#else static int sunxi_sata_probe(struct udevice *dev) { ulong base; @@ -132,4 +123,3 @@ U_BOOT_DRIVER(ahci_sunxi_drv) = { .bind = sunxi_sata_bind, .probe = sunxi_sata_probe, }; -#endif diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index b01d1c3c84..bc30994029 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -104,13 +104,7 @@ #define PHYS_SDRAM_0_SIZE 0x80000000 /* 2 GiB */ #ifdef CONFIG_AHCI -#define CONFIG_SCSI_AHCI_PLAT -#define CONFIG_SUNXI_AHCI #define CONFIG_SYS_64BIT_LBA -#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1 -#define CONFIG_SYS_SCSI_MAX_LUN 1 -#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ - CONFIG_SYS_SCSI_MAX_LUN) #endif #define CONFIG_SETUP_MEMORY_TAGS diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index fa98efc24c..d42219095a 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -1939,7 +1939,6 @@ CONFIG_STV0991 CONFIG_STV0991_HZ CONFIG_STV0991_HZ_CLOCK CONFIG_ST_SMI -CONFIG_SUNXI_AHCI CONFIG_SUNXI_GPIO CONFIG_SUNXI_MAX_FB_SIZE CONFIG_SUPERH_ON_CHIP_R8A66597 |