PCI: Extend PCI root port device IDs for Zhaoxin platforms

Message ID 20231201120942.680075-1-LeoLiu-oc@zhaoxin.com
State New
Headers
Series PCI: Extend PCI root port device IDs for Zhaoxin platforms |

Commit Message

LeoLiu-oc Dec. 1, 2023, 12:09 p.m. UTC
  From: leoliu-oc <leoliu-oc@zhaoxin.com>

Add more PCI root port device IDs to the
pci_quirk_zhaoxin_pcie_ports_acs() for some new Zhaoxin platforms.

Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>
---
 drivers/pci/quirks.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Bjorn Helgaas Dec. 1, 2023, 3:53 p.m. UTC | #1
On Fri, Dec 01, 2023 at 08:09:42PM +0800, LeoLiu-oc wrote:
> From: leoliu-oc <leoliu-oc@zhaoxin.com>
> 
> Add more PCI root port device IDs to the
> pci_quirk_zhaoxin_pcie_ports_acs() for some new Zhaoxin platforms.

Can you please add a note about the plan to deal with this for future
devices, e.g., something like "future Zhaoxin devices now in
development will advertise an ACS Capability as described in the
PCIe spec"?

The point of quirks is to work around hardware that is broken or
doesn't conform to the spec in some way.  We have to add quirks when
broken hardware is already in the field, but we should have a plan to
fix newer devices so they don't require quirks.

> Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>
> ---
>  drivers/pci/quirks.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index ea476252280a..db74f8f07096 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -4709,7 +4709,7 @@ static int  pci_quirk_zhaoxin_pcie_ports_acs(struct pci_dev *dev, u16 acs_flags)
>  	switch (dev->device) {
>  	case 0x0710 ... 0x071e:
>  	case 0x0721:
> -	case 0x0723 ... 0x0732:
> +	case 0x0723 ... 0x073b:
>  		return pci_acs_ctrl_enabled(acs_flags,
>  			PCI_ACS_SV | PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_UF);
>  	}
> -- 
> 2.34.1
>
  
LeoLiu-oc Dec. 11, 2023, 9:11 a.m. UTC | #2
在 2023/12/1 23:53, Bjorn Helgaas 写道:
> On Fri, Dec 01, 2023 at 08:09:42PM +0800, LeoLiu-oc wrote:
>> From: leoliu-oc <leoliu-oc@zhaoxin.com>
>>
>> Add more PCI root port device IDs to the
>> pci_quirk_zhaoxin_pcie_ports_acs() for some new Zhaoxin platforms.
> 
> Can you please add a note about the plan to deal with this for future
> devices, e.g., something like "future Zhaoxin devices now in
> development will advertise an ACS Capability as described in the
> PCIe spec"?
> 
> The point of quirks is to work around hardware that is broken or
> doesn't conform to the spec in some way.  We have to add quirks when
> broken hardware is already in the field, but we should have a plan to
> fix newer devices so they don't require quirks.
> 
Okay, note will be added in the next version.

Sincerely,
Leoliu-oc
>> Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>
>> ---
>>   drivers/pci/quirks.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
>> index ea476252280a..db74f8f07096 100644
>> --- a/drivers/pci/quirks.c
>> +++ b/drivers/pci/quirks.c
>> @@ -4709,7 +4709,7 @@ static int  pci_quirk_zhaoxin_pcie_ports_acs(struct pci_dev *dev, u16 acs_flags)
>>   	switch (dev->device) {
>>   	case 0x0710 ... 0x071e:
>>   	case 0x0721:
>> -	case 0x0723 ... 0x0732:
>> +	case 0x0723 ... 0x073b:
>>   		return pci_acs_ctrl_enabled(acs_flags,
>>   			PCI_ACS_SV | PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_UF);
>>   	}
>> -- 
>> 2.34.1
>>
  

Patch

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index ea476252280a..db74f8f07096 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -4709,7 +4709,7 @@  static int  pci_quirk_zhaoxin_pcie_ports_acs(struct pci_dev *dev, u16 acs_flags)
 	switch (dev->device) {
 	case 0x0710 ... 0x071e:
 	case 0x0721:
-	case 0x0723 ... 0x0732:
+	case 0x0723 ... 0x073b:
 		return pci_acs_ctrl_enabled(acs_flags,
 			PCI_ACS_SV | PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_UF);
 	}