[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1407144668.21386.8.camel@umadbro>
Date: Mon, 04 Aug 2014 11:31:08 +0200
From: Rostislav Lisovy <lisovy@...il.com>
To: Sasha Levin <sashal@...nel.org>
Cc: Russell King <linux@....linux.org.uk>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Yijing Wang <wangyijing@...wei.com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
Nicholas Krause <xerofoify@...il.com>
Subject: Re: [PATCH] ARM: PCI: Use PCI_CLASS_* defines for PCI class
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.
Best regards;
Rostislav
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists