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)

    Ye Li
     
  • 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)

    Ye Li
     
  • 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)

    Ye Li
     
  • 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)

    Ye Li
     
  • Fix coverity issue CID 3606684: Resource leak (RESOURCE_LEAK)
    leaked_storage: Variable uc_priv going out of scope leaks the storage it points to

    Signed-off-by: Ye Li
    (cherry picked from commit 8f52ef83dbfc9f1c812b2166a7322a16efcbf939)
    (cherry picked from commit f85bac1ba59e9656dc2a45fb1ae3be743ccd1ea3)

    Ye Li
     
  • 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)

    Ye Li
     

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

    Peng Ma
     

08 Jan, 2020

2 commits


03 Dec, 2019

1 commit


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

    Peng Ma
     
  • 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

    Peng Ma
     

31 Oct, 2019

1 commit


11 Oct, 2019

2 commits


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

    Park, Aiden
     

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

    Peng Ma
     

22 May, 2019

1 commit


19 May, 2019

1 commit


10 May, 2019

1 commit


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

    Tom Rini
     
  • 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

    Andre Przywara
     

14 Apr, 2019

2 commits


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

    Michael Walle
     
  • Fix the worng include and offset macros.

    Signed-off-by: Michael Walle
    Reviewed-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Michael Walle
     
  • 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

    Michael Walle
     
  • 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

    Baruch Siach
     
  • 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

    Stefan Roese
     

07 Dec, 2018

3 commits


29 Sep, 2018

1 commit


27 Sep, 2018

2 commits


26 Sep, 2018

2 commits


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

    Yuantian Tang
     

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

    Ken Ma
     
  • 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

    David Sniatkiwicz