[PATCH 2/2] PCI: rockchip: Remove redundant PCIe message routing definitions

Hans Zhang posted 2 patches 6 months, 2 weeks ago
[PATCH 2/2] PCI: rockchip: Remove redundant PCIe message routing definitions
Posted by Hans Zhang 6 months, 2 weeks ago
The Rockchip driver contained duplicated message routing and INTx code
definitions (e.g., ROCKCHIP_PCIE_MSG_ROUTING_TO_RC,
ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA). These are already provided by the
PCI core in drivers/pci/pci.h as PCIE_MSG_TYPE_R_RC and
PCIE_MSG_CODE_ASSERT_INTA, respectively.

Remove the driver-specific definitions and use the common PCIe macros
instead. This aligns the driver with the PCIe specification and reduces
maintenance overhead.

Signed-off-by: Hans Zhang <18255117159@163.com>
---
 drivers/pci/controller/pcie-rockchip.h | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/drivers/pci/controller/pcie-rockchip.h b/drivers/pci/controller/pcie-rockchip.h
index 5864a20323f2..12bc8da59d73 100644
--- a/drivers/pci/controller/pcie-rockchip.h
+++ b/drivers/pci/controller/pcie-rockchip.h
@@ -215,20 +215,6 @@
 #define RC_REGION_0_TYPE_MASK			GENMASK(3, 0)
 #define MAX_AXI_WRAPPER_REGION_NUM		33
 
-#define ROCKCHIP_PCIE_MSG_ROUTING_TO_RC		0x0
-#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ADDR		0x1
-#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ID		0x2
-#define ROCKCHIP_PCIE_MSG_ROUTING_BROADCAST		0x3
-#define ROCKCHIP_PCIE_MSG_ROUTING_LOCAL_INTX		0x4
-#define ROCKCHIP_PCIE_MSG_ROUTING_PME_ACK		0x5
-#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA		0x20
-#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTB		0x21
-#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTC		0x22
-#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTD		0x23
-#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTA		0x24
-#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTB		0x25
-#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTC		0x26
-#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTD		0x27
 #define ROCKCHIP_PCIE_MSG_ROUTING_MASK			GENMASK(7, 5)
 #define ROCKCHIP_PCIE_MSG_ROUTING(route) \
 	(((route) << 5) & ROCKCHIP_PCIE_MSG_ROUTING_MASK)
-- 
2.25.1
Re: [PATCH 2/2] PCI: rockchip: Remove redundant PCIe message routing definitions
Posted by Bjorn Helgaas 6 months ago
On Sat, Jun 07, 2025 at 11:49:13PM +0800, Hans Zhang wrote:
> The Rockchip driver contained duplicated message routing and INTx code
> definitions (e.g., ROCKCHIP_PCIE_MSG_ROUTING_TO_RC,
> ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA). These are already provided by the
> PCI core in drivers/pci/pci.h as PCIE_MSG_TYPE_R_RC and
> PCIE_MSG_CODE_ASSERT_INTA, respectively.
> 
> Remove the driver-specific definitions and use the common PCIe macros
> instead. This aligns the driver with the PCIe specification and reduces
> maintenance overhead.
> 
> Signed-off-by: Hans Zhang <18255117159@163.com>
> ---
>  drivers/pci/controller/pcie-rockchip.h | 14 --------------
>  1 file changed, 14 deletions(-)
> 
> diff --git a/drivers/pci/controller/pcie-rockchip.h b/drivers/pci/controller/pcie-rockchip.h
> index 5864a20323f2..12bc8da59d73 100644
> --- a/drivers/pci/controller/pcie-rockchip.h
> +++ b/drivers/pci/controller/pcie-rockchip.h
> @@ -215,20 +215,6 @@
>  #define RC_REGION_0_TYPE_MASK			GENMASK(3, 0)
>  #define MAX_AXI_WRAPPER_REGION_NUM		33
>  
> -#define ROCKCHIP_PCIE_MSG_ROUTING_TO_RC		0x0
> -#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ADDR		0x1
> -#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ID		0x2
> -#define ROCKCHIP_PCIE_MSG_ROUTING_BROADCAST		0x3
> -#define ROCKCHIP_PCIE_MSG_ROUTING_LOCAL_INTX		0x4
> -#define ROCKCHIP_PCIE_MSG_ROUTING_PME_ACK		0x5
> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA		0x20
> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTB		0x21
> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTC		0x22
> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTD		0x23
> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTA		0x24
> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTB		0x25
> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTC		0x26
> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTD		0x27

Thanks for doing this!  In fact, these definitions are not only
redundant, they're not even used at all.

>  #define ROCKCHIP_PCIE_MSG_ROUTING_MASK			GENMASK(7, 5)
>  #define ROCKCHIP_PCIE_MSG_ROUTING(route) \
>  	(((route) << 5) & ROCKCHIP_PCIE_MSG_ROUTING_MASK)

And neither are these ROUTING and CODE definitions.
Re: [PATCH 2/2] PCI: rockchip: Remove redundant PCIe message routing definitions
Posted by Hans Zhang 6 months ago

On 2025/6/20 23:42, Bjorn Helgaas wrote:
> On Sat, Jun 07, 2025 at 11:49:13PM +0800, Hans Zhang wrote:
>> The Rockchip driver contained duplicated message routing and INTx code
>> definitions (e.g., ROCKCHIP_PCIE_MSG_ROUTING_TO_RC,
>> ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA). These are already provided by the
>> PCI core in drivers/pci/pci.h as PCIE_MSG_TYPE_R_RC and
>> PCIE_MSG_CODE_ASSERT_INTA, respectively.
>>
>> Remove the driver-specific definitions and use the common PCIe macros
>> instead. This aligns the driver with the PCIe specification and reduces
>> maintenance overhead.
>>
>> Signed-off-by: Hans Zhang <18255117159@163.com>
>> ---
>>   drivers/pci/controller/pcie-rockchip.h | 14 --------------
>>   1 file changed, 14 deletions(-)
>>
>> diff --git a/drivers/pci/controller/pcie-rockchip.h b/drivers/pci/controller/pcie-rockchip.h
>> index 5864a20323f2..12bc8da59d73 100644
>> --- a/drivers/pci/controller/pcie-rockchip.h
>> +++ b/drivers/pci/controller/pcie-rockchip.h
>> @@ -215,20 +215,6 @@
>>   #define RC_REGION_0_TYPE_MASK			GENMASK(3, 0)
>>   #define MAX_AXI_WRAPPER_REGION_NUM		33
>>   
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_TO_RC		0x0
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ADDR		0x1
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_VIA_ID		0x2
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_BROADCAST		0x3
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_LOCAL_INTX		0x4
>> -#define ROCKCHIP_PCIE_MSG_ROUTING_PME_ACK		0x5
>> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTA		0x20
>> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTB		0x21
>> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTC		0x22
>> -#define ROCKCHIP_PCIE_MSG_CODE_ASSERT_INTD		0x23
>> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTA		0x24
>> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTB		0x25
>> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTC		0x26
>> -#define ROCKCHIP_PCIE_MSG_CODE_DEASSERT_INTD		0x27
> 
> Thanks for doing this!  In fact, these definitions are not only
> redundant, they're not even used at all.
> 
>>   #define ROCKCHIP_PCIE_MSG_ROUTING_MASK			GENMASK(7, 5)
>>   #define ROCKCHIP_PCIE_MSG_ROUTING(route) \
>>   	(((route) << 5) & ROCKCHIP_PCIE_MSG_ROUTING_MASK)
> 
> And neither are these ROUTING and CODE definitions.

Dear Bjorn,

Yes, this driver has too many unused definitions. I can delete the other 
unused definitions next. For this series, I just delete the similar 
macro definitions in drivers/pci/pci.h.

Best regards,
Hans