mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
libata: ignore SIMG4726 config pseudo device
I was hoping ATA_HORKAGE_NODMA | ATA_HORKAGE_SKIP_PM could keep it happy but no even this doesn't work under certain configurations and it's not like we can do anything useful with the cofig device anyway. Replace ATA_HORKAGE_SKIP_PM with ATA_HORKAGE_DISABLE and use it for the config device. This makes the device completely ignored by libata. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
This commit is contained in:
parent
906c1ff44a
commit
50af2fa1e1
3 changed files with 9 additions and 9 deletions
|
|
@ -2126,6 +2126,13 @@ int ata_dev_configure(struct ata_device *dev)
|
|||
dev->horkage |= ata_dev_blacklisted(dev);
|
||||
ata_force_horkage(dev);
|
||||
|
||||
if (dev->horkage & ATA_HORKAGE_DISABLE) {
|
||||
ata_dev_printk(dev, KERN_INFO,
|
||||
"unsupported device, disabling\n");
|
||||
ata_dev_disable(dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* let ACPI work its magic */
|
||||
rc = ata_acpi_on_devcfg(dev);
|
||||
if (rc)
|
||||
|
|
@ -3893,8 +3900,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
|
|||
{ "SAMSUNG CD-ROM SN-124", "N001", ATA_HORKAGE_NODMA },
|
||||
{ "Seagate STT20000A", NULL, ATA_HORKAGE_NODMA },
|
||||
/* Odd clown on sil3726/4726 PMPs */
|
||||
{ "Config Disk", NULL, ATA_HORKAGE_NODMA |
|
||||
ATA_HORKAGE_SKIP_PM },
|
||||
{ "Config Disk", NULL, ATA_HORKAGE_DISABLE },
|
||||
|
||||
/* Weird ATAPI devices */
|
||||
{ "TORiSAN DVD-ROM DRD-N216", NULL, ATA_HORKAGE_MAX_SEC_128 },
|
||||
|
|
|
|||
|
|
@ -1082,12 +1082,6 @@ static unsigned int ata_scsi_start_stop_xlat(struct ata_queued_cmd *qc)
|
|||
if (((cdb[4] >> 4) & 0xf) != 0)
|
||||
goto invalid_fld; /* power conditions not supported */
|
||||
|
||||
if (qc->dev->horkage & ATA_HORKAGE_SKIP_PM) {
|
||||
/* the device lacks PM support, finish without doing anything */
|
||||
scmd->result = SAM_STAT_GOOD;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (cdb[4] & 0x1) {
|
||||
tf->nsect = 1; /* 1 sector, lba=0 */
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue