[PATCH 2/2] ata: ahci-pci: Add new option CONFIG_SPL_AHCI_PCI

Stefan Roese sr at denx.de
Mon Aug 16 09:57:38 CEST 2021


On 15.08.21 16:27, Pali Rohár wrote:
> This new option allows to disable ahci-pci driver in SPL. Disabling it is
> needed when SPL_PCI is not enabled as ahci-pci depends on PCI.
> 
> This change fixes following compile error when CONFIG_SPL_SATA_SUPPORT is
> enabled and SPL_PCI is disabled.
> 
>      LD      spl/u-boot-spl
>    arm-linux-gnueabihf-ld.bfd: drivers/ata/ahci.o: in function `ahci_probe_scsi_pci':
>    drivers/ata/ahci.c:1205: undefined reference to `dm_pci_map_bar'
>    arm-linux-gnueabihf-ld.bfd: drivers/ata/ahci.c:1215: undefined reference to `dm_pci_read_config16'
>    arm-linux-gnueabihf-ld.bfd: drivers/ata/ahci.c:1216: undefined reference to `dm_pci_read_config16'
>    arm-linux-gnueabihf-ld.bfd: drivers/ata/ahci.c:1220: undefined reference to `dm_pci_map_bar'
>    make[1]: *** [scripts/Makefile.spl:512: spl/u-boot-spl] Error 1
>    make: *** [Makefile:1977: spl/u-boot-spl] Error 2
> 
>      LD      spl/u-boot-spl
>    arm-linux-gnueabihf-ld.bfd: drivers/ata/ahci-pci.o: in function `ahci_pci_probe':
>    drivers/ata/ahci-pci.c:21: undefined reference to `ahci_probe_scsi_pci'
>    make[1]: *** [scripts/Makefile.spl:512: spl/u-boot-spl] Error 1
>    make: *** [Makefile:1977: spl/u-boot-spl] Error 2
> 
> Signed-off-by: Pali Rohár <pali at kernel.org>

Reviewed-by: Stefan Roese <sr at denx.de>

Thanks,
Stefan

> ---
>   drivers/ata/Kconfig  | 6 ++++++
>   drivers/ata/Makefile | 2 +-
>   2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
> index 0c1490a9f900..96c7c30375bd 100644
> --- a/drivers/ata/Kconfig
> +++ b/drivers/ata/Kconfig
> @@ -41,6 +41,12 @@ config AHCI_PCI
>   	help
>   	  Enables support for the PCI-based AHCI controller.
>   
> +config SPL_AHCI_PCI
> +	bool "Support for PCI-based AHCI controller for SPL"
> +	depends on SPL
> +	depends on SPL_PCI
> +	depends on SPL_SATA_SUPPORT && DM_SCSI
> +
>   config SATA_CEVA
>   	bool "Ceva Sata controller"
>   	depends on AHCI
> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
> index 4811b2f82c4e..cd88131dcd13 100644
> --- a/drivers/ata/Makefile
> +++ b/drivers/ata/Makefile
> @@ -5,7 +5,7 @@
>   
>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>   obj-$(CONFIG_AHCI) += ahci-uclass.o
> -obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
> +obj-$(CONFIG_$(SPL_)AHCI_PCI) += ahci-pci.o
>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>   obj-$(CONFIG_DWC_AHSATA) += dwc_ahsata.o
>   obj-$(CONFIG_FSL_SATA) += fsl_sata.o
> 


Viele Grüße,
Stefan

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de


More information about the U-Boot mailing list