[PATCH] ARM: PCI: Use PCI_CLASS_* defines for PCI class
Rostislav Lisovy
lisovy at gmail.com
Mon Aug 25 01:39:36 PDT 2014
On Mon, 2014-08-04 at 11:31 +0200, Rostislav Lisovy wrote:
> On Sun, 2014-08-03 at 09:16 -0400, Sasha Levin wrote:
> > > - /* FIXME: add defines for class 0x68000 and 0x80103 */
> > > if ((dev->class >> 8) == PCI_CLASS_BRIDGE_HOST ||
> > > - dev->class == 0x68000 ||
> > > - dev->class == 0x80103) {
> > > + dev->class == (PCI_CLASS_BRIDGE_OTHER << 8) ||
> > > + dev->class == ((PCI_CLASS_SYSTEM_DMA << 8) | 0x03)) {
> > > for (i = 0; i < PCI_NUM_RESOURCES; i++) {
> > > dev->resource[i].start = 0;
> > > dev->resource[i].end = 0;
> > >
> >
> > Care to explain how your new code is equivalent to the old one?
>
> The header file include/linux/pci_ids.h defines
> #define PCI_CLASS_BRIDGE_OTHER 0x0680
> #define PCI_CLASS_SYSTEM_DMA 0x0801
>
> ((struct pci_dev*)dev)->class
> corresponds to the 3 bytes Class code in the PCI Configuration space
> header -- 1B Base class, 1B Sub-class, 1B Reg-level interface.
>
> In that case
> (PCI_CLASS_BRIDGE_OTHER << 8)
> is equivalent to 0x68000 (imagine the leading zero)
> and
> ((PCI_CLASS_SYSTEM_DMA << 8) | 0x03))
> is equivalent to 0x80103.
>
Just a kind reminder in case anyone is interested in reviewing and
accepting the patch.
Best regards;
Rostislav Lisovy
More information about the linux-arm-kernel
mailing list