qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 9/9] msi: Move PCI_MSI_PENDING_32/64 into pci


From: Jan Kiszka
Subject: Re: [Qemu-devel] [PATCH v2 9/9] msi: Move PCI_MSI_PENDING_32/64 into pci_regs.h
Date: Wed, 08 Jun 2011 23:18:05 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

On 2011-06-08 23:14, Michael S. Tsirkin wrote:
> On Wed, Jun 08, 2011 at 11:03:43PM +0200, Jan Kiszka wrote:
>> On 2011-06-08 23:01, Michael S. Tsirkin wrote:
>>> On Wed, Jun 08, 2011 at 10:57:13PM +0200, Jan Kiszka wrote:
>>>> On 2011-06-08 22:56, Michael S. Tsirkin wrote:
>>>>> On Wed, Jun 08, 2011 at 10:44:58PM +0200, Jan Kiszka wrote:
>>>>>> On 2011-06-08 21:48, Michael S. Tsirkin wrote:
>>>>>>> On Wed, Jun 08, 2011 at 06:21:52PM +0200, Jan Kiszka wrote:
>>>>>>>> Signed-off-by: Jan Kiszka <address@hidden>
>>>>>>>
>>>>>>> pci_regs.h from linux does not have these
>>>>>>> this is why we keep them in msi.c
>>>>>>>
>>>>>>> address@hidden linux-2.6]$ grep PCI_MSI_ include/linux/pci_regs.h 
>>>>>>> #define PCI_MSI_FLAGS           2       /* Various flags */
>>>>>>> #define  PCI_MSI_FLAGS_64BIT    0x80    /* 64-bit addresses allowed */
>>>>>>> #define  PCI_MSI_FLAGS_QSIZE    0x70    /* Message queue size configured
>>>>>>> */
>>>>>>> #define  PCI_MSI_FLAGS_QMASK    0x0e    /* Maximum queue size available
>>>>>>> */
>>>>>>> #define  PCI_MSI_FLAGS_ENABLE   0x01    /* MSI feature enabled */
>>>>>>> #define  PCI_MSI_FLAGS_MASKBIT  0x100   /* 64-bit mask bits allowed */
>>>>>>> #define PCI_MSI_RFU             3       /* Rest of capability flags */
>>>>>>> #define PCI_MSI_ADDRESS_LO      4       /* Lower 32 bits */
>>>>>>> #define PCI_MSI_ADDRESS_HI      8       /* Upper 32 bits (if
>>>>>>> PCI_MSI_FLAGS_64BIT set) */
>>>>>>> #define PCI_MSI_DATA_32         8       /* 16 bits of data for 32-bit
>>>>>>> devices */
>>>>>>> #define PCI_MSI_MASK_32         12      /* Mask bits register for 32-bit
>>>>>>> devices */
>>>>>>> #define PCI_MSI_DATA_64         12      /* 16 bits of data for 64-bit
>>>>>>> devices */
>>>>>>> #define PCI_MSI_MASK_64         16      /* Mask bits register for 64-bit
>>>>>>> devices */
>>>>>>>
>>>>>>>
>>>>>>> If you want to move them, please send them upstream we'll merge when
>>>>>>> they are there.
>>>>>>
>>>>>> In fact, both defines are already in libpci. Since 3.0.0. Released 5
>>>>>> years ago. OK, I'll send a header resync patch against a more recent
>>>>>> release.
>>>>>>
>>>>>> Then we should just lack something like PCI_MSIX_CTRL. I will have a 
>>>>>> look.
>>>>>
>>>>> PCI_MSIX_FLAGS is the same.
>>>>
>>>> That does not exist in libpci's header.
>>>>
>>>> Jan
>>>>
>>>
>>> The upstream I meant is pci_Regs.h in Linux.
>>>
>>
>> Why not sync against
>> git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git? Sounds more
>> appropriate.
>>
>> Jan
>>
> 
> We are 100% aligned with Linux changing that seems pointless.
> I think Linux gets new hardware features faster and has a better
> chance to be correct.
> We already pull headers from Linux so that's one dependency less.
> 

The kernel appears to gain defines based on what it uses. The libpci
headers seem to serve more use cases, at least it had the missing fields
for several years and is a few hundred lines longer.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]