Re: [PATCH 2.6.37] irq: irq and pci_ids patch for Intel DH89xxCC DeviceIDs

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

 



On Mon, 10 Jan 2011 11:19:15 -0800, Heasley, Seth wrote:
> >> --- linux-2.6.37/arch/x86/pci/irq.c.orig	2011-01-04
> >16:50:19.000000000 -0800
> >> +++ linux-2.6.37/arch/x86/pci/irq.c	2011-01-06 14:16:00.000000000
> >-0800
> >> @@ -611,6 +611,15 @@
> >>  		r->set = pirq_piix_set;
> >>  		return 1;
> >>  	}
> >> +
> >> +	if ((device >= PCI_DEVICE_ID_INTEL_DH89XXCC_LPC_MIN) &&
> >> +		(device <= PCI_DEVICE_ID_INTEL_DH89XXCC_LPC_MAX)) {
> >> +		r->name = "PIIX/ICH";
> >> +		r->get = pirq_piix_get;
> >> +		r->set = pirq_piix_set;
> >> +		return 1;
> >> +	}
> >> +
> >
> >I'm curious why we have separate sections for INTEL_5_3400_SERIES,
> >INTEL_COUGARPOINT and now INTEL_DH89XXCC? We do the same thing for all
> >3, so it would make sense to merge the tests to avoid duplicating the
> >code.
> 
> Some products are defining a range of DeviceIDs rather than one or two specific IDs, so these blocks are for catching any DeviceID in the range.  I'm certainly open to suggestion for a better way to handle these, and I agree that the current way is awkward.

I understand the need to have separate blocks for separate IDs and for
ID ranges. But all the ranges could be covered by the same block:

	if ((device >= PCI_DEVICE_ID_INTEL_5_3400_SERIES_LPC_MIN && 
	     device <= PCI_DEVICE_ID_INTEL_5_3400_SERIES_LPC_MAX)
	 || (device >= PCI_DEVICE_ID_INTEL_COUGARPOINT_LPC_MIN && 
	     device <= PCI_DEVICE_ID_INTEL_COUGARPOINT_LPC_MAX)) {
		r->name = "PIIX/ICH";
		r->get = pirq_piix_get;
		r->set = pirq_piix_set;
		return 1;
	}

-- 
Jean Delvare
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux