|
@@ -313,7 +313,6 @@ static void ahci_error_handler(struct ata_port *ap);
|
|
static void ahci_post_internal_cmd(struct ata_queued_cmd *qc);
|
|
static void ahci_post_internal_cmd(struct ata_queued_cmd *qc);
|
|
static int ahci_port_resume(struct ata_port *ap);
|
|
static int ahci_port_resume(struct ata_port *ap);
|
|
static void ahci_dev_config(struct ata_device *dev);
|
|
static void ahci_dev_config(struct ata_device *dev);
|
|
-static unsigned int ahci_fill_sg(struct ata_queued_cmd *qc, void *cmd_tbl);
|
|
|
|
static void ahci_fill_cmd_slot(struct ahci_port_priv *pp, unsigned int tag,
|
|
static void ahci_fill_cmd_slot(struct ahci_port_priv *pp, unsigned int tag,
|
|
u32 opts);
|
|
u32 opts);
|
|
#ifdef CONFIG_PM
|
|
#ifdef CONFIG_PM
|
|
@@ -404,14 +403,14 @@ static struct ata_port_operations ahci_sb600_ops = {
|
|
#define AHCI_HFLAGS(flags) .private_data = (void *)(flags)
|
|
#define AHCI_HFLAGS(flags) .private_data = (void *)(flags)
|
|
|
|
|
|
static const struct ata_port_info ahci_port_info[] = {
|
|
static const struct ata_port_info ahci_port_info[] = {
|
|
- /* board_ahci */
|
|
|
|
|
|
+ [board_ahci] =
|
|
{
|
|
{
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.pio_mask = ATA_PIO4,
|
|
.pio_mask = ATA_PIO4,
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_ops,
|
|
.port_ops = &ahci_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_vt8251 */
|
|
|
|
|
|
+ [board_ahci_vt8251] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_NCQ | AHCI_HFLAG_NO_PMP),
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_NCQ | AHCI_HFLAG_NO_PMP),
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|
|
@@ -419,7 +418,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_vt8251_ops,
|
|
.port_ops = &ahci_vt8251_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_ign_iferr */
|
|
|
|
|
|
+ [board_ahci_ign_iferr] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_IRQ_IF_ERR),
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_IRQ_IF_ERR),
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|
|
@@ -427,7 +426,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_ops,
|
|
.port_ops = &ahci_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_sb600 */
|
|
|
|
|
|
+ [board_ahci_sb600] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_SERR_INTERNAL |
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_SERR_INTERNAL |
|
|
AHCI_HFLAG_32BIT_ONLY | AHCI_HFLAG_NO_MSI |
|
|
AHCI_HFLAG_32BIT_ONLY | AHCI_HFLAG_NO_MSI |
|
|
@@ -437,7 +436,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_sb600_ops,
|
|
.port_ops = &ahci_sb600_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_mv */
|
|
|
|
|
|
+ [board_ahci_mv] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_NCQ | AHCI_HFLAG_NO_MSI |
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_NCQ | AHCI_HFLAG_NO_MSI |
|
|
AHCI_HFLAG_MV_PATA | AHCI_HFLAG_NO_PMP),
|
|
AHCI_HFLAG_MV_PATA | AHCI_HFLAG_NO_PMP),
|
|
@@ -447,7 +446,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_ops,
|
|
.port_ops = &ahci_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_sb700, for SB700 and SB800 */
|
|
|
|
|
|
+ [board_ahci_sb700] = /* for SB700 and SB800 */
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_SERR_INTERNAL),
|
|
AHCI_HFLAGS (AHCI_HFLAG_IGN_SERR_INTERNAL),
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|
|
@@ -455,7 +454,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_sb600_ops,
|
|
.port_ops = &ahci_sb600_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_mcp65 */
|
|
|
|
|
|
+ [board_ahci_mcp65] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_YES_NCQ),
|
|
AHCI_HFLAGS (AHCI_HFLAG_YES_NCQ),
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|
|
@@ -463,7 +462,7 @@ static const struct ata_port_info ahci_port_info[] = {
|
|
.udma_mask = ATA_UDMA6,
|
|
.udma_mask = ATA_UDMA6,
|
|
.port_ops = &ahci_ops,
|
|
.port_ops = &ahci_ops,
|
|
},
|
|
},
|
|
- /* board_ahci_nopmp */
|
|
|
|
|
|
+ [board_ahci_nopmp] =
|
|
{
|
|
{
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_PMP),
|
|
AHCI_HFLAGS (AHCI_HFLAG_NO_PMP),
|
|
.flags = AHCI_FLAG_COMMON,
|
|
.flags = AHCI_FLAG_COMMON,
|