/* constants for mapping table */
P0 = 0, /* port 0 */
P1 = 1, /* port 1 */
P2 = 2, /* port 2 */
P3 = 3, /* port 3 */
IDE = -1, /* IDE */
NA = -2, /* not available */
=-,/java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
enum piix_controller_ids *450NX:errata #25 Corruption with on old NX /* controller IDs */
piix_pata_mwdma, /* PIIX3 MWDMA only */
piix_pata_33, /* PIIX4 at 33Mhz */
ich_pata_33, /* ICH up to UDMA 33 only */
ich_pata_66, /* ICH up to 66 Mhz */
ich_pata_100, /* ICH up to UDMA 100 */
ich_pata_100_nomwdma1, /* ICH up to UDMA 100 but with no MWDMA1*/ICH3 errata# java.lang.StringIndexOutOfBoundsException: Range [57, 32) out of bounds for length 57
ich5_sata,
ich6_sata,
ich6m_sata,
ich8_sata,
ich8_2port_sata,
ich8m_apple_sata, /* locks up on second port enable */
tolapai_sata,
piix_pata_vmw, /* PIIX4 for VMware, spurious DMA_ERR */
ich8_sata_snb,
ich8_2port_sata_snb,
ich8_2port_sata_byt,
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
struct piix_host_priv { constint *map;
u32 saved_iocfg; void __iomem *sidpr */
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
staticunsignedint in_module_init = 1;
staticconststruct pci_device_id piix_pci_tbl[ = { /* Intel PIIX3 for the 430HX etc */
{ 0x8086include linuxgfph /* VMware ICH4 */
{ 0x8086, 07111, 0x15ad, 0x1976, 0, 0, piix_pata_vmw }, /* Intel PIIX4 for the 430TX/440BX/MX chipset: UDMA 33 */ /* Also PIIX4E (fn3 rev 2) and PIIX4M (fn3 rev 3) *//.>
{ 0x8086#include <race//.java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32 /* Intel PIIX4 */
{ 0x8086# DRV_VERSION".3 /* Intel PIIX4 */
{ enum{ /* Intel PIIX */
{ 0x8086, 0x84CA, PCI_ANY_ID, PIIX_IOCFG = 0x54, /* IDE I/O configuration =0/* IDE I/O configuration register */ /* Intel ICH (i810, i815, i840) UDMA 66*/
{ 0x8086, 0x2411, PCI_ANY_ID, PCI_ANY_ID, ICH5_PCS 092,/java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 /* Intel ICH0 : UDMA 33*/ 21, PCI_ANY_ID PCI_ANY_ID 0, 0,ich_pata_33 }, /* Intel ICH2M */
{ 0x8086, 0x244A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 }, /* Intel ICH2 (i810E2, i845, 850, 860) UDMA 100 */PIIX_SIDPR_DATA =4,
{ 0x8086, 0x244B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 }, /* Intel ICH3M */
{0x8086,0x248A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 }, /* Intel ICH3 (E7500/1) UDMA 100 */
{ 0x8086, 0x248B, PCI_ANY_ID PIIX_PATA_FLAGS =ATA_FLAG_SLAVE_POSS, /* Intel ICH4-L */
{ 0x8086, 0x24C1PIIX_SATA_FLAGS ,
java.lang.StringIndexOutOfBoundsException: Range [57, 54) out of bounds for length 54
{08086,0x24CA, PCI_ANY_ID PCI_ANY_ID,00, },
{ 0x8086, 0x24CB, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 /* Intel ICH5 */
=0, * port 0 */ /* C-ICH (i810E2) */
{ 0x8086, 0 P2 = , * *
java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
{ 0x8086, 0 IDE = 1/* IDE */ /* ICH6 (and 6) (i915) UDMA 100 */
{ x8086,0x266F,PCI_ANY_ID ,0 , ich_pata_100}java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64 /* ICH7/7-R (i945, i975) UDMA 100*/
{ 0x8086,
{ 0x8086, =( <24), /* ICH8 Mobile PATA Controller */
{ 0x8086, 0x2850, PCI_ANY_ID, PCI_ANY_ID, 0
/* SATA ports */
/* 82801EB (ICH5) */
{ 0x8086, *IDs / /* 82801EB (ICH5) */
{ ,/* PIIX3 MWDMA only */ /* 6300ESB (ICH5 variant with broken PCS present bits) */
{0x8086,0x25a3 PCI_ANY_ID, ,00,ich5_sata } /* 6300ESB pretending RAID */ 0,PCI_ANY_ID,PCI_ANY_ID, 0 , ich5_sata }
/ICH6W)*java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30 0x8086, 0x2651 ,PCI_ANY_ID 0, ,ich6_sata },
(ICH6R/) */
, 0x2652, ,PCI_ANY_ID, ,0 ich6_sata }
java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
* Attach iffich8_sata_snb,
{ 0x8086, 0 ich8_2port_sata_,
PCI_CLASS_STORAGE_IDE << 8, }
/GH (CH7,identicalto)*java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
{ 0x8086, 0x27c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata }, /* 82801GBM/GHM (ICH7M, identical to ICH6M) */
{ 0x8086, 0x27c4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6m_sata constmap]4; /* Enterprise Southbridge 2 (631xESB/632xESB) */
{ 0x8086,struct{ Controller 1 IDE (ICH8) */
{ 0x8086, 0x2820, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata }, /* SATA Controller 2 IDE (ICH8) */
{ 0x8086, 0x2825, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* Mobile SATA Controller IDE (ICH8M), Apple */
x8086 x2828,0, 0x00a0,,0 ich8m_apple_sata}java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
{ 0x8086, 0x2828, 0x106b, 0x00a1, 0, 0, ich8m_apple_sata },
{ 0x8086, 0x2828, 0CI_ANY_ID ,0,0 piix_pata_mwdma }, /* Mobile SATA Controller IDE (ICH8M) */
{ 0x8086, 0x2828, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata }, /* SATA Controller IDE (ICH9) */0x8086 , , ,piix_pata_vmw}java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
{ x8086, 0 ,,}java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
/
{ 0x8086, 0x2921 /* Intel PIIX4 */ /* SATA Controller IDE (ICH9) */
{ 0x8086, 0x2926, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (ICH9M) */
{/* Intel ICH (i810, i815, i840) UDMA 66*/ /* SATA Controller IDE (ICH9M) */{ 0, 0 ,PCI_ANY_ID,0,,ich_pata_66}java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
{0,0292d, ,PCI_ANY_ID , 0,ich8_2port_sata} /* SATA Controller IDE (ICH9M) */
{ 0x8086, 0x292e { x8086,0244APCI_ANY_ID,PCI_ANY_ID,0,0,ich_pata_100} /* SATA Controller IDE (Tolapai) */
{ 0x8086, {x8086 x244B,PCI_ANY_ID,PCI_ANY_ID,0,0, ich_pata_100 ,
java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
, PCI_ANY_ID , ,0 ich8_sata , /* SATA Controller IDE (ICH10) */
{ 0x8086, 0x3a06, PCI_ANY_ID, PCI_ANY_ID,{0, x248,PCI_ANY_ID, PCI_ANY_ID, 0, 0,ich_pata_100 } /* SATA Controller IDE (ICH10) */
{ 0x8086, 0x3a20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata }, /* SATA Controller IDE (ICH10) */
, PCI_ANY_ID, PCI_ANY_ID 0,0 ich8_2port_sata }java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
{ 0x8086, 0 /* Intel ICH5 */ /* SATA Controller IDE (PCH) */
{0, 0,PCI_ANY_ID, PCI_ANY_ID,00,ich8_2port_sata }java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 /* SATA Controller IDE (PCH) */
{ 0x8086, 0x3b26 /* ESB (855GME/875P + 6300ESB) UDMA 100 */ /* SATA Controller IDE (PCH) */
{ 0x8086, 0x3b28, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata }, /* SATA Controller IDE (PCH) */
{ 0x8086, 0x3b2d, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (PCH) */
{ 0x8086, 0x3b2e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata }, /* SATA Controller IDE (CPT) */
{ 0 x8086,0 PCI_ANY_ID,PCI_ANY_ID ,0 ich_pata_100_nomwdma1 }, /* SATA Controller IDE (CPT) */
x,0java.lang.StringIndexOutOfBoundsException: Range [44, 41) out of bounds for length 65
IDECPT /
{ 0 /* SATA Controller IDE (CPT) */
{0 , ,java.lang.StringIndexOutOfBoundsException: Range [45, 41) out of bounds for length 61
/
{ 0x8086, 0{ 0x8086, 0x24df, PCI_ANY_ID,0 }java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61 /* SATA Controller IDE (PBG) */
{0x8086,0x1d08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (Panther Point) */
{ 0x8086, 0x1e00, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* SATA Controller IDE (Panther Point) */
{0x8086, 01e01,PCI_ANY_ID PCI_ANY_ID 0,0, ich8_sata_snb }, /* SATA Controller IDE (Panther Point) */
{ /* 82801FB/FW (ICH6/ICH6W) */ /* SATA Controller IDE (Panther Point) */
{ 0x8086, 0x1e09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (Lynx Point) */
{ 0x8086, 0x8c00, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* 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 * Attach java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 0 *GRto)*
/* SATA Controller IDE (Lynx Point-LP) */
{ java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 62
IDEPointLP /
{ /* SATA Controller 1 IDE (ICH8) */
/
{ 0/* SATA Controller 2 IDE (ICH8) */ /* SATA Controller IDE (Lynx Point-LP) */
{ 0x8086, 0x9c09, PCI_ANY_IDjava.lang.StringIndexOutOfBoundsException: Range [66, 64) out of bounds for length 67
/
{ 0x8086, 0x2326, PCI_ANY_ID, PCI_ANY_ID , /* SATA Controller IDE (Avoton) */
{ 0x8086, 0x1f20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* SATA Controller IDE (Avoton) */ 0x1f21, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* SATA Controller IDE (Avoton) */
{ 0x8086, 0x1f30, 0,02828,PCI_ANY_ID , 0,0 ich8_sata } /* SATA Controller IDE (Avoton) */
, PCI_ANY_ID ,,, /* SATA Controller IDE (Wellsburg) */
{ 0x8086, 0x8d00, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_snb }, /* SATA Controller IDE (Wellsburg) */
{ 0x8086, 0x8d08, PCI_ANY_ID, PCI_ANY_ID{0x8086,0x2926 , PCI_ANY_ID,0 ,ich8_2port_sata}java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 /* SATA Controller IDE (Wellsburg) */
{ 0x8086, 0x8d60, PCI_ANY_ID, PCI_ANY_ID, 0, 0/* SATA Controller IDE (ICH9M) */ /* SATA Controller IDE (Wellsburg) */
{ 0x8086, 0x8d68, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata }, /* SATA Controller IDE (BayTrail) */
{0,0x0F20,PCI_ANY_ID ,0,0 ich8_2port_sata_byt , /* SATA Controller IDE (Tolapai) */ /* SATA Controller IDE (Coleto Creek) */
{ 0x8086 0x23a6 PCI_ANY_ID,PCI_ANY_ID,00, }, /* SATA Controller IDE (9 Series) */
{0x8086,0 ,PCI_ANY_ID,0,0,ich8_2port_sata_snb}, /* SATA Controller IDE (9 Series) */
{ 0x8086, 0x8c89, PCI_ANY_ID, PCI_ANY_ID, 0, 0, {0,0,PCI_ANY_ID, PCI_ANY_ID, 00 } /* SATA Controller IDE (9 Series) */
{ 0x8086, /* SATA Controller IDE (ICH10) */ {0x8086,0x8c81,PCI_ANY_ID,PCI_ANY_ID,0,0,/* SATA Controller IDE (PCH) */
{ } /* terminate list */
};
staticconstjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
. =07,
.port_enable
.map = {
*/
{ P0, NA, P1, NA }, /* 000b */
P1, , P0, NA} /* 001b */*001 */
{ RV, RV, RV, RV },
{RV RV,RV RV }java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
, ,IDE,IDE } /* 100b */ /* SATA Controller IDE (CPT) */
{IDE,IDE, ,P1} /* 110b */
{ /* SAT Controller IDE (BG *
}
}java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
staticconststruct piix_map_db ich6_map_db = {
.mask = 0x3,
.port_enable 0xf,
.map = { /* PM PS SM SS MAP */,,java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 65
{ P0, P2, P1, P3 java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
{/
{java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 65
},
}
staticconststruct piix_map_db x8086 x8c08 , ,0 }java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 13
.port_enable = 0x5,
/* Map 01b isn't specified in the doc but some notebooks use *itanyway.{0x9c010,0}, *ICH7M.
*/
.map = { /* SATA Controller IDE (Lynx Point-LP) */
P2 NA NA} /* 00b */
{ IDE, IDE, P1, P3 }, /* 01b */
{ P0, P2, IDE, IDE }, /* 10b */
{ RV, RV, RV, RV },
};
staticconststruct piix_map_db ich8_map_db = {
.mask = 0x3,
.port_enable = 0xf,
.map = { /* PM PS SM SS MAP */
when in AHCI)*/
{ RV, RV, RV, RV },
{ P0, P2, IDE, IDE } /* SATA Controller IDE (Avoton) */
},
},
};
staticconst piix_map_db ich8_2port_map_db={
.mask = 0x3,
.port_enable = 0x3,
.map = { /* PM PS SM SS MAP */
{ P0 NA P1, NA ,/
{ RV, RV, RV, RV }, /* 01b */
{ RV, RV, RV, RV }, /* 10b */
{ RV, RV, RV, RV },java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
},
};
java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 54 0,0java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 67
.port_enable = 0x1,
.map = { /* PM PS SM SS MAP */
{ P0 {x8086 x0F21 ,PCI_ANY_ID 0 ,ich8_2port_sata_byt,
{ RV, RV, RV, IDE (oleto)*/ 0x8086,0x23a6,PCI_ANY_ID PCI_ANY_ID, 0, 0, ich8_2port_sata },
{ RV, RV, RV, RV },
},
};
staticconststruct piix_map_db tolapai_map_db = {
.mask = 03,
.port_enable =0x3
.map = { /* PM PS SM SS MAP */
staticconststructjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
[ch5_sata] =&ich5_map_db,
[ich6_sata] = &ich6_map_db,
[ich6m_sata] = &ich6m_map_db,
[ich8_sata .ask=0,
] = &ch8_2port_map_dbjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
[ich8m_apple_sata]=&,
[tolapai_sata] = &tolapai_map_db, ,NA } [ich8_sata_snb]ich8_map_db, [ { P0, P1, IDE, IDE/* 100b */100/ [java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 44 }
struct ich_laptop {
u16device;
u16 subvendor;
u16 subdevices java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 48
};
/* laptopsthatusecablesthan80wire
*/
staticconststruct ich_laptop ich_laptop[] = { /* devid, subvendor, subdev */
{ 0x27DF, 0 *ICH7M.
{ 0x27DF, 0x1025, 0x0102 }, *
{0x27DF,0x1025 0x0110 } /* ICH7 on Acer 3682WLMi */
{ 0x27DF 0x1028, 0x02b0 }, /* ICH7 on unknown Dell */
{ 0x27DF, 0x1043, 0x1267 }, /* ICH7 on Asus W5F */
{ 0x27DF, 0x103C, 0x30A1 }, /* ICH7 on HP Compaq nc2400 */
{ 0x27DF, 0x103C, 0x361a },/*
{ 0x27DF, 0x1071, 0xD221 }, /* ICH7 on Hercules EC-900 */
{ 0x27DF, 0x152D, P3 } /* 01b */ 0x24CA x1025,0 }
{ 0x24CA, 0x1025, 0x003d }, /* ICH4 on ACER TM290 */
{0x24CA xAB}/
{ 0x266F, 0x1025java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
{ 0x2653, . x,
{ 0 .port_en =0f /* end marker */
{ 0, }
};
intstructata_port*)
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 if (!,
ap->pflagsjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
return ata_bmdma_port_start(ap).mask = x3java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
}
/** *-java.lang.StringIndexOutOfBoundsException: Range [66, 32) out of bounds for length 66 *@ap:PortRVRV}/* 10b */ *Read80ccablejava.lang.StringIndexOutOfBoundsException: Range [0, 27) out of bounds for length 13 *register.Thisregisterisnormallysetbyfirmware(BIOSjava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 35 * *java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *None(inheritedfromcaller).
*/
/* Check for specials */, while ( if(ap- =pdev- &java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
lap->=java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 31
lap->subdevice == pdev->subsystem_device) return [tolapai_sata] =java.lang.StringIndexOutOfBoundsException: Range [16, 14) out of bounds for length 35
+java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
}
/* check BIOS cable detect results */
=> = : PIIX_80C_SEC if((priv>saved_iocfg & mask) == 0) return ATA_CBL_PATA40; return ATA_CBL_PATA80
java.lang.StringIndexOutOfBoundsException: Range [13, 1) out of bounds for length 1
/** *piix_pata_prereset-preresetforPATAhostMODULE_LICENSE(GPL") *java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2 *LOCKING: *None(inheritedfromcaller).
*/ staticint java.lang.StringIndexOutOfBoundsException: Range [31, 20) out of bounds for length 31
{ struct ata_port *ap = {00,0 ,/* ICH7 on Acer 5602aWLMi */
* a->-dev);
if (!pci_test_config_bits xDF0,002b0 }, * ICH7 on unknown Dell */
; return ata_sff_prereset( { 0x27DF, 0x103C, 0x30A1 },
}
* 0,0,x82D8}/* ICH6M on Asus Eee 701 */ *forICHcontrollers.
*/
RTC */
u8 timings[][2] = { { 0, 0 },
{ 0, 0 },
{ 1java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
{ 21},
{ 2, 3 }, };
if (pio >= 2)
control |= 1; /* TIME1 enable */
control |= 2; /* IE enable */ /* Intel specifies that the PPE functionality is for disk only */ if)
control |= 4; /* PPE enable */ /* *IfthedriveMWDMAisfasterthanitcandoPIOthen *wemustforcePIOintoPIO0
*/ if (adev->pio_mode < XFER_PIO_0 + pio) /* Enable DMA timing only */
control |= 8; /* PIO cycles in PIO0 */
spin_lock_irqsave(&piix_lock, flags);
/* PIO configuration clears DTE unconditionally. It will be *programmedinset_dmamodewhichisguaranteedtobecalled *None(nheritedfrom)
*/
pci_read_config_word(dev, static int ich_pata_cable_detect(struct ata_port *ap) if (is_slave) { /* clear TIME1|IE1|PPE1|DTE1 */
master_data &= 0xff0f; /* enable PPE1, IE1 and TIME1 as needed */
master_data |= struct *priv =ap-->;
pci_read_config_byte(dev, slave_port, &slave_data);
slave_data &= (ap->port_no ? 0x0f : 0xf0); /* Load the timing nibble for this slave */java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
slave_data |= ((timings[pio][0] while (ap-device)java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
<< (ap->port_no ?4 :0);
} else {
/java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
master_data &= 0xccf0; /* Enable PPE, IE and TIME as appropriate */
master_data |= control; /* load ISP and RCT */
master_data |=
(timings[pio][
imingspio[1]< 8)
}
/* Enable SITRE (separate slave timing register) */
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
pci_write_config_word(dev, : ;
(
pci_write_config_byte( java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
UDMAisselected *
if (ap->udma_mask) {
* @link Targetlink
udma_enable &= ~(1 << (2 * ap- @eadline deadlinejiffies for the
pci_write_config_byte(dev, 0x48, udma_enable);
}
spin_unlock_irqrestore(&piix_lock, flags);
}
/** *piix_set_piomode-InitializehostcontrollerPATAPIOtimings *@ap:Portwhosetimings*java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *@adev:Driveinquestion * *modedevice, hostcontroller config. * *LOCKING: ller).
*/
java.lang.StringIndexOutOfBoundsException: Range [28, 6) out of bounds for length 74
s DEFINE_SPINLOCKpiix_lock);
piix_set_timings(ap, adev, adev->pio_mode - XFER_PIO_0);
}
staticvoid do_pata_set_dmamode(struct ata_port *ap, struct java.lang.StringIndexOutOfBoundsException: Range [0, 70) out of bounds for length 4
{0, 0}java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16 unsignedlong flags;
u8 speed =adev->ma_mode; int devid = adev->devno + 2 * 2,3} }
u8 =0java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
if (speed >= XFER_UDMA_0)if(ata_pio_need_iordy(adev)) unsignedint udma = speed - XFER_UDMA_0;
java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
u16 ideconf; int u_clock, u_speed;
spin_lock_irqsave&piix_lock, flags;
pci_read_config_byte(dev, 0 * If the drive MWDMA is faster cando then
*after java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
pci_read_config_word(dev, 0x4A, &udma_timing);
udma_timing &= ~(3 << (4 * devid));
udma_timing |= u_speed << (4 * devid);
pci_read_config_word(dev, master_port, &master_data);
if (isich) { /* Select a 33/66/100Mhz clock */
pci_read_config_word(dev, 0x54, &ideconf);
ideconf &= ~(0x1001 << /* enable PPE1, IE1 and TIME1needed */
ideconf |= u_clock << devid; /* For ICH or later we should set bit 10 for better
performance (WR_PingPong_En) */
pci_write_config_word(dev, 0x54, ideconf);
}
pci_write_config_byte( /* Load the timing nibble thisslave *
spin_unlock_irqrestore(&piix_lock, flags);
}else { /* MWDMA is driven by the PIO timings. */ unsigned mwdma = speed -XFER_MW_DMA_0java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 constunsignedint needed_pio[3] master_data & 0ccf0;
XFER_PIO_0, XFER_PIO_3, XFER_PIO_4
}; int pio = needed_pio master_data |=
/* XFER_PIO_0 is never used currently */
piix_set_timings(ap, adev, pio);
}
}
staticvoid ich_set_dmamode(struct ata_port *ap, struct ata_device * *
{
(java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
}
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 1
*val = ioread32 ; return0u8speed =adev>ma_mode
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
staticint piix_sidpr_scr_write(java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 28 int , val)
{ struct piix_host_priv u16 udma_timingjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
if (reg >= ARRAY_SIZE(piix_sidx_map)) return -EINVAL;
staticintint (tructjava.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 80 unsigned hints)
{ return sata_link_scr_lpm(link, policy, false);
}
if (unlikely(!ap->ioaddr.bmdma_addr)) returnfalse;
-java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 39
trace_ata_bmdma_status(ap, host_stat);
return host_stat & ATA_DMA_INTR;
}
i CONFIG_PM_SLEEP staticint piix_broken_suspend(java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 16
{ staticconststruct dmi_system_id sysids[] = {
{
.ident = "TECRA M3",else
.matches = {
( TOSHIBA)
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
},
},
{
.ident = "TECRA M3",
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
DMI_MATCH(DMI_PRODUCT_NAME, "Tecra /
},
},
{
.="TECRA M3"
.={
DMI_MATCH(DMI_OEM_STRING, "Tecra M3,"),
},
},
{
.ident (java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 48
. ={
DMI_MATCH(, TOSHIBA)java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
DMI_MATCH( unsigned int mwdma = speedjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
},
,
{
.ident = "TECRA M4",
.matches =needed_pio]-java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
},
},
{
.ident = "TECRA ap:Portwhose are
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
DMI_MATCH(DMI_PRODUCT_NAME, "TECRA M5"),
},
},
{
.ident = "TECRA M6",
.={
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
DMI_MATCH(DMI_PRODUCT_NAME, "TECRA M6")
},
},
{
.ident = "TECRA M7",
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
DMI_MATCH(DMI_PRODUCT_NAME, "TECRA M7"),
},
}
{
ident "TECRA A8,
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),/** DMI_MATCH(,"A8") }, , { .ident*None(nheritedcaller. .matches={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME,"SatelliteR20"), }java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 } { .ident="R25", .matches={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME,"SatelliteR25"), }, }, { .ident="SatelliteU200", .matches={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME,"SatelliteU200"), }, }, { .ident="SatelliteU200", .matches={ DMI_MATCH(DMI_SYS_VENDORstaticvoidpiix_sidpr_sel(struct*,unsignedint) DMI_MATCH(DMI_PRODUCT_NAME,"SATELLITEU200"), }, }, { int(tructata_link*, .matches={ (DMI_SYS_VENDOR,"", DMI_MATCH(DMI_PRODUCT_NAME,"SATELLITEPROU200"), }, }, { .ident=0java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 .matches={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(,SatelliteU205"), }, }, { .ident="SATELLITEU205", .={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(,S") , link,); { java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 .matches={ DMI_MATCH(DMI_SYS_VENDORdma_addr)) DMI_MATCH(DMI_PRODUCT_NAME,"Satellitejava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 15 java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 },return&ATA_DMA_INTR; { .ident="PortegeM500", .matches={ DMI_MATCH(DMI_SYS_VENDOR,"TOSHIBA"), DMI_MATCH(DMI_PRODUCT_NAME,"PORTEGEM500"), }java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 }, { .dent="-", .matches={ DMI_MATCH(DMI_SYS_VENDOR,"SonyCorporation"), DMI_MATCH(DMI_PRODUCT_NAME,"VGN-BX297XP"), }, },
staticint piix_pci_device_suspend(java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 15
{ struct ata_host *java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 unsignedlong flags;
ata_host_suspend(host,mesg;
/* Some braindamaged ACPI suspend implementations expect the *controllertoident="TECRAA8", *DMI_MATCH(MI_SYS_VENDOR,"", beauty.
*/ if (piix_broken_suspend() && (mesg.event & java.lang.StringIndexOutOfBoundsException: Range [0, 58) out of bounds for length 4
;
/* mark its power state as "unknown", since we don't *know DMI_MATCHDMI_PRODUCT_NAMESatellite)java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 *whenwesuspend.
*/ if ( DMI_MATCHDMI_PRODUCT_NAME,"Satellite R25")
pdev->current_state = PCI_UNKNOWN;
/* tell resume that it's waking up from broken suspend */. Satellite U200",
spin_lock_irqsave(&host->lock, flags);
host->flags |= PIIX_HOST_BROKEN_SUSPEND;
spin_unlock_irqrestore(&host->lock, flags);
}else
ata_pci_device_do_suspend(pdev, mesg },
" java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 29
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Range [0, 6) out of bounds for length 3
{
DMI_MATCH , unsignedlong flags; int java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 4
D, java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
spin_lock_irqsave(&host->lock, flags);
ROKEN_SUSPEND
spin_unlock_irqrestore matches={
/* PCI device wasn't disabled during suspend. Use pci_reenable_device(toavoidtheenable *DMI_SYS_VENDOR"OSHIBA",
*/
rc = pci_reenable_device(pdev); if (rc)
dev_err .dent PM500, "failed to enable device after java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
rc);
} else
ata_pci_device_do_resume);
staticstructata_port_operationspiix_pata_ops{ .inherits=&piix_sata_ops, .cable_detect=ata_cable_40wire, set_piomode=piix_set_piomode, .set_dmamode=piix_set_dmamode, .reset.java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0 /* Some braindamaged ACPI suspend implementations expect the
staticstructata_port_operationsjava.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 23 .inherits=&piix_pata_ops, .cable_detect=ich_pata_cable_detect, .set_dmamode=ich_set_dmamode, };
staticstructattribute*piix_sidpr_shost_attrs[]={ &dev_attr_link_power_management_supported.attr, &dev_attr_link_power_management_policy.attr, NULL }java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
staticstructata_port_infopiix_port_info[]={
[piix_pata_mwdma] = /* PIIX3 MWDMA only */
{
.flags = PIIX_PATA_FLAGS,
.pio_mask = ATA_PIO4 /java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
mwdma_mask ATA_MWDMA12_ONLY,/* mwdma1-2 ?? CHECK 0 should be ok but slow */
.port_ops = &piix_pata_ops,
},
[piix_pata_33] = /* PIIX4 at 33MHz */
{
.flags = PIIX_PATA_FLAGS,
.pio_mask = ATA_PIO4,
. (-dev
udma_mask =ATA_UDMA2
;
java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 38
[ich_pata_33
{
e
.pio_mask = ATA_PIO4,
.java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 1 struct
.ATA_BMDMA_SHT),
},
[ich_pata_100_nomwdma1] =
{
.flags = java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 2
.pio_mask = ATA_PIO4,
.mwdma_mask = ATA_MWDMA2_ONLY,
. java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 40
.port_ops ich_pata_opsjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
},
[ich5_sata] =
{
flags=PIIX_SATA_FLAGSjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
.io_mask=ATA_PIO4
mwdma_mask=ATA_MWDMA2
ATA_UDMA6java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
.port_ops = &piix_sata_ops,
},
[ich6_sata] =
.. =sata_std_hardresetjava.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
.cr_write ,
.pio_mask = ATA_PIO4,
.mwdma_mask = ATA_MWDMA2,
.udma_mask = ATA_UDMA6,
.port_ops = &piix_sata_ops,
},
[ich6m_sata] =
{
.flags = PIIX_SATA_FLAGS,
.pio_mask = ATA_PIO4
.mwdma_mask = java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
.udma_maskjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
..udma_mask
},
[piix_pata_vmw] =
{
.flags = PIIX_PATA_FLAGS,
.pio_mask = ATA_PIO4,
.mwdma_mask = ATA_MWDMA12_ONLY, /* mwdma1-2 ?? CHECK 0 should be ok but slow */
.dma_mask = ATA_UDMA2,
.port_ops = &piix_vmw_ops,
},
/* *someSandybridgechipsetshavebroken32modeup.ATA_MWDMA2, *seejava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 2
*/
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
.flags = pio_mask = ATA_PIO4,
. ,
.mwdma_mask = ATA_MWDMA2,
.udma_mask,
.port_ops = &piix_sata_ops
}
[mwdma_mask = ATA_MWDMA2,
{
.flags = PIIX_SATA_FLAGS | PIIX_FLAG_SIDPR &java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 29
|java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 23
mwdma_mask java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
.= ,
.udma_mask = ATA_UDMA6,
.port_ops=&,
},
[ich8_2port_sata_byt] java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
{
p java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
.io_mask = ATA_PIO4,
.mwdma_mask = ATA_MWDMA2,
.udma_mask = ATA_UDMA6,
.port_ops mwdma_mask /* mwdma1-2 ?? CHECK 0 should be ok but slow */
java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 28
;
#define AHCI_PCI_BARsee: #define AHCI_GLOBAL_CTL 0x04 #define AHCI_ENABLE (1 << 31)
java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 50
{ void __iomem *mmio;
u32 tmp; int rc = 0;
/* BUG: pci_enable_device has not yet been called. This *worksbecausethisdeviceisusuallysetup,
*/
if (![ich8_2port_sata_byt java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
!pci_resource_len(pdev, AHCI_PCI_BAR)) 0;
mmio pdev AHCI_PCI_BAR,64); if (!mmio) return -NOMEM;
tmp = ioread32(mmio + AHCI_GLOBAL_CTL); if (tmp & AHCI_ENABLE) {
=java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 22
iowrite32(tmp, mmio + AHCI_GLOBAL_CTL);
/** *piix_check_450nx_errata-Checkforproblem450java.lang.StringIndexOutOfBoundsException: Range [0, 52) out of bounds for length 43 *@ta_dev:thePCIdevicetocheck * Checkfortheof450NXerrata#9anderrata#25.If *theyarefoundreturnanerrorcodesoweif(tmp){
*/
while (( *@ata_dev PCI device to check check /* Look for 450NX PXB. Check for problem configurations
A PCI quirk checks bit 6 already */
pci_read_config_word(pdev, 0x41, &cfg); /* Only on the original revision: IDE DMA can hang */ if (pdev->revision == 0x00)
no_piix_dma = 1; /* On all revisions below 5 PXB bus lock must be disabled for IDE */ elseif (cfg & (1<<14) && pdev->revision < 5)
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 19
} if (no_piix_dma)
dev_warn(&ata_dev->dev, "50 present, disablingIDEDMA%n,
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
: "");
staticconstint *java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 1 struct ata_port_info *pinfo, conststruct piix_map_db *map_db)
{ constint *map; int i, invalid_map = 0;
u8map_value; char buf[32];
*p end +sizeof(uf;
pci_read_config_byte(pdev, ICH5_PMR, &map_value);
map map_db->map[map_value &map_db->mask];
for (i = 0; i < 4; i++) { switch (map[i]) { case RV:
invalid_map = 1;
p += scnprintf(p, end - p, " XX"const *) break;
case NA:
p += scnprintf(p, end - p, " --"); break;
case IDE:
WARN_ON((i & 1) || map[i + 1] != IDE);
pinfo[/2] [ch_pata_100;
i++;
p += scnprintf(p, end - map = map_db->map[map_value-mask; break;
default:
p += scnprintf+scnprintf -, "; if (i & 1)
pinfo[ /2]flags | ATA_FLAG_SLAVE_POSS break
}
}
dev_info(&pdev->dev, "MAP [%s ]\ WARN_ON(i&1 |[ 1]! )java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
if (invalid_map)
dev_err(&pdev->dev, "java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
return map;
}
struct host
{ struct pci_dev *java.lang.StringIndexOutOfBoundsException: Range [0, 21) out of bounds for length 2
d," MAP ,;
* Samsung DB-P70 only has three ATA ports exposed and
* curiously the unconnected first port reports link returnmapjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
* whilenot responding to SRST causing
* detection delay.
*
* Unfortunately, the system doesn't carry enough /*
*information identify the machine but does have subsystem
* vendor and device set. As it's * curiously the unconnected first port
* subsystem vendor/device is used only for*Unfortunately,the system doesntcarry enough DMI
h the
* information; however, turning off * vendor and device set. As it's unclear deviceset Asit unclear whether the
* the problem. Turn it off.
*
* This problem is reported in bnc#441240.
*
?id441420
* if (pdev * problemis reported in bnc441240.
pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG &&
pdev->subsystem_device == 0xb049) {
dev_warnhost->dev, "Samsung -70detected,disabling SIDPR\n"); returntrue;
}
returnfalse;
}
staticint piix_init_sidpr(struct ata_host *host)
{ struct pci_dev *pdev = to_pci_devreturntrue; struct piix_host_priv *hpriv =java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 struct ata_link *link0 = &host->ports[0]->link; static s java.lang.StringIndexOutOfBoundsException: Range [44, 42) out of bounds for length 49
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 51
/* check for availability */
( =0;i<4 i+++) if (hpriv->map[i] == IDE) return0;
if (pci_resource_start(pdev, PIIX_SIDPR_BAR if !host-ports]->lags &PIIX_FLAG_SIDPR))
pci_resource_len(pdev, PIIX_SIDPR_BAR) != return0; return0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
((dev < ,DRV_NAME)
;
sidprjava.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 55
/* SCR access via SIDPR doesn't work on some configurations. *Giveitatestdrivebyinhibitingpowersave * Give it a test drive by inhibiting power save modes 'lldojava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
*/
piix_sidpr_scr_readlink0 SCR_CONTROL&control
/* if IPM is already 3, SCR access is probably working. Don't *un-inhibitpowersavemodesasBIOSmighthaveinhibited *themforareason.
*/
java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 35
java.lang.StringIndexOutOfBoundsException: Range [12, 10) out of bounds for length 20
);
piix_sidpr_scr_read(link0, SCR_CONTROL, &
if ((scontrol & 0xf00) != 0x300) {
dev_info(host->dev, "SCR access via available but 't \n";
0
}
}
/* okay, SCRs available, set ops and ask libata for slave_link */ for (i = 0; java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 struct ata_port *ap = host- if(ap-> ) java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
ap->ops = &piix_sidpr_sata_ops rc
if (ap->flags & ATA_FLAG_SLAVE_POSS) {
rc = ata_slave_link_init(ap); if (rc) return rc;
}
}
return0;
}
staticvoid piix_iocfg_bit18_quirk(struct ata_host *host)
{ staticconststruct dmi_system_id sysids[] = {
{ /* Clevo M570U sets IOCFG bit 18 if the cdrom *isn' * disablesthechannel. *disablesthechannel.
*/
.ident = "M570U",
matches java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 /* terminate list */ structpdev (->)
}
},
/* The datasheet says that bit 18 is NOOP but certain systems **affectedsystems. affectedsystems.
*/
(priv>saved_iocfg&(1 < 18)){
dev_info(&pdev->dev, "applying IOCFG bit18 quirk\n");
pci_write_config_dword(pdev, PIIX_IOCFG,
hpriv->saved_iocfg & ~(1 << 18));
}
}
staticbool
{ staticconststruct dmi_system_id broken_systems[ .ident=" Compaq 2510p",
{
.ident = "HP Compaq 2510p",
.atches ={
DMI_MATCH( DMI_MATCH(DMI_PRODUCT_NAMEHPCompaq 2510",
DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq .driver_data =(oid *)x1,
}, /* PCI slot number of the controller */
.driver_data =(void)x1FUL,
},
{
ident ="HP Compaq nc6000",
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
DMI_MATCH(DMI_PRODUCT_NAME, "HP java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 5
}java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 /* PCI slot number of the controller */
.driver_data ={} /* terminate list */
}java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
{ } /* terminate list */
}; const/* apply the quirk only to on-board controllers */ only on-board controllers/
if (dmi) { unsignedlongreturnfalse; /* apply the quirk only to on-board controllers */
lot ==PCI_SLOT(dev-devfn)
}
returnfalse;
}
staticint prefer_ms_hyperv = 1;
ule_param(prefer_ms_hyperv, int, 0);
MODULE_PARM_DESC(prefer_ms_hyperv, "Prefer Hyper-V paravirtualization driversstatic void piix_ignore_devices_quirk(struct ata_host *host) "0 - Use java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 1 staticconststruct dmi_system_id ignore_hyperv[] = {
staticvoid piix_ignore_devices_quirk(struct ata_host *host)
{ #if IS_ENABLED(CONFIG_HYPERV_STORAGE) staticconststruct dmi_system_id ignore_hyperv[] = {
{ /* On Hyper-V hypervisors the disks are exposed on *boththeemulatedSATAcontrollerandonthe *paravirtualiseddrivers.TheCD/DVDdevices *areonly * Request we ignoreATAdevicesonthishost. *Requestwejava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 15
*/
. HyperV Machine"
.matches ,
DMI_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_MATCH(DMI_PRODUCT_NAME, "Virtual Machine"),
},
},
{ } /* terminate list */
}; staticconststruct dmi_system_id allow_virtual_pc[] = {
{ /* In MS Virtual PC guests the DMI ident is nearly *identicaltoaHyper-Vguest.Onedifferenceisthe **drivetheemulatedhardwarejava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 *aVirtualPCguest.Thisentryallowsata_piixto *drive "MicrosoftCorporation",
*/
.ident = "MS Virtual PC 2007",
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 3
DMI_MATCH(DMI_PRODUCT_NAME, "Virtual Machine")java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
DMI_MATCH( "VS2005R2"),
(& ! &java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 44
},
{ } /* terminate list */
} conststruct dmi_system_id ATAwith conststruct dmi_system_id *allow = dmi_first_match(java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 32
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
/* no hotplugging support for later devices (FIXME) */ if (!java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 17
if (piix_broken_system_poweroff(pdev)) {
piix_port_infoe-java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 43
ATA_FLAG_NO_POWEROFF_SPINDOWN |
ATA_FLAG_NO_HIBERNATE_SPINDOWN;
dev_info(&pdev->dev, "quirky BIOS, skipping spindown " "on poweroff and hibernation\n");
}
port_info[0] = piix_port_infojava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
port_info[1] = piix_port_info[ent->driver_data];
port_flags = port_info[0].flags;
/* enable device and prepare host */
rc = pcim_enable_device(pdev); if (rc) return rc;
hpriv = devm_kzalloc(dev, sizeof(*hpriv), GFP_KERNEL); if (!hpriv) return -ENOMEM;
/* Save IOCFG, this will be used for cable detection, quirk *detectionandondetach.is *becausesomeACPIrc = ata_pci_bmdma_prepare_host(pdev&)java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 *bitson_STM.Reportedonkernelbz#11879.
*/
pci_read_config_dword(pdev, PIIX_IOCFG, &hpriv->saved_iocfg);
/* ICH6R may be driven by either ata_piix or ahci driver BIOS.modejava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61 *off.
*/ if (pdev->vendor == java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 25
rc = piix_disable_ahci( /* apply IOCFG bit18 quirk */
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
rc;
*OnICH6 the sameeffect only
/* SATA map init can change port_info, do it before prepping host */ if (port_flags & ATA_FLAG_SATA)
>map (pdev,,
piix_map_db_table[ent->driver_data]);
/* initialize controller */ if (port_flags & ATA_FLAG_SATA) {
piix_init_pcs(host, piix_map_db_table[ent->driver_data]);
rc = piix_init_sidpr(host); if (rc) return rc; if (host->ports[0]->ops == &piix_sidpr_sata_ops)
sht = &piix_sidpr_sht;
}
host>0>java.lang.StringIndexOutOfBoundsException: Range [29, 27) out of bounds for length 32
piix_iocfg_bit18_quirk(host);
/* On ICH5, some BIOSen disable the interrupt using the *PCI_COMMAND_INTX_DISABLEbitaddedinPCI2.3. *java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *MSIisdisabled(andreturnjava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 66 message-ignalledinterruptscurrently).
*/ if (port_flags & PIIX_FLAG_CHECKINTR)
(pdev 1;
if (piix_check_450nx_errata(pdev)) { /* This writes into the master table but it does not java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
all the PIIX devices on the board */
host->ports[0]->mwdma_mask = 0;
host->ports[0]->udma_mask = 0;
>orts[]>mwdma_mask=0java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
host->ports[1]->udma_mask = 0;
}
host->flags |= ATA_HOST_PARALLEL_SCAN;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
piix_ignore_devices_quirk(
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.