Message ID | 1359566374-27286-1-git-send-email-youquan.song@intel.com |
---|---|
State | Not Applicable |
Delegated to: | David Miller |
Headers | show |
於 三,2013-01-30 於 12:19 -0500,Youquan Song 提到: > There is a quirk patch 5e5a4f5d5a08c9c504fe956391ac3dae2c66556d fix the 4 ports > IDE controller 32bit PIO mode. > Recently, the problem was showed at Haswell platform which includes 2 ports > IDE controller. > > So introduce a qurik patch to disable 32bit PIO at this IDE controller. > > Signed-off-by: Youquan Song <youquan.song@intel.com> Patch works to me for avoid DVD detection on Intel Shark Bay development machine. Tested-by: Lee, Chun-Yi <jlee@suse.com> Thanks a lot! Joey Lee > --- > drivers/ata/ata_piix.c | 14 +++++++++++++- > 1 files changed, 13 insertions(+), 1 deletions(-) > > diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c > index ef773e1..1993e52 100644 > --- a/drivers/ata/ata_piix.c > +++ b/drivers/ata/ata_piix.c > @@ -150,6 +150,7 @@ enum piix_controller_ids { > tolapai_sata, > piix_pata_vmw, /* PIIX4 for VMware, spurious DMA_ERR */ > ich8_sata_snb, > + ich8_2port_sata_snb, > }; > > struct piix_map_db { > @@ -326,7 +327,7 @@ static const struct pci_device_id piix_pci_tbl[] = { > /* SATA Controller IDE (Lynx Point) */ > { 0x8086, 0x8c01, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, > /* SATA Controller IDE (Lynx Point) */ > - { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, > + { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_snb }, > /* SATA Controller IDE (Lynx Point) */ > { 0x8086, 0x8c09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, > /* SATA Controller IDE (Lynx Point-LP) */ > @@ -502,6 +503,7 @@ static const struct piix_map_db *piix_map_db_table[] = { > [ich8m_apple_sata] = &ich8m_apple_map_db, > [tolapai_sata] = &tolapai_map_db, > [ich8_sata_snb] = &ich8_map_db, > + [ich8_2port_sata_snb] = &ich8_2port_map_db, > }; > > static struct ata_port_info piix_port_info[] = { > @@ -643,6 +645,16 @@ static struct ata_port_info piix_port_info[] = { > .port_ops = &piix_sata_ops, > }, > > + [ich8_2port_sata_snb] = > + { > + .flags = PIIX_SATA_FLAGS | PIIX_FLAG_SIDPR | PIIX_FLAG_PIO16, > + .pio_mask = ATA_PIO4, > + .mwdma_mask = ATA_MWDMA2, > + .udma_mask = ATA_UDMA6, > + .port_ops = &piix_sata_ops, > + }, > + > + > }; > > static struct pci_bits piix_enable_bits[] = { -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello. On 30-01-2013 21:19, Youquan Song wrote: > There is a quirk patch 5e5a4f5d5a08c9c504fe956391ac3dae2c66556d Please also specify the summary of that patch in parens. > fix the 4 ports s/fix/fixing/ > IDE controller 32bit PIO mode. > Recently, the problem was showed s/showed/shown/ > at Haswell platform which includes 2 ports IDE controller. > So introduce a qurik Quirk. > patch to disable 32bit PIO at this IDE controller. s/at/on/ > Signed-off-by: Youquan Song <youquan.song@intel.com> MBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello. On 30-01-2013 21:19, Youquan Song wrote: > There is a quirk patch 5e5a4f5d5a08c9c504fe956391ac3dae2c66556d fix the 4 ports > IDE controller 32bit PIO mode. > Recently, the problem was showed at Haswell platform which includes 2 ports > IDE controller. > So introduce a qurik patch to disable 32bit PIO at this IDE controller. > Signed-off-by: Youquan Song <youquan.song@intel.com> > --- > drivers/ata/ata_piix.c | 14 +++++++++++++- > 1 files changed, 13 insertions(+), 1 deletions(-) > diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c > index ef773e1..1993e52 100644 > --- a/drivers/ata/ata_piix.c > +++ b/drivers/ata/ata_piix.c [...] > @@ -326,7 +327,7 @@ static const struct pci_device_id piix_pci_tbl[] = { > /* SATA Controller IDE (Lynx Point) */ > { 0x8086, 0x8c01, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, > /* SATA Controller IDE (Lynx Point) */ > - { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, > + { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_snb }, > /* SATA Controller IDE (Lynx Point) */ > { 0x8086, 0x8c09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, Also, are you sure this one and the following Lynx Point controllers are not affected? > /* SATA Controller IDE (Lynx Point-LP) */ MBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
> On 30-01-2013 21:19, Youquan Song wrote: > >> There is a quirk patch 5e5a4f5d5a08c9c504fe956391ac3dae2c66556d > > Please also specify the summary of that patch in parens. > >> fix the 4 ports > > s/fix/fixing/ > >> IDE controller 32bit PIO mode. >> Recently, the problem was showed > > s/showed/shown/ > >> at Haswell platform which includes 2 ports IDE controller. > >> So introduce a qurik > > Quirk. > >> patch to disable 32bit PIO at this IDE controller. > > s/at/on/ > >> Signed-off-by: Youquan Song <youquan.song@intel.com> > > MBR, Sergei Thanks a lot! I have sent out a fixing patch for it. -Youquan -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
>> + { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_snb }, >> /* SATA Controller IDE (Lynx Point) */ >> { 0x8086, 0x8c09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, > > Also, are you sure this one and the following Lynx Point controllers are > not affected? I am not sure. the 0x8c09 is possibly used on mobile PC not desktop. On one of my machine, it includes the chipset but the 2 ports IDE controller is not extend out for use. There are only 2 ports extended out from 4 ports IDE controller. So I can not verify it. I think, the notebook/mobile PC does not require to extends out all of the IDE ports. This patch only fixs the 0x8c08 2 ports IDE controller for it block the installation. If there is an issue reporting from 0x8c09, we can fix it late. Thanks -Youuquan -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c index ef773e1..1993e52 100644 --- a/drivers/ata/ata_piix.c +++ b/drivers/ata/ata_piix.c @@ -150,6 +150,7 @@ enum piix_controller_ids { tolapai_sata, piix_pata_vmw, /* PIIX4 for VMware, spurious DMA_ERR */ ich8_sata_snb, + ich8_2port_sata_snb, }; struct piix_map_db { @@ -326,7 +327,7 @@ static const struct pci_device_id piix_pci_tbl[] = { /* SATA Controller IDE (Lynx Point) */ { 0x8086, 0x8c01, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* SATA Controller IDE (Lynx Point) */ - { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, + { 0x8086, 0x8c08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata_snb }, /* SATA Controller IDE (Lynx Point) */ { 0x8086, 0x8c09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (Lynx Point-LP) */ @@ -502,6 +503,7 @@ static const struct piix_map_db *piix_map_db_table[] = { [ich8m_apple_sata] = &ich8m_apple_map_db, [tolapai_sata] = &tolapai_map_db, [ich8_sata_snb] = &ich8_map_db, + [ich8_2port_sata_snb] = &ich8_2port_map_db, }; static struct ata_port_info piix_port_info[] = { @@ -643,6 +645,16 @@ static struct ata_port_info piix_port_info[] = { .port_ops = &piix_sata_ops, }, + [ich8_2port_sata_snb] = + { + .flags = PIIX_SATA_FLAGS | PIIX_FLAG_SIDPR | PIIX_FLAG_PIO16, + .pio_mask = ATA_PIO4, + .mwdma_mask = ATA_MWDMA2, + .udma_mask = ATA_UDMA6, + .port_ops = &piix_sata_ops, + }, + + }; static struct pci_bits piix_enable_bits[] = {
There is a quirk patch 5e5a4f5d5a08c9c504fe956391ac3dae2c66556d fix the 4 ports IDE controller 32bit PIO mode. Recently, the problem was showed at Haswell platform which includes 2 ports IDE controller. So introduce a qurik patch to disable 32bit PIO at this IDE controller. Signed-off-by: Youquan Song <youquan.song@intel.com> --- drivers/ata/ata_piix.c | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-)