ata: don't use SYS_SCSI_MAX_SCSI_ID for SATA

CONFIG_SYS_SCSI_MAX_SCSI_ID is not defined if CONFIG_SCSI=n.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Heinrich Schuchardt 2023-03-26 18:58:26 +02:00 committed by Tom Rini
parent 480c1d6725
commit 120ec1dfa9
4 changed files with 12 additions and 2 deletions

View file

@ -72,6 +72,7 @@ CONFIG_ARP_TIMEOUT=200
CONFIG_NET_RETRY_COUNT=50
CONFIG_USE_ROOTPATH=y
CONFIG_SPL_OF_TRANSLATE=y
CONFIG_SYS_SATA_MAX_PORTS=2
CONFIG_SCSI_AHCI=y
CONFIG_DM_PCA953X=y
CONFIG_DM_I2C=y

View file

@ -30,6 +30,7 @@ CONFIG_RESET_TO_RETRY=y
CONFIG_MISC_INIT_R=y
# CONFIG_CMD_SETEXPR is not set
CONFIG_ENV_IS_IN_NVRAM=y
CONFIG_SYS_SATA_MAX_PORTS=5
CONFIG_SCSI_AHCI=y
CONFIG_SYS_64BIT_LBA=y
CONFIG_BOOTCOUNT_LIMIT=y

View file

@ -20,6 +20,14 @@ config SATA
See also CMD_SATA which provides command-line support.
config SYS_SATA_MAX_PORTS
int "Maximum supported SATA ports"
depends on SCSI_AHCI && !DM_SCSI
default 1
help
Sets the maximum number of ports to scan when looking for devices.
Ports from 0 to (this value - 1) are scanned.
config LIBATA
bool
help

View file

@ -211,8 +211,8 @@ static int ahci_host_init(struct ahci_uc_priv *uc_priv)
uc_priv->cap, uc_priv->port_map, uc_priv->n_ports);
#if !defined(CONFIG_DM_SCSI)
if (uc_priv->n_ports > CONFIG_SYS_SCSI_MAX_SCSI_ID)
uc_priv->n_ports = CONFIG_SYS_SCSI_MAX_SCSI_ID;
if (uc_priv->n_ports > CONFIG_SYS_SATA_MAX_PORTS)
uc_priv->n_ports = CONFIG_SYS_SATA_MAX_PORTS;
#endif
for (i = 0; i < uc_priv->n_ports; i++) {