public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
@ 2022-11-15  3:12 LeoLiu-oc
  2023-04-07 23:22 ` Bjorn Helgaas
  0 siblings, 1 reply; 6+ messages in thread
From: LeoLiu-oc @ 2022-11-15  3:12 UTC (permalink / raw)
  To: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel
  Cc: CobeChen, TonyWWang, ErosZhang, leoliu-oc

From: leoliu-oc <leoliu-oc@zhaoxin.com>

Define secondary uncorrectable error mask register, secondary
uncorrectable error severity register and secondary error capabilities and
control register bits in AER capability for PCIe to PCI/PCI-X Bridge.
Please refer to PCIe to PCI/PCI-X Bridge Specification, sec 5.2.3.2,
5.2.3.3 and 5.2.3.4.

Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>
---
 include/uapi/linux/pci_regs.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h
index 57b8e2ffb1dd..37f3baa336d7 100644
--- a/include/uapi/linux/pci_regs.h
+++ b/include/uapi/linux/pci_regs.h
@@ -799,6 +799,11 @@
 #define  PCI_ERR_ROOT_AER_IRQ		0xf8000000 /* Advanced Error Interrupt Message Number */
 #define PCI_ERR_ROOT_ERR_SRC	0x34	/* Error Source Identification */
 
+/* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X Bridge */
+#define PCI_ERR_UNCOR_MASK2		0x30	/* Secondary Uncorrectable Error Mask */
+#define PCI_ERR_UNCOR_SEVER2	0x34	/* Secondary Uncorrectable Error Severit */
+#define PCI_ERR_CAP2			0x38	/* Secondary Advanced Error Capabilities */
+
 /* Virtual Channel */
 #define PCI_VC_PORT_CAP1	0x04
 #define  PCI_VC_CAP1_EVCC	0x00000007	/* extended VC count */
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
  2022-11-15  3:12 [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge LeoLiu-oc
@ 2023-04-07 23:22 ` Bjorn Helgaas
  2023-04-12  9:49   ` LeoLiuoc
  0 siblings, 1 reply; 6+ messages in thread
From: Bjorn Helgaas @ 2023-04-07 23:22 UTC (permalink / raw)
  To: LeoLiu-oc
  Cc: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel, CobeChen, TonyWWang, ErosZhang

Since this patch has nothing to do with ACPI, update subject line to:

  PCI: Add PCIe to PCI/PCI-X Bridge AER fields

On Tue, Nov 15, 2022 at 11:12:44AM +0800, LeoLiu-oc wrote:
> From: leoliu-oc <leoliu-oc@zhaoxin.com>
> 
> Define secondary uncorrectable error mask register, secondary
> uncorrectable error severity register and secondary error capabilities and
> control register bits in AER capability for PCIe to PCI/PCI-X Bridge.
> Please refer to PCIe to PCI/PCI-X Bridge Specification, sec 5.2.3.2,
> 5.2.3.3 and 5.2.3.4.

Capitalize register names to match the spec usage.

> Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>

Assuming this goes along with a patch series that adds uses of these
definitions:

Acked-by: Bjorn Helgaas <bhelgaas@google.com>

> ---
>  include/uapi/linux/pci_regs.h | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h
> index 57b8e2ffb1dd..37f3baa336d7 100644
> --- a/include/uapi/linux/pci_regs.h
> +++ b/include/uapi/linux/pci_regs.h
> @@ -799,6 +799,11 @@
>  #define  PCI_ERR_ROOT_AER_IRQ		0xf8000000 /* Advanced Error Interrupt Message Number */
>  #define PCI_ERR_ROOT_ERR_SRC	0x34	/* Error Source Identification */
>  
> +/* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X Bridge */
> +#define PCI_ERR_UNCOR_MASK2		0x30	/* Secondary Uncorrectable Error Mask */
> +#define PCI_ERR_UNCOR_SEVER2	0x34	/* Secondary Uncorrectable Error Severit */
> +#define PCI_ERR_CAP2			0x38	/* Secondary Advanced Error Capabilities */

Please squash these right up next to the other PCI_ERR_* definitions
so it's obvious that they overlap PCI_ERR_ROOT_STATUS and
PCI_ERR_ROOT_ERR_SRC (which is fine since one device can't have both),
e.g.,

  #define PCI_ERR_ROOT_STATUS     0x30
  #define  PCI_ERR_ROOT_COR_RCV           0x00000001 /* ERR_COR Received */
  ...
  #define PCI_ERR_ROOT_ERR_SRC    0x34    /* Error Source Identification */
  #define PCI_ERR_UNCOR_MASK2     0x30    /* PCIe to PCI/PCI-X bridge */
  #define PCI_ERR_UNCOR_SEVER2    0x34    /* PCIe to PCI/PCI-X bridge */
  #define PCI_ERR_CAP2            0x38    /* PCIe to PCI/PCI-X bridge */

>  /* Virtual Channel */
>  #define PCI_VC_PORT_CAP1	0x04
>  #define  PCI_VC_CAP1_EVCC	0x00000007	/* extended VC count */
> -- 
> 2.20.1
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
  2023-04-07 23:22 ` Bjorn Helgaas
