summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorKunihiko Hayashi <hayashi.kunihiko@socionext.com>2018-08-22 21:13:02 +0900
committerTejun Heo <tj@kernel.org>2018-08-22 08:08:27 -0700
commit9d2ab99573970838108add835442a03e23f8577b (patch)
treebb6c8eb9824775a21c550fe24a8f5d03c83b5cb4 /include
parent16af2d65842d343c2f95733c3993a0b5baab08f9 (diff)
downloadlinux-9d2ab99573970838108add835442a03e23f8577b.tar.gz
linux-9d2ab99573970838108add835442a03e23f8577b.tar.bz2
linux-9d2ab99573970838108add835442a03e23f8577b.zip
ata: libahci_platform: add reset control support
Add support to get and control a list of resets for the device as optional and shared. These resets must be kept de-asserted until the device is enabled. This is specified as shared because some SoCs like UniPhier series have common reset controls with all ahci controller instances. However, according to Thierry's view, https://www.spinics.net/lists/linux-ide/msg55357.html some hardware-specific drivers already use their own resets, and the common reset make a path to occur double controls of resets. The ahci_platform_get_resources() can get and control the reset only when the second argument includes AHCI_PLATFORM_GET_RESETS bit. Suggested-by: Hans de Goede <hdegoede@redhat.com> Cc: Thierry Reding <thierry.reding@gmail.com> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/ahci_platform.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/ahci_platform.h b/include/linux/ahci_platform.h
index 6490be1f8a16..eaedca5fe6fc 100644
--- a/include/linux/ahci_platform.h
+++ b/include/linux/ahci_platform.h
@@ -43,4 +43,6 @@ int ahci_platform_resume_host(struct device *dev);
int ahci_platform_suspend(struct device *dev);
int ahci_platform_resume(struct device *dev);
+#define AHCI_PLATFORM_GET_RESETS 0x01
+
#endif /* _AHCI_PLATFORM_H */