27 Apr, 2020
6 commits
-
Ahci driver set max ports to 2, but the codes has comparing issue if we
only has one port. Also suppress the print of invalid port.Signed-off-by: Ye Li
(cherry picked from commit 2eb4513e30ca986ccd89d98dac9a947bea32ff1f) -
Add new iMX AHCI driver which is ported from kernel and support
imx6q/qp/imx8qm.
The new driver adapt to SCSI through common AHCI interfaces in ahci.c
So after enabling it, we will use SCSI commands to access the SATA
disk device.Signed-off-by: Ye Li
(cherry picked from commit c206ca62ec4e3a04af24c668d2394b81142b6ec4) -
Fix coverity issue CID 43665: Free of address-of expression (BAD_FREE)
incorrect_free: free frees incorrect pointer pp.pp points the port array field of struct ahci_uc_priv, should not free it.
Signed-off-by: Ye Li
Acked-by: Peng Fan
(cherry picked from commit da3f3a081690d4d7fc901d922d01e2bbe6cb4eb5)
(cherry picked from commit 9e1d2397bbf6bc4b6a723e9e362ac92a235a44be) -
Fix coverity issue CID 3261683: Wrong operator used (CONSTANT_EXPRESSION_RESULT)
operator_confusion: ({...; __v;}) | 67108864 is always 1/true regardless of the values
of its operand. This occurs as the logical operand of !When DIAG_X is set, the PHY COMINIT signal is detected, so should use '&' to check
whether it is set.Signed-off-by: Ye Li
(cherry picked from commit 876f435b632fd6ef1f7cfd1f7752861f1da90118)
(cherry picked from commit e1076ddb3ecc76105c15a3c95861167a23a8ee37) -
Fix coverity issue CID 3606684: Resource leak (RESOURCE_LEAK)
leaked_storage: Variable uc_priv going out of scope leaks the storage it points toSigned-off-by: Ye Li
(cherry picked from commit 8f52ef83dbfc9f1c812b2166a7322a16efcbf939)
(cherry picked from commit f85bac1ba59e9656dc2a45fb1ae3be743ccd1ea3) -
The reset_sata should reset the sata device info and free the probe_ent
memory. Otherwise, it will cause memory leak if we init the sata again.Signed-off-by: Ye Li
(cherry picked from commit 148488728486137a790a89e9b869cc938c3e0c57)
(cherry picked from commit ceab4ca7f201545b030b0bf5a087dc7c30e18005)
25 Feb, 2020
1 commit
-
This reverts commit 1ee494291880fd51ef0c5f7342e072bdb069d7ff.
Commit 1ee494291880 ("ata: fsl_ahci: Add sata DM support for Freescale
powerpc socs") introduced SCSI layer to call AHCI private API in order
to support sata operations, In DM mode, This is not necessary for
non-AHCI sata. So revert it and have already updated the driver itself
to operate sata directly.Signed-off-by: Peng Ma
Reviewed-by: Stefan Roese
Reviewed-by: Priyanka Jain
08 Jan, 2020
2 commits
-
In the initialization of sata driver, we want to initialize all port
probes, Therefore, any detection failure between of them should continue
initialization by skipping the current port instead of exit.Signed-off-by: Peng Ma
-
In the initialization of sata driver, we want to initialize all port
probes, Therefore, any detection failure between of them should continue
initialization by skipping the current port instead of exit.Signed-off-by: Peng Ma
03 Dec, 2019
1 commit
-
These functions are CPU-related and do not use driver model. Move them to
cpu_func.hSigned-off-by: Simon Glass
Reviewed-by: Daniel Schwierzeck
Reviewed-by: Tom Rini
19 Nov, 2019
2 commits
-
Add DM support for Silicon(SIL3131 / SIL3132 / SIL3124) sata driver as
few of the PowerPC platforms such as P series based boards need to
use SATA_SIL with DM,Also fix below warning while PowerPC P series boards compilation,
===================== WARNING ======================"
This board does use CONFIG_LIBATA but has CONFIG_AHCI not"
enabled. Please update the storage controller driver to use"
CONFIG_AHCI before the v2019.07 release."
Failure to update by the deadline may result in board removal."
See doc/driver-model/MIGRATION.txt for more info."
===================================================="Signed-off-by: Peng Ma
Reviewed-by: Priyanka Jain -
Add DM support for Freescale PowerPC sata driver used for PowerPC T series
SoCs,CONFIG_BLK needs to be enabled on these platforms. It adds the SATA
controller as AHCI device, which is strictly speaking not correct,
as the controller is not AHCI compatible, But the U-Boot AHCI uclass
interface enables the usage of this DM driver,Also fix below warning while PowerPC T series boards compilation,
===================== WARNING ======================"
This board does use CONFIG_LIBATA but has CONFIG_AHCI not"
enabled. Please update the storage controller driver to use"
CONFIG_AHCI before the v2019.07 release."
Failure to update by the deadline may result in board removal."
See doc/driver-model/MIGRATION.txt for more info."
===================================================="Signed-off-by: Peng Ma
Reviewed-by: Priyanka Jain
31 Oct, 2019
1 commit
-
Allow 64-bit DMA on AHCI. If not supported by the host controller, at
least print a message and fail.Signed-off-by: Roman Kapl
11 Oct, 2019
2 commits
-
In 32bits mode upper bits need to be set to 0, otherwise controller will
try to DMA into not existing memory and stops with error.Tested-by: Frank Wunderlich
Signed-off-by: Frank Wunderlich
Signed-off-by: Oleksandr Rybalko -
Tested-by: Frank Wunderlich
Signed-off-by: Frank Wunderlich
Signed-off-by: Oleksandr Rybalko
26 Aug, 2019
1 commit
-
The scsi_scan_dev() is looping over the number of uc_plat->max_id.
The number of actual ports a AHCI controller has can be greater than
max_id. Update uc_plat->max_id to make SCSI scan all detected ports.Signed-off-by: Aiden Park
Reviewed-by: Bin Meng
23 May, 2019
1 commit
-
This patch is to support Freescale sata driver with dts initialized.
Also resolved the following problems.===================== WARNING ======================
This board does not use CONFIG_DM_SCSI. Please update
the storage controller to use CONFIG_DM_SCSI before the v2019.07 release.
Failure to update by the deadline may result in board removal.
See doc/driver-model/MIGRATION.txt for more info.
====================================================Signed-off-by: Peng Ma
Reviewed-by: Prabhakar Kushwaha
22 May, 2019
1 commit
-
Distinguish the ecc val by chassis version and move the ecc addr to dts.
Add ls1028a soc support.Signed-off-by: Peng Ma
Reviewed-by: Michal Simek
Reviewed-by: Prabhakar Kushwaha
19 May, 2019
1 commit
-
Also get rid of ahci_setup_port(..).
Signed-off-by: Christian Gmeiner
10 May, 2019
1 commit
-
malloc(..) and memalign(..) are both allocating memory and as a result
we leak the memory allocated with malloc(..).Signed-off-by: Christian Gmeiner
Reviewed-by: Simon Glass
17 Apr, 2019
2 commits
-
- Convert DM_MMC and DM_SCSI
- A20, R40, H6 Linux dts(i) sync
- CLK, RESET support for sunxi, sun8_emac net drivers -
It seems like the Allwinner SATA driver is already quite capable of
using the driver model, so we can force this on all boards and can
remove support for a non-DM_SCSI build.
This removes the warning about boards with SATA ports not being
DM_SCSI compliant.It also takes the opportunity to move the driver out of the board/sunxi
directory to join its siblings in drivers/ata, and to make it a proper
Kconfig citizen.The board defconfigs stay untouched.
Signed-off-by: Andre Przywara
Reviewed-by: Simon Glass
Reviewed-by: Jagan Teki
[jagan: select DM_SCSI separately]
Signed-off-by: Jagan Teki
14 Apr, 2019
2 commits
-
Disable this support for cm_fx6 to avoid breakage.
Signed-off-by: Soeren Moch
-
Do not report negative sector numbers for disks > 1TB, do not limit
sector numbers to 32 bit if CONFIG_SYS_64BIT_LBA is enabled.Signed-off-by: Soeren Moch
12 Apr, 2019
5 commits
-
The kirkwood devices are compatible with this driver.
Signed-off-by: Michael Walle
Reviewed-by: Chris Packham
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese -
Fix the worng include and offset macros.
Signed-off-by: Michael Walle
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese -
This fixes a compile error on kirkwood.
Signed-off-by: Michael Walle
Reviewed-by: Chris Packham
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese -
With board_ahci_enable() implementation for Armada 38x in place we can
now enable 38x support in the ahci_mvebu driver.Signed-off-by: Baruch Siach
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese -
This patch adds DM support to the Armada XP SATA driver. This is needed
to enable CONFIG_BLK on this platform. It adds the SATA controller as
AHCI device, which is strictly speaking not correct, as the controller
is not AHCI compatible. But the U-Boot AHCI uclass interface enables
the usage of this DM driver and the creation of the corresponding BLK
devices.This conversion is done to get rid of the compile warning:
Reviewed-by: Chris Packham===================== WARNING ======================
This board does not use CONFIG_DM_SCSI. Please update
the storage controller to use CONFIG_DM_SCSI before the v2019.07 release.
Failure to update by the deadline may result in board removal.
See doc/driver-model/MIGRATION.txt for more info.
====================================================Signed-off-by: Stefan Roese
Cc: Simon Glass
Cc: Tom Rini
07 Dec, 2018
3 commits
-
Add ahci compatible support for ls2080a soc.
Signed-off-by: Peng Ma
Acked-by: Michal Simek
[YS: add fallthrough comment]
Reviewed-by: York Sun -
Add ahci compatible support for ls1088a soc.
Signed-off-by: Peng Ma
Reviewed-by: Simon Glass
Reviewed-by: York Sun -
Add ahci compatible support for ls1046a soc.
Signed-off-by: Peng Ma
Reviewed-by: York Sun
29 Sep, 2018
1 commit
-
Switch to driver model for eSDHC on Layerscape SoCs including LS1021A,
LS1043A, LS1046A, LS1088A, LS2088A.
Switch to driver model for SATA on LS1021A and LS1043A.
Add support for LS1012AFRWY rev C board.
Enable SMMU for LS1043A.
27 Sep, 2018
2 commits
-
Add ahci compatible support for ls1021a soc.
Signed-off-by: Peng Ma
Acked-by: Michal Simek
Reviewed-by: York Sun -
Add ahci compatible support for ls1043a soc.
Signed-off-by: Peng Ma
Reviewed-by: York Sun
26 Sep, 2018
2 commits
-
When using device model this sort of hardcoded limits aren't used or
necessary.Signed-off-by: Tuomas Tynkkynen
Reviewed-by: Simon Glass -
The loop in ahci_start_ports() is looping over the maximum number of
SCSI devices in the system, which can be larger than the amount of ports
a particular AHCI controller has. The extra looping isn't directly
harmful because the link_port_map bitmap won't have the bit set for a
nonexistent port, but it is wasteful. Replace the loop limit with the
port count of the AHCI controller instead.Signed-off-by: Tuomas Tynkkynen
Reviewed-by: Simon Glass
27 Jul, 2018
1 commit
-
Make the code structure more general so that more socs can be
added easily and also remove speed limitation restriction.
Add the ls1012a sata support as well.Signed-off-by: Tang Yuantian
Reviewed-by: Michal Simek
Tested-by: Michal Simek
(with and without CONFIG_OF_LIVE on zynqmp zcu102)
Reviewed-by: York Sun
29 May, 2018
2 commits
-
Mvebu AHCI is AHCI driver which uses SCSI under the hood.
This patch adjusts AHCI setup to support SCSI by creating
a SCSI device as a child. Since the functions of creating
SCSI device need the kconfig option DM_SCSI, so let
AHCI_MVEBU select DM_SCSI.Signed-off-by: Ken Ma
Reviewed-by: Stefan Roese
Reviewed-by: Simon Glass
Signed-off-by: Stefan Roese -
This workaround was added for A8040/7040 A0.
A8040/7040 A0 is no longer supported so this workaround
can be removed.Signed-off-by: David Sniatkiwicz
Signed-off-by: Ken Ma
Reviewed-by: Stefan Roese
Reviewed-by: Simon Glass
Signed-off-by: Stefan Roese