Re: [PATCH 19/23] mdadm: enable Intel Alderlake RSTe configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 28 Jul 2022 20:20:57 +0800
Coly Li <colyli@xxxxxxx> wrote:

> From: Hannes Reinecke <hare@xxxxxxx>
> 
> Alderlake has a slightly different RST configuration; the UEFI
> variable is name 'RstVmdV', and the AHCI controller shows up as
> a child device of the VMD bridge, but continues to use the 'AHCI HBA'
> PCI class (and not the RAID class as RSTe would normally do).
> 
> Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
> Acked-by: Coly Li <colyli@xxxxxxx>
> ---
>  platform-intel.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/platform-intel.c b/platform-intel.c
> index 5a8729e7..a4d55a38 100644
> --- a/platform-intel.c
> +++ b/platform-intel.c
> @@ -512,12 +512,14 @@ static const struct imsm_orom
> *find_imsm_hba_orom(struct sys_dev *hba) #define AHCI_PROP "RstSataV"
>  #define AHCI_SSATA_PROP "RstsSatV"
>  #define AHCI_TSATA_PROP "RsttSatV"
> +#define AHCI_RST_PROP "RstVmdV"
>  #define VMD_PROP "RstUefiV"
>  
>  #define VENDOR_GUID \
>  	EFI_GUID(0x193dfefa, 0xa445, 0x4302, 0x99, 0xd8, 0xef, 0x3a,
> 0xad, 0x1a, 0x04, 0xc6) 
>  #define PCI_CLASS_RAID_CNTRL 0x010400
> +#define PCI_CLASS_SATA_HBA 0x010601
>  
>  static int read_efi_var(void *buffer, ssize_t buf_size,
>  			const char *variable_name, struct efi_guid
> guid) @@ -604,7 +606,8 @@ const struct imsm_orom
> *find_imsm_efi(struct sys_dev *hba) struct imsm_orom orom;
>  	struct orom_entry *ret;
>  	static const char * const sata_efivars[] = {AHCI_PROP,
> AHCI_SSATA_PROP,
> -						    AHCI_TSATA_PROP};
> +						    AHCI_TSATA_PROP,
> +						    AHCI_RST_PROP};
>  	unsigned long i;
>  
>  	if (check_env("IMSM_TEST_AHCI_EFI") ||
> check_env("IMSM_TEST_SCU_EFI")) @@ -622,7 +625,8 @@ const struct
> imsm_orom *find_imsm_efi(struct sys_dev *hba) 
>  		return NULL;
>  	case SYS_DEV_SATA:
> -		if (hba->class != PCI_CLASS_RAID_CNTRL)
> +		if (hba->class != PCI_CLASS_RAID_CNTRL &&
> +		    hba->class != PCI_CLASS_SATA_HBA)
>  			return NULL;
>  
>  		for (i = 0; i < ARRAY_SIZE(sata_efivars); i++) {


Hi,

This patch causes a regression. I've checked how SATA controllers will
be visible in --detail-platform output for IMSM. If RAID mode will be
turned on for one of the SATA controllers, rest of them will be also
visible as supported ones.
Please analyze this scenario.

Regards,
Kinga Tanska



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux