summaryrefslogtreecommitdiff
path: root/drivers/ata/libahci.c
diff options
context:
space:
mode:
authorPeter Griffin <peter.griffin@linaro.org>2015-04-20 16:41:05 +0300
committerTejun Heo <tj@kernel.org>2015-04-20 20:36:38 +0300
commite0e2674b92056c24c69940d5f405ea4aef5e4010 (patch)
treeab0213bd4d1259819f640373d15ea430f11b5e31 /drivers/ata/libahci.c
parent5df07b74f671d1dfc1d81c3e791c335183cfc515 (diff)
downloadlinux-e0e2674b92056c24c69940d5f405ea4aef5e4010.tar.xz
ata: ahci_st: fixup layering violations / drvdata errors
Brian noticed while working on another SATA driver that uses libahci_platform, an error in this driver; it tries to the the driver data for its device, while libata also thinks it can set the driver data. See: ahci_platform_init_host() -> ata_host_alloc_pinfo() -> ata_host_alloc() -> dev_set_drvdata() So instead of sticking the IP-specific platform data into drvdata, let's use the plat_data variable that is reserved for this use. Addtionally plat_data isn't set until ahci_platform_init_host() has been called further down in probe(). So re-work the st_ahci_probe_resets and st_ahci_deassert_resets functions to take ahci_host_priv *hpriv as a parameter. Signed-off-by: Peter Griffin <peter.griffin@linaro.org> Suggested-by: Brian Norris <computersforpeace@gmail.com> Cc: Srinivas Kandagatla <srinivas.kandagatla@gmail.com> Cc: Maxime Coquelin <maxime.coquelin@st.com> Cc: Patrice Chotard <patrice.chotard@st.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata/libahci.c')
0 files changed, 0 insertions, 0 deletions