@ 2023-04-12  9:49   ` LeoLiuoc
  2023-04-12 16:10     ` Bjorn Helgaas
  0 siblings, 1 reply; 6+ messages in thread
From: LeoLiuoc @ 2023-04-12  9:49 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel, CobeChen, TonyWWang, ErosZhang



在 2023/4/8 7:22, Bjorn Helgaas 写道:
> Since this patch has nothing to do with ACPI, update subject line to:
> 
>    PCI: Add PCIe to PCI/PCI-X Bridge AER fields
> 

Your description is more reasonable and I will update the header of this 
patch later.

Yours sincerely,
Leoliu-oc

> On Tue, Nov 15, 2022 at 11:12:44AM +0800, LeoLiu-oc wrote:
>> From: leoliu-oc <leoliu-oc@zhaoxin.com>
>>
>> Define secondary uncorrectable error mask register, secondary
>> uncorrectable error severity register and secondary error capabilities and
>> control register bits in AER capability for PCIe to PCI/PCI-X Bridge.
>> Please refer to PCIe to PCI/PCI-X Bridge Specification, sec 5.2.3.2,
>> 5.2.3.3 and 5.2.3.4.
> 
> Capitalize register names to match the spec usage.
> 
Your suggestion is right, I'll update this in the next release.

Yours sincerely,
Leoliu-oc
>> Signed-off-by: leoliu-oc <leoliu-oc@zhaoxin.com>
> 
> Assuming this goes along with a patch series that adds uses of these
> definitions:
> 
> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
> 
>> ---
>>   include/uapi/linux/pci_regs.h | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h
>> index 57b8e2ffb1dd..37f3baa336d7 100644
>> --- a/include/uapi/linux/pci_regs.h
>> +++ b/include/uapi/linux/pci_regs.h
>> @@ -799,6 +799,11 @@
>>   #define  PCI_ERR_ROOT_AER_IRQ		0xf8000000 /* Advanced Error Interrupt Message Number */
>>   #define PCI_ERR_ROOT_ERR_SRC	0x34	/* Error Source Identification */
>>   
>> +/* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X Bridge */
>> +#define PCI_ERR_UNCOR_MASK2		0x30	/* Secondary Uncorrectable Error Mask */
>> +#define PCI_ERR_UNCOR_SEVER2	0x34	/* Secondary Uncorrectable Error Severit */
>> +#define PCI_ERR_CAP2			0x38	/* Secondary Advanced Error Capabilities */
> 
> Please squash these right up next to the other PCI_ERR_* definitions
> so it's obvious that they overlap PCI_ERR_ROOT_STATUS and
> PCI_ERR_ROOT_ERR_SRC (which is fine since one device can't have both),
> e.g.,
> 
>    #define PCI_ERR_ROOT_STATUS     0x30
>    #define  PCI_ERR_ROOT_COR_RCV           0x00000001 /* ERR_COR Received */
>    ...
>    #define PCI_ERR_ROOT_ERR_SRC    0x34    /* Error Source Identification */
>    #define PCI_ERR_UNCOR_MASK2     0x30    /* PCIe to PCI/PCI-X bridge */
>    #define PCI_ERR_UNCOR_SEVER2    0x34    /* PCIe to PCI/PCI-X bridge */
>    #define PCI_ERR_CAP2            0x38    /* PCIe to PCI/PCI-X bridge */
> 

I don't seem to understand what you mean. PCI_ERR_UNCOR_MASK2, 
PCI_ERR_UNCOR_SEVER2, and PCI_ERR_CAP2 represent the control and 
handling of individual errors that occur on traditional PCI or PCI-x 
secondary bus interfaces, these registers are valid only for Bridge. 
Although PCI_ERR_ROOT_ERR_SRC and PCI_ERR_UNCOR_SEVER2 have the same 
value, they represent register definitions for different device types.

Yours sincerely,
Leoliu-oc

>>   /* Virtual Channel */
>>   #define PCI_VC_PORT_CAP1	0x04
>>   #define  PCI_VC_CAP1_EVCC	0x00000007	/* extended VC count */
>> -- 
>> 2.20.1
>>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
  2023-04-12  9:49   ` LeoLiuoc
@ 2023-04-12 16:10     ` Bjorn Helgaas
  2023-04-18  2:38       ` LeoLiuoc
  0 siblings, 1 reply; 6+ messages in thread
From: Bjorn Helgaas @ 2023-04-12 16:10 UTC (permalink / raw)
  To: LeoLiuoc
  Cc: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel, CobeChen, TonyWWang, ErosZhang

On Wed, Apr 12, 2023 at 05:49:55PM +0800, LeoLiuoc wrote:

> > > diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h
> > > index 57b8e2ffb1dd..37f3baa336d7 100644
> > > --- a/include/uapi/linux/pci_regs.h
> > > +++ b/include/uapi/linux/pci_regs.h
> > > @@ -799,6 +799,11 @@
> > >   #define  PCI_ERR_ROOT_AER_IRQ		0xf8000000 /* Advanced Error Interrupt Message Number */
> > >   #define PCI_ERR_ROOT_ERR_SRC	0x34	/* Error Source Identification */
> > > +/* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X Bridge */
> > > +#define PCI_ERR_UNCOR_MASK2		0x30	/* Secondary Uncorrectable Error Mask */
> > > +#define PCI_ERR_UNCOR_SEVER2	0x34	/* Secondary Uncorrectable Error Severit */
> > > +#define PCI_ERR_CAP2			0x38	/* Secondary Advanced Error Capabilities */
> > 
> > Please squash these right up next to the other PCI_ERR_* definitions
> > so it's obvious that they overlap PCI_ERR_ROOT_STATUS and
> > PCI_ERR_ROOT_ERR_SRC (which is fine since one device can't have both),
> > e.g.,
> > 
> >    #define PCI_ERR_ROOT_STATUS     0x30
> >    #define  PCI_ERR_ROOT_COR_RCV           0x00000001 /* ERR_COR Received */
> >    ...
> >    #define PCI_ERR_ROOT_ERR_SRC    0x34    /* Error Source Identification */
> >    #define PCI_ERR_UNCOR_MASK2     0x30    /* PCIe to PCI/PCI-X bridge */
> >    #define PCI_ERR_UNCOR_SEVER2    0x34    /* PCIe to PCI/PCI-X bridge */
> >    #define PCI_ERR_CAP2            0x38    /* PCIe to PCI/PCI-X bridge */
> 
> I don't seem to understand what you mean. PCI_ERR_UNCOR_MASK2,
> PCI_ERR_UNCOR_SEVER2, and PCI_ERR_CAP2 represent the control and handling of
> individual errors that occur on traditional PCI or PCI-x secondary bus
> interfaces, these registers are valid only for Bridge. Although
> PCI_ERR_ROOT_ERR_SRC and PCI_ERR_UNCOR_SEVER2 have the same value, they
> represent register definitions for different device types.

Right.  I just don't want the blank line in the middle because it
might be mistaken for items in a different capability.  All the other
AER capability registers are defined together in a block, with no
blank lines in the middle, so I think these new ones should be part of
that block.

Bjorn

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
  2023-04-12 16:10     ` Bjorn Helgaas
@ 2023-04-18  2:38       ` LeoLiuoc
  2023-04-27 22:47         ` Bjorn Helgaas
  0 siblings, 1 reply; 6+ messages in thread
From: LeoLiuoc @ 2023-04-18  2:38 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel, CobeChen, TonyWWang, ErosZhang, leoliu



在 2023/4/13 0:10, Bjorn Helgaas 写道:
> On Wed, Apr 12, 2023 at 05:49:55PM +0800, LeoLiuoc wrote:
> 
>>>> diff --git a/include/uapi/linux/pci_regs.h b/include/uapi/linux/pci_regs.h
>>>> index 57b8e2ffb1dd..37f3baa336d7 100644
>>>> --- a/include/uapi/linux/pci_regs.h
>>>> +++ b/include/uapi/linux/pci_regs.h
>>>> @@ -799,6 +799,11 @@
>>>>    #define  PCI_ERR_ROOT_AER_IRQ		0xf8000000 /* Advanced Error Interrupt Message Number */
>>>>    #define PCI_ERR_ROOT_ERR_SRC	0x34	/* Error Source Identification */
>>>> +/* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X Bridge */
>>>> +#define PCI_ERR_UNCOR_MASK2		0x30	/* Secondary Uncorrectable Error Mask */
>>>> +#define PCI_ERR_UNCOR_SEVER2	0x34	/* Secondary Uncorrectable Error Severit */
>>>> +#define PCI_ERR_CAP2			0x38	/* Secondary Advanced Error Capabilities */
>>>
>>> Please squash these right up next to the other PCI_ERR_* definitions
>>> so it's obvious that they overlap PCI_ERR_ROOT_STATUS and
>>> PCI_ERR_ROOT_ERR_SRC (which is fine since one device can't have both),
>>> e.g.,
>>>
>>>     #define PCI_ERR_ROOT_STATUS     0x30
>>>     #define  PCI_ERR_ROOT_COR_RCV           0x00000001 /* ERR_COR Received */
>>>     ...
>>>     #define PCI_ERR_ROOT_ERR_SRC    0x34    /* Error Source Identification */
>>>     #define PCI_ERR_UNCOR_MASK2     0x30    /* PCIe to PCI/PCI-X bridge */
>>>     #define PCI_ERR_UNCOR_SEVER2    0x34    /* PCIe to PCI/PCI-X bridge */
>>>     #define PCI_ERR_CAP2            0x38    /* PCIe to PCI/PCI-X bridge */
>>
>> I don't seem to understand what you mean. PCI_ERR_UNCOR_MASK2,
>> PCI_ERR_UNCOR_SEVER2, and PCI_ERR_CAP2 represent the control and handling of
>> individual errors that occur on traditional PCI or PCI-x secondary bus
>> interfaces, these registers are valid only for Bridge. Although
>> PCI_ERR_ROOT_ERR_SRC and PCI_ERR_UNCOR_SEVER2 have the same value, they
>> represent register definitions for different device types.
> 
> Right.  I just don't want the blank line in the middle because it
> might be mistaken for items in a different capability.  All the other
> AER capability registers are defined together in a block, with no
> blank lines in the middle, so I think these new ones should be part of
> that block.
> 
> Bjorn

Ok,I see your point. Do you think this line of comment is still necessary?
/* PCIe advanced error reporting extended capabilities for PCIe to 
PCI/PCI-X Bridge */

Yours sincerely,
Leoliu-oc



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge
  2023-04-18  2:38       ` LeoLiuoc
@ 2023-04-27 22:47         ` Bjorn Helgaas
  0 siblings, 0 replies; 6+ messages in thread
From: Bjorn Helgaas @ 2023-04-27 22:47 UTC (permalink / raw)
  To: LeoLiuoc
  Cc: rafael, lenb, james.morse, tony.luck, bp, robert.moore,
	ying.huang, rdunlap, bhelgaas, linux-acpi, linux-pci,
	linux-kernel, devel, CobeChen, TonyWWang, ErosZhang, leoliu

On Tue, Apr 18, 2023 at 10:38:58AM +0800, LeoLiuoc wrote:
> 在 2023/4/13 0:10, Bjorn Helgaas 写道:
> > On Wed, Apr 12, 2023 at 05:49:55PM +0800, LeoLiuoc wrote:

> > > >     ...
> > > >     #define PCI_ERR_ROOT_ERR_SRC    0x34    /* Error Source Identification */
> > > >     #define PCI_ERR_UNCOR_MASK2     0x30    /* PCIe to PCI/PCI-X bridge */
> > > >     #define PCI_ERR_UNCOR_SEVER2    0x34    /* PCIe to PCI/PCI-X bridge */
> > > >     #define PCI_ERR_CAP2            0x38    /* PCIe to PCI/PCI-X bridge */
> > > 
> > > I don't seem to understand what you mean. PCI_ERR_UNCOR_MASK2,
> > > PCI_ERR_UNCOR_SEVER2, and PCI_ERR_CAP2 represent the control and handling of
> > > individual errors that occur on traditional PCI or PCI-x secondary bus
> > > interfaces, these registers are valid only for Bridge. Although
> > > PCI_ERR_ROOT_ERR_SRC and PCI_ERR_UNCOR_SEVER2 have the same value, they
> > > represent register definitions for different device types.
> > 
> > Right.  I just don't want the blank line in the middle because it
> > might be mistaken for items in a different capability.  All the other
> > AER capability registers are defined together in a block, with no
> > blank lines in the middle, so I think these new ones should be part of
> > that block.
> 
> Ok,I see your point. Do you think this line of comment is still necessary?
> /* PCIe advanced error reporting extended capabilities for PCIe to PCI/PCI-X
> Bridge */

I suggested a trailing comment ("PCIe to PCI/PCI-X bridge").  If we
use that, I don't think the other is necessary.

Bjorn

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-04-27 22:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-15  3:12 [PATCH v2 3/5] ACPI/PCI: Add AER bits #defines for PCIe to PCI/PCI-X Bridge LeoLiu-oc
2023-04-07 23:22 ` Bjorn Helgaas
2023-04-12  9:49   ` LeoLiuoc
2023-04-12 16:10     ` Bjorn Helgaas
2023-04-18  2:38       ` LeoLiuoc
2023-04-27 22:47         ` Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox