05 Aug, 2017
1 commit
-
The newly introduced ahci_platform_shutdown() method is called during
system shutdown to disable host controller DMA and interrupts in order
to avoid potentially corrupting or otherwise interfering with a new
kernel being started with kexec.Signed-off-by: Nate Watterson
Signed-off-by: Tejun Heo
29 Jan, 2015
1 commit
-
The owner module reference of the ahci platform's scsi_host is
initialized to libahci_platform's one, because these drivers use a
scsi_host_template defined in libahci_platform. So these drivers can
be unloaded even if the scsi device is being accessed.This fixes it by pushing the scsi_host_template from libahci_platform
to all leaf drivers. The scsi_host_template is passed through a new
argument of ahci_platform_init_host().Signed-off-by: Akinobu Mita
Signed-off-by: Tejun Heo
Cc: Hans de Goede
Cc: Christoph Hellwig
Cc: "James E.J. Bottomley"
Cc: linux-ide@vger.kernel.org
Cc: linux-scsi@vger.kernel.org
19 Jan, 2015
1 commit
-
The current implementation of the libahci allows using multiple PHYs
but not multiple regulators. This patch adds the support of multiple
regulators. Until now it was mandatory to have a PHY under a subnode,
now a port subnode can contain either a regulator or a PHY (or both).In order to be able to asociate a port with a regulator the port are
now a platform device in the device tree case.There was only one driver which used directly the regulator field of
the ahci_host_priv structure. To preserve the bisectability the change
in the ahci_imx driver was done in the same patch.Signed-off-by: Gregory CLEMENT
Acked-by: Hans de Goede
Signed-off-by: Tejun Heo
16 Aug, 2014
1 commit
-
The last user of the deprecated struct ahci_platform_data has been
cleaned up recently (SPEAr1340 got a proper PHY driver).Signed-off-by: Bartlomiej Zolnierkiewicz
Acked-by: Hans de Goede
Signed-off-by: Tejun Heo
31 Jul, 2014
1 commit
-
This patch moves force_port_map and mask_port_map into the
ahci_host_priv structure. This allows to modify them into the AHCI
framework. This is needed by the new dt bindings representing ports as
the port_map mask is computed automatically.Parameters modifying force_port_map, mask_port_map and flags have been
removed from the ahci_platform_init_host() function, and inputs in the
ahci_host_priv structure are now directly filed.Signed-off-by: Antoine Ténart
Signed-off-by: Tejun Heo
15 May, 2014
1 commit
-
Add a dynamic host_flags argument to make ahci_platform_init_host more flexible,
then remove the AHCI_HFLAGS(...) argument from some driver's ata_port_info,
and pass that in as the new argument.Cc: Hans de Geode
Reviewed-by: Hans de Goede
Signed-off-by: Kefeng Wang
Signed-off-by: Tejun Heo
23 Feb, 2014
5 commits
-
These members are not used anywhere, and in the future we want
ahci_platform_data to go away entirely so there is no reason to keep these
around.Signed-off-by: Hans de Goede
Signed-off-by: Tejun Heo -
Split suspend / resume code into host suspend / resume functionality and
resource enable / disabling phases, and export the new suspend_ / resume_host
functions.tj: Minor comment formatting updates.
Signed-off-by: Hans de Goede
Signed-off-by: Tejun Heo -
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 sequenceThis 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: Hans de Goede
Signed-off-by: Tejun Heo -
tj: Minor comment formatting updates.
Signed-off-by: Hans de Goede
Signed-off-by: Tejun Heo -
The allwinner-sun4i AHCI controller needs 2 clocks to be enabled and the
imx AHCI controller needs 3 clocks to be enabled.tj: Minor comment formatting updates.
Signed-off-by: Hans de Goede
Signed-off-by: Tejun Heo
09 Jan, 2012
1 commit
-
Add platform hooks for custom suspend() and resume() functions. The
generic suspend/resume code in drivers/ata/ahci_platform.c is adapted
from the PCI version in drivers/ata/ahci.c.Signed-off-by: Brian Norris
Signed-off-by: Jeff Garzik
02 Aug, 2010
1 commit
-
Some AHCI implementations may use Vendor Specific HBA[A0h, FFh]
and/or Port[70h, 7Fh] registers to 'prepare' for initialization.
For that, the platform needs memory mapped address of AHCI registers.This patch adds the 'mmio' argument and reorders the call to
platform init function.Signed-off-by: Jassi Brar
Signed-off-by: Jeff Garzik
15 May, 2010
1 commit
-
This can be used for AHCI-compatible interfaces implemented inside
System-On-Chip solutions, or AHCI devices connected via localbus.Signed-off-by: Anton Vorontsov
Signed-off-by: Jeff Garzik