Re: [PATCH 1/10] ide: use pci_dev-revision
Bartlomiej Zolnierkiewicz wrote: Some places were using PCI_CLASS_REVISION instead of PCI_REVISION_ID so they were not converted by commit 44c10138fd4bbc4b6d6bff0873c24902f2a9da65. --- Quick grep over kernel tree finds out many other places using either pci_read_config_dword(dev, PCI_CLASS_REVISION, ...) 0xff or simply pci_read_config_byte(dev, PCI_CLASS_REVISION, ...) and they all can be converted to using dev-revision. Nice! I was wondering all the time why the revision ID isn't held with he device/vendor IDs (wile being a vital detail for many IDE chips ;-). Auke, a PCI_CLASS_REVISION follow-up to your previous patch would be great. :) Acked-by: Sergei Shtylyov [EMAIL PROTECTED] MBR, Sergei - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/10] ide: use pci_dev-revision
Some places were using PCI_CLASS_REVISION instead of PCI_REVISION_ID so they were not converted by commit 44c10138fd4bbc4b6d6bff0873c24902f2a9da65. Cc: Auke Kok [EMAIL PROTECTED] Cc: Greg Kroah-Hartman [EMAIL PROTECTED] Signed-off-by: Bartlomiej Zolnierkiewicz [EMAIL PROTECTED] --- Quick grep over kernel tree finds out many other places using either pci_read_config_dword(dev, PCI_CLASS_REVISION, ...) 0xff or simply pci_read_config_byte(dev, PCI_CLASS_REVISION, ...) and they all can be converted to using dev-revision. Auke, a PCI_CLASS_REVISION follow-up to your previous patch would be great. :) drivers/ide/pci/pdc202xx_new.c |6 +- drivers/ide/pci/sgiioc4.c |8 +++- drivers/ide/pci/siimage.c | 19 +-- drivers/ide/setup-pci.c|6 ++ 4 files changed, 11 insertions(+), 28 deletions(-) Index: b/drivers/ide/pci/pdc202xx_new.c === --- a/drivers/ide/pci/pdc202xx_new.c +++ b/drivers/ide/pci/pdc202xx_new.c @@ -332,16 +332,12 @@ static long __devinit detect_pll_input_c static void __devinit apple_kiwi_init(struct pci_dev *pdev) { struct device_node *np = pci_device_to_OF_node(pdev); - unsigned int class_rev = 0; u8 conf; if (np == NULL || !of_device_is_compatible(np, kiwi-root)) return; - pci_read_config_dword(pdev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; - - if (class_rev = 0x03) { + if (pdev-revision = 0x03) { /* Setup chip magic config stuff (from darwin) */ pci_read_config_byte (pdev, 0x40, conf); pci_write_config_byte(pdev, 0x40, (conf | 0x01)); Index: b/drivers/ide/pci/sgiioc4.c === --- a/drivers/ide/pci/sgiioc4.c +++ b/drivers/ide/pci/sgiioc4.c @@ -690,14 +690,12 @@ sgiioc4_ide_setup_pci_device(struct pci_ static unsigned int __devinit pci_init_sgiioc4(struct pci_dev *dev) { - unsigned int class_rev; int ret; - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; printk(KERN_INFO %s: IDE controller at PCI slot %s, revision %d\n, -DRV_NAME, pci_name(dev), class_rev); - if (class_rev IOC4_SUPPORTED_FIRMWARE_REV) { +DRV_NAME, pci_name(dev), dev-revision); + + if (dev-revision IOC4_SUPPORTED_FIRMWARE_REV) { printk(KERN_ERR Skipping %s IDE controller in slot %s: firmware is obsolete - please upgrade to revision46 or higher\n, Index: b/drivers/ide/pci/siimage.c === --- a/drivers/ide/pci/siimage.c +++ b/drivers/ide/pci/siimage.c @@ -640,13 +640,9 @@ static unsigned int setup_mmio_siimage ( static unsigned int __devinit init_chipset_siimage(struct pci_dev *dev, const char *name) { - u32 class_rev = 0; - u8 tmpbyte = 0; - u8 BA5_EN = 0; - -pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); -class_rev = 0xff; - pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, (class_rev) ? 1 : 255); + u8 rev = dev-revision, tmpbyte = 0, BA5_EN = 0; + + pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, rev ? 1 : 255); pci_read_config_byte(dev, 0x8A, BA5_EN); if ((BA5_EN 0x01) || (pci_resource_start(dev, 5))) { @@ -825,19 +821,14 @@ static void __devinit siimage_fixup(ide_ static void __devinit init_iops_siimage(ide_hwif_t *hwif) { - struct pci_dev *dev = hwif-pci_dev; - u32 class_rev = 0; - - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; - hwif-hwif_data = NULL; /* Pessimal until we finish probing */ hwif-rqsize = 15; - if (pci_get_drvdata(dev) == NULL) + if (pci_get_drvdata(hwif-pci_dev) == NULL) return; + init_mmio_iops_siimage(hwif); } Index: b/drivers/ide/setup-pci.c === --- a/drivers/ide/setup-pci.c +++ b/drivers/ide/setup-pci.c @@ -478,7 +478,6 @@ static void ide_hwif_setup_dma(struct pc static int ide_setup_pci_controller(struct pci_dev *dev, ide_pci_device_t *d, int noisy, int *config) { int ret; - u32 class_rev; u16 pcicmd; if (noisy) @@ -501,10 +500,9 @@ static int ide_setup_pci_controller(stru printk(KERN_INFO %s: device enabled (Linux)\n, d-name); } - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; if (noisy) - printk(KERN_INFO %s: chipset revision %d\n, d-name, class_rev); + printk(KERN_INFO %s: chipset revision %d\n, +d-name, dev-revision); out:
Re: [PATCH 1/10] ide: use pci_dev-revision
Bartlomiej Zolnierkiewicz wrote: Some places were using PCI_CLASS_REVISION instead of PCI_REVISION_ID so they were not converted by commit 44c10138fd4bbc4b6d6bff0873c24902f2a9da65. that's actually another effort that I'm working on atm. You can either hold off on your patch or we'll see how my patches bounce against yours ;) Cheers, Auke Cc: Auke Kok [EMAIL PROTECTED] Cc: Greg Kroah-Hartman [EMAIL PROTECTED] Signed-off-by: Bartlomiej Zolnierkiewicz [EMAIL PROTECTED] --- Quick grep over kernel tree finds out many other places using either pci_read_config_dword(dev, PCI_CLASS_REVISION, ...) 0xff or simply pci_read_config_byte(dev, PCI_CLASS_REVISION, ...) and they all can be converted to using dev-revision. Auke, a PCI_CLASS_REVISION follow-up to your previous patch would be great. :) drivers/ide/pci/pdc202xx_new.c |6 +- drivers/ide/pci/sgiioc4.c |8 +++- drivers/ide/pci/siimage.c | 19 +-- drivers/ide/setup-pci.c|6 ++ 4 files changed, 11 insertions(+), 28 deletions(-) Index: b/drivers/ide/pci/pdc202xx_new.c === --- a/drivers/ide/pci/pdc202xx_new.c +++ b/drivers/ide/pci/pdc202xx_new.c @@ -332,16 +332,12 @@ static long __devinit detect_pll_input_c static void __devinit apple_kiwi_init(struct pci_dev *pdev) { struct device_node *np = pci_device_to_OF_node(pdev); - unsigned int class_rev = 0; u8 conf; if (np == NULL || !of_device_is_compatible(np, kiwi-root)) return; - pci_read_config_dword(pdev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; - - if (class_rev = 0x03) { + if (pdev-revision = 0x03) { /* Setup chip magic config stuff (from darwin) */ pci_read_config_byte (pdev, 0x40, conf); pci_write_config_byte(pdev, 0x40, (conf | 0x01)); Index: b/drivers/ide/pci/sgiioc4.c === --- a/drivers/ide/pci/sgiioc4.c +++ b/drivers/ide/pci/sgiioc4.c @@ -690,14 +690,12 @@ sgiioc4_ide_setup_pci_device(struct pci_ static unsigned int __devinit pci_init_sgiioc4(struct pci_dev *dev) { - unsigned int class_rev; int ret; - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; printk(KERN_INFO %s: IDE controller at PCI slot %s, revision %d\n, -DRV_NAME, pci_name(dev), class_rev); - if (class_rev IOC4_SUPPORTED_FIRMWARE_REV) { +DRV_NAME, pci_name(dev), dev-revision); + + if (dev-revision IOC4_SUPPORTED_FIRMWARE_REV) { printk(KERN_ERR Skipping %s IDE controller in slot %s: firmware is obsolete - please upgrade to revision46 or higher\n, Index: b/drivers/ide/pci/siimage.c === --- a/drivers/ide/pci/siimage.c +++ b/drivers/ide/pci/siimage.c @@ -640,13 +640,9 @@ static unsigned int setup_mmio_siimage ( static unsigned int __devinit init_chipset_siimage(struct pci_dev *dev, const char *name) { - u32 class_rev = 0; - u8 tmpbyte = 0; - u8 BA5_EN = 0; - -pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); -class_rev = 0xff; - pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, (class_rev) ? 1 : 255); + u8 rev = dev-revision, tmpbyte = 0, BA5_EN = 0; + + pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, rev ? 1 : 255); pci_read_config_byte(dev, 0x8A, BA5_EN); if ((BA5_EN 0x01) || (pci_resource_start(dev, 5))) { @@ -825,19 +821,14 @@ static void __devinit siimage_fixup(ide_ static void __devinit init_iops_siimage(ide_hwif_t *hwif) { - struct pci_dev *dev = hwif-pci_dev; - u32 class_rev = 0; - - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; - hwif-hwif_data = NULL; /* Pessimal until we finish probing */ hwif-rqsize = 15; - if (pci_get_drvdata(dev) == NULL) + if (pci_get_drvdata(hwif-pci_dev) == NULL) return; + init_mmio_iops_siimage(hwif); } Index: b/drivers/ide/setup-pci.c === --- a/drivers/ide/setup-pci.c +++ b/drivers/ide/setup-pci.c @@ -478,7 +478,6 @@ static void ide_hwif_setup_dma(struct pc static int ide_setup_pci_controller(struct pci_dev *dev, ide_pci_device_t *d, int noisy, int *config) { int ret; - u32 class_rev; u16 pcicmd; if (noisy) @@ -501,10 +500,9 @@ static int ide_setup_pci_controller(stru printk(KERN_INFO %s: device enabled (Linux)\n, d-name); } - pci_read_config_dword(dev, PCI_CLASS_REVISION, class_rev); - class_rev = 0xff; if (noisy) - printk(KERN_INFO %s: chipset
Re: [PATCH 1/10] ide: use pci_dev-revision
On Wednesday 29 August 2007, Kok, Auke wrote: Bartlomiej Zolnierkiewicz wrote: Some places were using PCI_CLASS_REVISION instead of PCI_REVISION_ID so they were not converted by commit 44c10138fd4bbc4b6d6bff0873c24902f2a9da65. that's actually another effort that I'm working on atm. You can either hold off Great. on your patch or we'll see how my patches bounce against yours ;) I don't envision problems here - my patch is limited to drivers/ide/ and will just get dumped if the more complete patch shows up. :) Thanks, Bart - To unsubscribe from this list: send the line unsubscribe linux-ide in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html