~ubuntu-branches/ubuntu/saucy/linux-ti-omap4/saucy-proposed

« back to all changes in this revision

Viewing changes to drivers/ata/ata_piix.c

  • Committer: Package Import Robot
  • Author(s): Paolo Pisati, Paolo Pisati, Stefan Bader, Upstream Kernel Changes
  • Date: 2012-08-15 17:17:43 UTC
  • Revision ID: package-import@ubuntu.com-20120815171743-h5wnuf51xe7pvdid
Tags: 3.5.0-207.13
[ Paolo Pisati ]

* Start new release

[ Stefan Bader ]

* (config) Enable getabis to use local package copies

[ Upstream Kernel Changes ]

* fixup: gargabe collect iva_seq[0|1] init
* [Config] enable all SND_OMAP_SOC_*s
* fixup: cm2xxx_3xxx.o is needed for omap2_cm_read|write_reg
* fixup: add some snd_soc_dai* helper functions
* fixup: s/snd_soc_dpcm_params/snd_soc_dpcm/g
* fixup: typo, no_host_mode and useless SDP4430 init
* fixup: enable again aess hwmod

Show diffs side-by-side

added added

removed removed

Lines of Context:
94
94
#include <scsi/scsi_host.h>
95
95
#include <linux/libata.h>
96
96
#include <linux/dmi.h>
97
 
#ifdef CONFIG_X86
98
 
#include <asm/hypervisor.h>
99
 
#endif
100
97
 
101
98
#define DRV_NAME        "ata_piix"
102
99
#define DRV_VERSION     "2.13"
191
188
 
192
189
static unsigned int in_module_init = 1;
193
190
 
194
 
static int prefer_ms_hyperv = 1;
195
 
 
196
 
unsigned int ata_piix_read_id(struct ata_device *dev,
197
 
                                        struct ata_taskfile *tf, u16 *id)
198
 
{
199
 
        int ret = ata_do_dev_read_id(dev, tf, id);
200
 
 
201
 
#ifdef CONFIG_X86
202
 
        /* XXX: note that the device id is in little-endian order, the caller
203
 
         * will shift it to host order, but we are working with little-endian.
204
 
         * As this is _only_ used on x86 we can actually directly access it
205
 
         * as host is also little-endian.
206
 
         */
207
 
        if (!ret && prefer_ms_hyperv && x86_hyper == &x86_hyper_ms_hyperv &&
208
 
                                                        ata_id_is_ata(id)) {
209
 
                ata_dev_printk(dev, KERN_WARNING, "ATA disk ignored deferring to Hyper-V paravirt driver\n");
210
 
 
211
 
                return AC_ERR_DEV|AC_ERR_NODEV_HINT;
212
 
        }
213
 
#endif
214
 
        return ret;
215
 
}
216
 
 
217
191
static const struct pci_device_id piix_pci_tbl[] = {
218
192
        /* Intel PIIX3 for the 430HX etc */
219
193
        { 0x8086, 0x7010, PCI_ANY_ID, PCI_ANY_ID, 0, 0, piix_pata_mwdma },
387
361
        .set_piomode            = piix_set_piomode,
388
362
        .set_dmamode            = piix_set_dmamode,
389
363
        .prereset               = piix_pata_prereset,
390
 
        .read_id                = ata_piix_read_id,
391
364
};
392
365
 
393
366
static struct ata_port_operations piix_vmw_ops = {
1768
1741
 
1769
1742
module_init(piix_init);
1770
1743
module_exit(piix_exit);
1771
 
 
1772
 
module_param(prefer_ms_hyperv, int, 0);