diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2014-10-03 14:24:46 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2014-10-03 14:24:46 -0400 |
| commit | 447a8b858e4bda41c394b1bc7fdbc9dc0bdf44f6 (patch) | |
| tree | 676e741f2552c9cb301e1e49c557b92bf8940f55 /drivers/ata/libahci.c | |
| parent | 3049683eafdbbbd7350b0e5ca02a2d8c026a3362 (diff) | |
| parent | 042e1c79166b9250edd8262bea84e1703f27ad2e (diff) | |
Merge branch 'next' into for-linus
Prepare first round of input updates for 3.18.
Diffstat (limited to 'drivers/ata/libahci.c')
| -rw-r--r-- | drivers/ata/libahci.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c index d72ce0470309..b784e9de426a 100644 --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c | |||
| @@ -382,8 +382,6 @@ static ssize_t ahci_show_em_supported(struct device *dev, | |||
| 382 | * ahci_save_initial_config - Save and fixup initial config values | 382 | * ahci_save_initial_config - Save and fixup initial config values |
| 383 | * @dev: target AHCI device | 383 | * @dev: target AHCI device |
| 384 | * @hpriv: host private area to store config values | 384 | * @hpriv: host private area to store config values |
| 385 | * @force_port_map: force port map to a specified value | ||
| 386 | * @mask_port_map: mask out particular bits from port map | ||
| 387 | * | 385 | * |
| 388 | * Some registers containing configuration info might be setup by | 386 | * Some registers containing configuration info might be setup by |
| 389 | * BIOS and might be cleared on reset. This function saves the | 387 | * BIOS and might be cleared on reset. This function saves the |
| @@ -398,10 +396,7 @@ static ssize_t ahci_show_em_supported(struct device *dev, | |||
| 398 | * LOCKING: | 396 | * LOCKING: |
| 399 | * None. | 397 | * None. |
| 400 | */ | 398 | */ |
| 401 | void ahci_save_initial_config(struct device *dev, | 399 | void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv) |
| 402 | struct ahci_host_priv *hpriv, | ||
| 403 | unsigned int force_port_map, | ||
| 404 | unsigned int mask_port_map) | ||
| 405 | { | 400 | { |
| 406 | void __iomem *mmio = hpriv->mmio; | 401 | void __iomem *mmio = hpriv->mmio; |
| 407 | u32 cap, cap2, vers, port_map; | 402 | u32 cap, cap2, vers, port_map; |
| @@ -468,17 +463,17 @@ void ahci_save_initial_config(struct device *dev, | |||
| 468 | cap &= ~HOST_CAP_FBS; | 463 | cap &= ~HOST_CAP_FBS; |
| 469 | } | 464 | } |
| 470 | 465 | ||
| 471 | if (force_port_map && port_map != force_port_map) { | 466 | if (hpriv->force_port_map && port_map != hpriv->force_port_map) { |
| 472 | dev_info(dev, "forcing port_map 0x%x -> 0x%x\n", | 467 | dev_info(dev, "forcing port_map 0x%x -> 0x%x\n", |
| 473 | port_map, force_port_map); | 468 | port_map, hpriv->force_port_map); |
| 474 | port_map = force_port_map; | 469 | port_map = hpriv->force_port_map; |
| 475 | } | 470 | } |
| 476 | 471 | ||
| 477 | if (mask_port_map) { | 472 | if (hpriv->mask_port_map) { |
| 478 | dev_warn(dev, "masking port_map 0x%x -> 0x%x\n", | 473 | dev_warn(dev, "masking port_map 0x%x -> 0x%x\n", |
| 479 | port_map, | 474 | port_map, |
| 480 | port_map & mask_port_map); | 475 | port_map & hpriv->mask_port_map); |
| 481 | port_map &= mask_port_map; | 476 | port_map &= hpriv->mask_port_map; |
| 482 | } | 477 | } |
| 483 | 478 | ||
| 484 | /* cross check port_map and cap.n_ports */ | 479 | /* cross check port_map and cap.n_ports */ |
