View | Details | Raw Unified | Return to bug 205331
Collapse All | Expand All

(-)a/drivers/scsi/ata_piix.c (-31 / +4 lines)
Lines 123-130 enum { Link Here
123
	ich6_sata		= 4,
123
	ich6_sata		= 4,
124
	ich6_sata_ahci		= 5,
124
	ich6_sata_ahci		= 5,
125
	ich6m_sata_ahci		= 6,
125
	ich6m_sata_ahci		= 6,
126
	ich7m_sata_ahci		= 7,
126
	ich8_sata_ahci		= 7,
127
	ich8_sata_ahci		= 8,
128
127
129
	/* constants for mapping table */
128
	/* constants for mapping table */
130
	P0			= 0,  /* port 0 */
129
	P0			= 0,  /* port 0 */
Lines 189-195 #endif Link Here
189
	/* 82801GB/GR/GH (ICH7, identical to ICH6) */
188
	/* 82801GB/GR/GH (ICH7, identical to ICH6) */
190
	{ 0x8086, 0x27c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata_ahci },
189
	{ 0x8086, 0x27c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata_ahci },
191
	/* 2801GBM/GHM (ICH7M, identical to ICH6M) */
190
	/* 2801GBM/GHM (ICH7M, identical to ICH6M) */
192
	{ 0x8086, 0x27c4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich7m_sata_ahci },
191
	{ 0x8086, 0x27c4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6m_sata_ahci },
193
	/* Enterprise Southbridge 2 (where's the datasheet?) */
192
	/* Enterprise Southbridge 2 (where's the datasheet?) */
194
	{ 0x8086, 0x2680, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata_ahci },
193
	{ 0x8086, 0x2680, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich6_sata_ahci },
195
	/* SATA Controller 1 IDE (ICH8, no datasheet yet) */
194
	/* SATA Controller 1 IDE (ICH8, no datasheet yet) */
Lines 328-350 static const struct piix_map_db ich6m_ma Link Here
328
	.mask = 0x3,
327
	.mask = 0x3,
329
	.port_enable = 0x5,
328
	.port_enable = 0x5,
330
	.present_shift = 4,
329
	.present_shift = 4,
331
	.map = {
332
		/* PM   PS   SM   SS       MAP */
333
		{  P0,  P2,  RV,  RV }, /* 00b */
334
		{  RV,  RV,  RV,  RV },
335
		{  P0,  P2, IDE, IDE }, /* 10b */
336
		{  RV,  RV,  RV,  RV },
337
	},
338
};
339
340
static const struct piix_map_db ich7m_map_db = {
341
	.mask = 0x3,
342
	.port_enable = 0x5,
343
	.present_shift = 4,
344
330
345
	/* Map 01b isn't specified in the doc but some notebooks use
331
	/* Map 01b isn't specified in the doc but some notebooks use
346
	 * it anyway.  ATM, the only case spotted carries subsystem ID
332
	 * it anyway.  MAP 01b have been spotted on both ICH6M and
347
	 * 1025:0107.  This is the only difference from ich6m.
333
	 * ICH7M.
348
	 */
334
	 */
349
	.map = {
335
	.map = {
350
		/* PM   PS   SM   SS       MAP */
336
		/* PM   PS   SM   SS       MAP */
Lines 374-380 static const struct piix_map_db *piix_ma Link Here
374
	[ich6_sata]		= &ich6_map_db,
360
	[ich6_sata]		= &ich6_map_db,
375
	[ich6_sata_ahci]	= &ich6_map_db,
361
	[ich6_sata_ahci]	= &ich6_map_db,
376
	[ich6m_sata_ahci]	= &ich6m_map_db,
362
	[ich6m_sata_ahci]	= &ich6m_map_db,
377
	[ich7m_sata_ahci]	= &ich7m_map_db,
378
	[ich8_sata_ahci]	= &ich8_map_db,
363
	[ich8_sata_ahci]	= &ich8_map_db,
379
};
364
};
380
365
Lines 464-481 #endif Link Here
464
		.port_ops	= &piix_sata_ops,
449
		.port_ops	= &piix_sata_ops,
465
	},
450
	},
466
451
467
	/* ich7m_sata_ahci */
468
	{
469
		.sht		= &piix_sht,
470
		.host_flags	= ATA_FLAG_SATA |
471
				  PIIX_FLAG_CHECKINTR | PIIX_FLAG_SCR |
472
				  PIIX_FLAG_AHCI,
473
		.pio_mask	= 0x1f,	/* pio0-4 */
474
		.mwdma_mask	= 0x07, /* mwdma0-2 */
475
		.udma_mask	= 0x7f,	/* udma0-6 */
476
		.port_ops	= &piix_sata_ops,
477
	},
478
479
	/* ich8_sata_ahci */
452
	/* ich8_sata_ahci */
480
	{
453
	{
481
		.sht		= &piix_sht,
454
		.sht		= &piix_sht,

Return to bug 205331