• Hans de Goede's avatar
    ahci-platform: "Library-ise" ahci_probe functionality · 23b07d4c
    Hans de Goede authored
    ahci_probe consists of 3 steps:
    1) Get resources (get mmio, clks, regulator)
    2) Enable resources, handled by ahci_platform_enable_resouces
    3) The more or less standard ahci-host controller init sequence
    
    This commit refactors step 1 and 3 into separate functions, so the platform
    drivers for AHCI implementations which need a specific order in step 2,
    and / or need to do some custom register poking at some time, can re-use
    ahci-platform.c code without needing to copy and paste it.
    
    Note that ahci_platform_init_host's prototype takes the 3 non function
    members of ahci_platform_data as arguments, the idea is that drivers using
    the new exported utility functions will not use ahci_platform_data at all,
    and hopefully in the future ahci_platform_data can go away entirely.
    
    tj: Minor comment formatting updates.
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    23b07d4c
ahci_platform.h 1.74 KB