[PATCH] arm64: ls1012a: enable DM support for sata

2020-02-14 Thread Peng Ma
Enable related configs to support sata DM feature.

Signed-off-by: Peng Ma 
---
 configs/ls1012a2g5rdb_qspi_defconfig | 1 +
 configs/ls1012a2g5rdb_tfa_defconfig  | 1 +
 configs/ls1012afrdm_qspi_defconfig   | 6 ++
 configs/ls1012afrdm_tfa_defconfig| 6 ++
 configs/ls1012aqds_tfa_SECURE_BOOT_defconfig | 2 ++
 5 files changed, 16 insertions(+)

diff --git a/configs/ls1012a2g5rdb_qspi_defconfig 
b/configs/ls1012a2g5rdb_qspi_defconfig
index b1cf8ef7c5..ae3805ee47 100644
--- a/configs/ls1012a2g5rdb_qspi_defconfig
+++ b/configs/ls1012a2g5rdb_qspi_defconfig
@@ -35,6 +35,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SCSI_AHCI=y
 CONFIG_SATA_CEVA=y
 CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
diff --git a/configs/ls1012a2g5rdb_tfa_defconfig 
b/configs/ls1012a2g5rdb_tfa_defconfig
index a978580952..8e35d0fdfd 100644
--- a/configs/ls1012a2g5rdb_tfa_defconfig
+++ b/configs/ls1012a2g5rdb_tfa_defconfig
@@ -35,6 +35,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SCSI_AHCI=y
 CONFIG_SATA_CEVA=y
 CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
diff --git a/configs/ls1012afrdm_qspi_defconfig 
b/configs/ls1012afrdm_qspi_defconfig
index 11d0cee39a..2aa29deead 100644
--- a/configs/ls1012afrdm_qspi_defconfig
+++ b/configs/ls1012afrdm_qspi_defconfig
@@ -8,6 +8,7 @@ CONFIG_DM_GPIO=y
 CONFIG_FSL_LS_PPA=y
 CONFIG_QSPI_AHB_INIT=y
 CONFIG_NR_DRAM_BANKS=2
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -33,8 +34,11 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_I2C=y
 # CONFIG_MMC is not set
+CONFIG_DM_MMC=y
 CONFIG_MTD=y
 CONFIG_DM_SPI_FLASH=y
 # CONFIG_SPI_FLASH_BAR is not set
@@ -47,6 +51,8 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrdm_tfa_defconfig 
b/configs/ls1012afrdm_tfa_defconfig
index 2818bdf0d2..30deb771f2 100644
--- a/configs/ls1012afrdm_tfa_defconfig
+++ b/configs/ls1012afrdm_tfa_defconfig
@@ -10,6 +10,7 @@ CONFIG_QSPI_AHB_INIT=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -33,8 +34,11 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_I2C=y
 # CONFIG_MMC is not set
+CONFIG_DM_MMC=y
 CONFIG_MTD=y
 CONFIG_DM_SPI_FLASH=y
 # CONFIG_SPI_FLASH_BAR is not set
@@ -47,6 +51,8 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
 CONFIG_DM_RTC=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig 
b/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
index 23dea4ce23..885a6e0bdf 100644
--- a/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012aqds_tfa_SECURE_BOOT_defconfig
@@ -9,6 +9,7 @@ CONFIG_QSPI_AHB_INIT=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -38,6 +39,7 @@ CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_I2C=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
-- 
2.17.1



RE: [EXT] Re: [PATCH 1/3] ata: sata_sil: Continue probing other sata port when failed current port.

2020-01-08 Thread Peng Ma


>-Original Message-
>From: Tom Rini 
>Sent: 2020年1月9日 4:12
>To: Peng Ma 
>Cc: s...@chromium.org; Priyanka Jain ; Marcel
>Ziswiler ; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/3] ata: sata_sil: Continue probing other sata port
>when failed current port.
>
>On Wed, Dec 04, 2019 at 10:36:42AM +, Peng Ma wrote:
>
>> 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 
>
>Applied to u-boot/master, thanks!
>
[Peng Ma] Thanks a lot.

Best Regards,
Peng
>--
>Tom


RE: [EXT] Re: [PATCH 2/3] ata: fsl_sata: Continue probing other sata port when failed current port.

2019-12-29 Thread Peng Ma
Hi Simon,

>-Original Message-
>From: Simon Glass 
>Sent: 2019年12月28日 10:27
>To: Peng Ma 
>Cc: Priyanka Jain ; Marcel Ziswiler
>; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 2/3] ata: fsl_sata: Continue probing other sata port
>when failed current port.
>
>Caution: EXT Email
>
>Hi Peng,
>
>On Wed, 4 Dec 2019 at 03:36, Peng Ma  wrote:
>>
>>  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 
>> ---
>>  drivers/ata/fsl_sata.c | 58
>> +-----
>>  1 file changed, 51 insertions(+), 7 deletions(-)
>
>Why does this remove/unbind?
>
[Peng Ma] Can I understand that it is the same as patch1?
If not please give me more informations.
Thanks.

Best Regards,
Peng
>Regards,
>Simon


RE: [EXT] Re: [PATCH 1/3] ata: sata_sil: Continue probing other sata port when failed current port.

2019-12-29 Thread Peng Ma
Hi Simon,

I am very sorry to reply late, Please see comments inline.

Best Regards,
Peng
>-Original Message-
>From: Simon Glass 
>Sent: 2019年12月28日 10:27
>To: Peng Ma 
>Cc: Priyanka Jain ; Marcel Ziswiler
>; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/3] ata: sata_sil: Continue probing other sata port
>when failed current port.
>
>Caution: EXT Email
>
>Hi Peng,
>
>On Wed, 4 Dec 2019 at 03:36, Peng Ma  wrote:
>>
>>  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 
>> ---
>>  drivers/ata/sata_sil.c | 60
>> +++---
>>  1 file changed, 56 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c index
>> d06d7a079d..bbba98f9a6 100644
>> --- a/drivers/ata/sata_sil.c
>> +++ b/drivers/ata/sata_sil.c
>> @@ -19,6 +19,7 @@
>>  #if CONFIG_IS_ENABLED(BLK)
>>  #include 
>>  #include 
>> +#include 
>>  #endif
>>
>>  #include "sata_sil.h"
>> @@ -762,15 +763,33 @@ U_BOOT_DRIVER(sata_sil_driver) = {
>> .platdata_auto_alloc_size = sizeof(struct sil_sata_priv),  };
>>
>> +static int (struct udevice *dev)
>> +{
>> +   int ret;
>> +
>> +   ret = device_remove(dev, DM_REMOVE_NORMAL);
>> +   if (ret)
>> +   return ret;
>> +
>> +   ret = device_unbind(dev);
>
>Why are you unbinding the devices? I don't think this is needed.
[Peng Ma] Before sil_init_sata function failed the function blk_create_devicef 
have already be called,
In the blk_create_devicef function it would be bound the silicon sata to block 
device, So we should unbind
this device here once the function sil_init_sata return failed.
>
>> +   if (ret)
>> +   return ret;
>> +
>> +   return 0;
>> +}
>> +
>>  static int sil_pci_probe(struct udevice *dev)  {
>> struct udevice *blk;
>> +   int failed_number;
>> char sata_name[10];
>> pci_dev_t devno;
>> u16 word;
>> int ret;
>> int i;
>>
>> +   failed_number = 0;
>> +
>> /* Get PCI device number */
>> devno = dm_pci_get_bdf(dev);
>> if (devno == -1)
>> @@ -823,12 +842,44 @@ static int sil_pci_probe(struct udevice *dev)
>> }
>>
>> ret = sil_init_sata(blk, i);
>> -   if (ret)
>> -   return -ENODEV;
>> +   if (ret) {
>> +   ret = sil_unbind_device(blk);
>> +   if (ret)
>> +   return ret;
>> +
>> +   failed_number++;
>> +   continue;
>> +   }
>>
>> ret = scan_sata(blk, i);
>> -   if (ret)
>> -   return -ENODEV;
>> +   if (ret) {
>> +   ret = sil_unbind_device(blk);
>> +   if (ret)
>> +   return ret;
>> +
>> +   failed_number++;
>> +   continue;
>> +   }
>> +   }
>> +
>> +   if (failed_number == sata_info.maxport)
>> +   return -ENODEV;
>> +   else
>> +   return 0;
>> +}
>> +
>> +static int sil_pci_remove(struct udevice *dev) {
>> +   int i;
>> +   struct sil_sata *sata;
>> +   struct sil_sata_priv *priv;
>> +
>> +   priv = dev_get_priv(dev);
>> +
>> +   for (i = sata_info.portbase; i < sata_info.maxport; i++) {
>> +   sata = priv->sil_sata_desc[i];
>> +   if (sata)
>> +   free(sata);
>> }
>>
>> return 0;
>> @@ -856,6 +907,7 @@ U_BOOT_DRIVER(sil_ahci_pci) = {
>> .of_match = sil_pci_ids,
>> .ops = _sil_ops,
>> .probe = sil_pci_probe,
>> +   .remove = sil_pci_remove,
>> .priv_auto_alloc_size = sizeof(struct sil_sata_priv),  };
>>
>> --
>> 2.17.1
>>
>
>Regards,
>Simon


RE: [EXT] Re: [PATCH 3/3] cmd: sata: Add block unbind device function

2019-12-29 Thread Peng Ma
Hi Simon,

>-Original Message-
>From: Simon Glass 
>Sent: 2019年12月28日 10:27
>To: Peng Ma 
>Cc: Priyanka Jain ; Marcel Ziswiler
>; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 3/3] cmd: sata: Add block unbind device function
>
>Caution: EXT Email
>
>On Wed, 4 Dec 2019 at 03:36, Peng Ma  wrote:
>>
>> If we didn't unbind the sata from block device, the same devices would
>> be added after sata remove, This patch is to resolve this issue as
>> below:
>>
>> => sata info
>> SATA#0:
>> (3.0 Gbps)
>> SATA#1:
>> (3.0 Gbps)
>> Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#:
>BTPR247005PY30
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device
>> 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX30
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) =>
>sata
>> stop => sata info
>> SATA#0:
>> (3.0 Gbps)
>> SATA#1:
>> (3.0 Gbps)
>> Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#:
>BTPR247005PY300
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device
>> 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#:
>BTPR247005VX300
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device
>> 2: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#:
>BTPR247005PY300
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device
>> 3: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#:
>BTPR247005VX300
>> Type: Hard Disk
>> Supports 48-bit addressing
>> Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
>>
>> Signed-off-by: Peng Ma 
>> ---
>>  cmd/sata.c | 2 ++
>>  1 file changed, 2 insertions(+)
>
>Reviewed-by: Simon Glass 
[Peng Ma] thanks very much.

Best Regards,
Peng


[v4 4/4] arch: powerpc: Rewrite the sata node to fit the driver

2019-12-23 Thread Peng Ma
The sata of our powerpc platforms are updated. These changes is to
fit the driver probe.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v4
- no changes

 arch/powerpc/dts/t2080.dtsi | 15 ---
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/arch/powerpc/dts/t2080.dtsi b/arch/powerpc/dts/t2080.dtsi
index 999fa8cec4..458019ae92 100644
--- a/arch/powerpc/dts/t2080.dtsi
+++ b/arch/powerpc/dts/t2080.dtsi
@@ -88,20 +88,13 @@
phy_type = "utmi";
};
 
-   sata0: sata@22 {
+   sata: sata@22 {
compatible = "fsl,pq-sata-v2";
reg = <0x22 0x1000>;
interrupts = <68 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
-   };
-
-   sata1: sata@221000 {
-   compatible = "fsl,pq-sata-v2";
-   reg = <0x221000 0x1000>;
-   interrupts = <69 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
};
};
 
-- 
2.17.1



[v4 3/4] Revert "configs: enable sata device module in T2080QDS"

2019-12-23 Thread Peng Ma
This reverts commit 02dc1599ba0b16eb21ba0c206e5b6f38fe7b67a7

Commit 02dc1599ba0b ("configs: enable sata, eSDHC, USB device module in
T2080QDS")

has some sata defconfig changes to fit support DM mode, Now the driver
will be reverted, So revert it.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v4
- no changes

 configs/T2080QDS_NAND_defconfig   | 4 
 configs/T2080QDS_SDCARD_defconfig | 4 
 configs/T2080QDS_SECURE_BOOT_defconfig| 4 +---
 configs/T2080QDS_SPIFLASH_defconfig   | 4 
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 4 
 configs/T2080QDS_defconfig| 4 
 6 files changed, 1 insertion(+), 23 deletions(-)

diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 3c467bea9c..656f4dd447 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -9,7 +9,6 @@ CONFIG_ENV_OFFSET=0x14
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_SYS_CUSTOM_LDSCRIPT=y
 CONFIG_SYS_LDSCRIPT="arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"
@@ -47,7 +46,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -73,8 +71,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NAND=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SDCARD_defconfig 
b/configs/T2080QDS_SDCARD_defconfig
index 9126d5a18b..bee3729558 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -10,7 +10,6 @@ CONFIG_ENV_OFFSET=0x10
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -45,7 +44,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -70,8 +68,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_MMC=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig 
b/configs/T2080QDS_SECURE_BOOT_defconfig
index 5c24fb9c85..8e631ad564 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -57,8 +56,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NOR=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
@@ -68,3 +65,4 @@ CONFIG_USB_STORAGE=y
 CONFIG_RSA=y
 CONFIG_SPL_RSA=y
 CONFIG_RSA_SOFTWARE_EXP=y
+-CONFIG_FSL_AHCI=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig 
b/configs/T2080QDS_SPIFLASH_defconfig
index 824dc810d0..7778062f81 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -12,7 +12,6 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -48,7 +47,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_ENV_ADDR=0xFFFC9000
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -73,8 +71,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_SPIFLASH=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig 
b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index 0c510301a6..a6c3215c78 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -4,7 +4,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -30,7 +29,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_ENV_ADDR=0xFFE2
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -50,8 +48,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_REMOTE=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index af7c13c8fa..18d0a50ee0 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SECT_SIZE=0x2
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T

[v4 1/4] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-12-23 Thread Peng Ma
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.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v4
- merge patch1 and patch5 to patch1

 drivers/ata/Kconfig|   10 -
 drivers/ata/Makefile   |1 -
 drivers/ata/fsl_ahci.c | 1031 
 3 files changed, 1042 deletions(-)
 delete mode 100644 drivers/ata/fsl_ahci.c

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index fe589d3aa8..d8c9756c2a 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -59,16 +59,6 @@ config DWC_AHCI
  Enable this driver to support Sata devices through
  Synopsys DWC AHCI module.
 
-config FSL_AHCI
-   bool "Enable Freescale AHCI driver support"
-   select SCSI_AHCI
-   depends on AHCI
-   depends on DM_SCSI
-   help
- Enable this driver to support Sata devices found in
- some Freescale PowerPC SoCs.
-
-
 config DWC_AHSATA
bool "Enable DWC AHSATA driver support"
select LIBATA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 6e03384f81..a69edb10f7 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -4,7 +4,6 @@
 # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
 
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
-obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
deleted file mode 100644
index 4ccfe23593..00
--- a/drivers/ata/fsl_ahci.c
+++ /dev/null
@@ -1,1031 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * NXP PPC SATA platform driver
- *
- * (C) Copyright 2019 NXP, Inc.
- *
- */
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include "fsl_sata.h"
-
-struct fsl_ahci_priv {
-   u32 base;
-   u32 flag;
-   u32 number;
-   fsl_sata_t *fsl_sata;
-};
-
-static int fsl_ahci_bind(struct udevice *dev)
-{
-   return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
-}
-
-static int fsl_ahci_ofdata_to_platdata(struct udevice *dev)
-{
-   struct fsl_ahci_priv *priv = dev_get_priv(dev);
-
-   priv->number = dev_read_u32_default(dev, "sata-number", -1);
-   priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
-
-   priv->base = dev_read_addr(dev);
-   if (priv->base == FDT_ADDR_T_NONE)
-   return -EINVAL;
-
-   return 0;
-}
-
-static int ata_wait_register(unsigned __iomem *addr, u32 mask,
-u32 val, u32 timeout_msec)
-{
-   int i;
-
-   for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
-   mdelay(1);
-
-   return (i < timeout_msec) ? 0 : -1;
-}
-
-static void fsl_sata_dump_sfis(struct sata_fis_d2h *s)
-{
-   printf("Status FIS dump:\n\r");
-   printf("fis_type:   %02x\n\r", s->fis_type);
-   printf("pm_port_i:  %02x\n\r", s->pm_port_i);
-   printf("status: %02x\n\r", s->status);
-   printf("error:  %02x\n\r", s->error);
-   printf("lba_low:%02x\n\r", s->lba_low);
-   printf("lba_mid:%02x\n\r", s->lba_mid);
-   printf("lba_high:   %02x\n\r", s->lba_high);
-   printf("device: %02x\n\r", s->device);
-   printf("lba_low_exp:%02x\n\r", s->lba_low_exp);
-   printf("lba_mid_exp:%02x\n\r", s->lba_mid_exp);
-   printf("lba_high_exp:   %02x\n\r", s->lba_high_exp);
-   printf("res1:   %02x\n\r", s->res1);
-   printf("sector_count:   %02x\n\r", s->sector_count);
-   printf("sector_count_exp:   %02x\n\r", s->sector_count_exp);
-}
-
-static void fsl_sata_dump_regs(fsl_sata_reg_t __iomem *reg)
-{
-   printf("\n\rSATA:   %08x\n\r", (u32)reg);
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("CAR:%08x\n\r", in_le32(>car));
-   printf("CCR:%08x\n\r", in_le32(>ccr));
-   printf("CER:%08x\n\r", in_le32(>cer));
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("DER:

[v4 2/4] Revert "powerpc: mpc85xx: delete FSL_SATA for T2080QDS board."

2019-12-23 Thread Peng Ma
This reverts commit 856b9cdb53f0e6c8d98f81cf71ef363c16b0aa0e.

Commit 856b9cdb53f0 ("powerpc: mpc85xx: delete FSL_SATA for T2080QDS
board.") is to fit support sata DM mode, Now the driver will be reverted,
So revert it.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v4
- no changes

 arch/powerpc/cpu/mpc85xx/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 8cc82f80b4..6fc6ea8fef 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -352,6 +352,7 @@ config TARGET_T2080QDS
select PHYS_64BIT
select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
select FSL_DDR_INTERACTIVE
+   imply CMD_SATA
 
 config TARGET_T2080RDB
bool "Support T2080RDB"
@@ -360,7 +361,6 @@ config TARGET_T2080RDB
select SUPPORT_SPL
select PHYS_64BIT
imply CMD_SATA
-   imply FSL_SATA
imply PANIC_HANG
 
 config TARGET_T2081QDS
@@ -1099,8 +1099,10 @@ config ARCH_T2080
select SYS_FSL_SEC_COMPAT_4
select SYS_PPC64
select FSL_IFC
+   imply CMD_SATA
imply CMD_NAND
imply CMD_REGINFO
+   imply FSL_SATA
 
 config ARCH_T2081
bool
-- 
2.17.1



[v3 5/5] ata: fsl_sata: Update fsl sata header file

2019-12-17 Thread Peng Ma
The variable(dma_flag) will be used by both fsl_ahci.c and fsl_sata.c,
Now we support the fsl_sata.c to DM mode and revert fsl_ahci.c(This
variable declare here). So we should Add this change.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v3:
- make rebase.
- add Reviewed-by.

 drivers/ata/fsl_sata.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/ata/fsl_sata.h b/drivers/ata/fsl_sata.h
index 882803c8cd..5b9daa79e0 100644
--- a/drivers/ata/fsl_sata.h
+++ b/drivers/ata/fsl_sata.h
@@ -313,6 +313,7 @@ typedef struct fsl_sata {
int wcache;
int flush;
int flush_ext;
+   u32 dma_flag;
 } fsl_sata_t;
 
 #define READ_CMD   0
-- 
2.17.1



[v3 4/5] arch: powerpc: Rewrite the sata node to fit the driver

2019-12-17 Thread Peng Ma
The sata of our powerpc platforms are updated. These changes is to
fit the driver probe.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v3:
- make rebase.
- add Reviewed-by.

 arch/powerpc/dts/t2080.dtsi | 15 ---
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/arch/powerpc/dts/t2080.dtsi b/arch/powerpc/dts/t2080.dtsi
index 999fa8cec4..458019ae92 100644
--- a/arch/powerpc/dts/t2080.dtsi
+++ b/arch/powerpc/dts/t2080.dtsi
@@ -88,20 +88,13 @@
phy_type = "utmi";
};
 
-   sata0: sata@22 {
+   sata: sata@22 {
compatible = "fsl,pq-sata-v2";
reg = <0x22 0x1000>;
interrupts = <68 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
-   };
-
-   sata1: sata@221000 {
-   compatible = "fsl,pq-sata-v2";
-   reg = <0x221000 0x1000>;
-   interrupts = <69 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
};
};
 
-- 
2.17.1



[v3 3/5] Revert "configs: enable sata device module in T2080QDS"

2019-12-17 Thread Peng Ma
This reverts commit 02dc1599ba0b16eb21ba0c206e5b6f38fe7b67a7

Commit 02dc1599ba0b ("configs: enable sata, eSDHC, USB device module in
T2080QDS")

has some sata defconfig changes to fit support DM mode, Now the driver
will be reverted, So revert it.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v3:
- make rebase.
- add Reviewed-by.

 configs/T2080QDS_NAND_defconfig   | 4 
 configs/T2080QDS_SDCARD_defconfig | 4 
 configs/T2080QDS_SECURE_BOOT_defconfig| 4 +---
 configs/T2080QDS_SPIFLASH_defconfig   | 4 
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 4 
 configs/T2080QDS_defconfig| 4 
 6 files changed, 1 insertion(+), 23 deletions(-)

diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 3c467bea9c..656f4dd447 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -9,7 +9,6 @@ CONFIG_ENV_OFFSET=0x14
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_SYS_CUSTOM_LDSCRIPT=y
 CONFIG_SYS_LDSCRIPT="arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"
@@ -47,7 +46,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -73,8 +71,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NAND=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SDCARD_defconfig 
b/configs/T2080QDS_SDCARD_defconfig
index 9126d5a18b..bee3729558 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -10,7 +10,6 @@ CONFIG_ENV_OFFSET=0x10
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -45,7 +44,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -70,8 +68,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_MMC=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig 
b/configs/T2080QDS_SECURE_BOOT_defconfig
index 5c24fb9c85..8e631ad564 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -57,8 +56,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NOR=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
@@ -68,3 +65,4 @@ CONFIG_USB_STORAGE=y
 CONFIG_RSA=y
 CONFIG_SPL_RSA=y
 CONFIG_RSA_SOFTWARE_EXP=y
+-CONFIG_FSL_AHCI=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig 
b/configs/T2080QDS_SPIFLASH_defconfig
index 824dc810d0..7778062f81 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -12,7 +12,6 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -48,7 +47,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_ENV_ADDR=0xFFFC9000
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -73,8 +71,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_SPIFLASH=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig 
b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index 0c510301a6..a6c3215c78 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -4,7 +4,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -30,7 +29,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_ENV_ADDR=0xFFE2
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -50,8 +48,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_REMOTE=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index af7c13c8fa..18d0a50ee0 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_S

[v3 1/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-12-17 Thread Peng Ma
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.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v3:
- make rebase.
- add Reviewed-by.

 drivers/ata/Kconfig|   10 -
 drivers/ata/Makefile   |1 -
 drivers/ata/fsl_ahci.c | 1031 
 drivers/ata/fsl_sata.h |1 -
 4 files changed, 1043 deletions(-)
 delete mode 100644 drivers/ata/fsl_ahci.c

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index fe589d3aa8..d8c9756c2a 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -59,16 +59,6 @@ config DWC_AHCI
  Enable this driver to support Sata devices through
  Synopsys DWC AHCI module.
 
-config FSL_AHCI
-   bool "Enable Freescale AHCI driver support"
-   select SCSI_AHCI
-   depends on AHCI
-   depends on DM_SCSI
-   help
- Enable this driver to support Sata devices found in
- some Freescale PowerPC SoCs.
-
-
 config DWC_AHSATA
bool "Enable DWC AHSATA driver support"
select LIBATA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 6e03384f81..a69edb10f7 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -4,7 +4,6 @@
 # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
 
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
-obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
deleted file mode 100644
index 4ccfe23593..00
--- a/drivers/ata/fsl_ahci.c
+++ /dev/null
@@ -1,1031 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * NXP PPC SATA platform driver
- *
- * (C) Copyright 2019 NXP, Inc.
- *
- */
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include "fsl_sata.h"
-
-struct fsl_ahci_priv {
-   u32 base;
-   u32 flag;
-   u32 number;
-   fsl_sata_t *fsl_sata;
-};
-
-static int fsl_ahci_bind(struct udevice *dev)
-{
-   return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
-}
-
-static int fsl_ahci_ofdata_to_platdata(struct udevice *dev)
-{
-   struct fsl_ahci_priv *priv = dev_get_priv(dev);
-
-   priv->number = dev_read_u32_default(dev, "sata-number", -1);
-   priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
-
-   priv->base = dev_read_addr(dev);
-   if (priv->base == FDT_ADDR_T_NONE)
-   return -EINVAL;
-
-   return 0;
-}
-
-static int ata_wait_register(unsigned __iomem *addr, u32 mask,
-u32 val, u32 timeout_msec)
-{
-   int i;
-
-   for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
-   mdelay(1);
-
-   return (i < timeout_msec) ? 0 : -1;
-}
-
-static void fsl_sata_dump_sfis(struct sata_fis_d2h *s)
-{
-   printf("Status FIS dump:\n\r");
-   printf("fis_type:   %02x\n\r", s->fis_type);
-   printf("pm_port_i:  %02x\n\r", s->pm_port_i);
-   printf("status: %02x\n\r", s->status);
-   printf("error:  %02x\n\r", s->error);
-   printf("lba_low:%02x\n\r", s->lba_low);
-   printf("lba_mid:%02x\n\r", s->lba_mid);
-   printf("lba_high:   %02x\n\r", s->lba_high);
-   printf("device: %02x\n\r", s->device);
-   printf("lba_low_exp:%02x\n\r", s->lba_low_exp);
-   printf("lba_mid_exp:%02x\n\r", s->lba_mid_exp);
-   printf("lba_high_exp:   %02x\n\r", s->lba_high_exp);
-   printf("res1:   %02x\n\r", s->res1);
-   printf("sector_count:   %02x\n\r", s->sector_count);
-   printf("sector_count_exp:   %02x\n\r", s->sector_count_exp);
-}
-
-static void fsl_sata_dump_regs(fsl_sata_reg_t __iomem *reg)
-{
-   printf("\n\rSATA:   %08x\n\r", (u32)reg);
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("CAR:%08x\n\r", in_le32(>car));
-   printf("CCR:%08x\n\r", in_le32(>ccr));
-   printf("CER:%08x\n\r", in_le32(>cer));
-   printf("CQR:%08x\n\r", in_l

[v3 2/5] Revert "powerpc: mpc85xx: delete FSL_SATA for T2080QDS board."

2019-12-17 Thread Peng Ma
This reverts commit 856b9cdb53f0e6c8d98f81cf71ef363c16b0aa0e.

Commit 856b9cdb53f0 ("powerpc: mpc85xx: delete FSL_SATA for T2080QDS
board.") is to fit support sata DM mode, Now the driver will be reverted,
So revert it.

Reviewed-by: Stefan Roese 
Signed-off-by: Peng Ma 
---
Changed for v3:
- make rebase.
- add Reviewed-by.

 arch/powerpc/cpu/mpc85xx/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 8cc82f80b4..6fc6ea8fef 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -352,6 +352,7 @@ config TARGET_T2080QDS
select PHYS_64BIT
select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
select FSL_DDR_INTERACTIVE
+   imply CMD_SATA
 
 config TARGET_T2080RDB
bool "Support T2080RDB"
@@ -360,7 +361,6 @@ config TARGET_T2080RDB
select SUPPORT_SPL
select PHYS_64BIT
imply CMD_SATA
-   imply FSL_SATA
imply PANIC_HANG
 
 config TARGET_T2081QDS
@@ -1099,8 +1099,10 @@ config ARCH_T2080
select SYS_FSL_SEC_COMPAT_4
select SYS_PPC64
select FSL_IFC
+   imply CMD_SATA
imply CMD_NAND
imply CMD_REGINFO
+   imply FSL_SATA
 
 config ARCH_T2081
bool
-- 
2.17.1



[PATCH 3/3] cmd: sata: Add block unbind device function

2019-12-04 Thread Peng Ma
If we didn't unbind the sata from block device, the same devices would
be added after sata remove,
This patch is to resolve this issue as below:

=> sata info
SATA#0:
(3.0 Gbps)
SATA#1:
(3.0 Gbps)
Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY30
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
Device 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX30
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
=> sata stop
=> sata info
SATA#0:
(3.0 Gbps)
SATA#1:
(3.0 Gbps)
Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY300
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
Device 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX300
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
Device 2: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY300
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)
Device 3: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX300
Type: Hard Disk
Supports 48-bit addressing
Capacity: 286168.1 MB = 279.4 GB (586072368 x 512)

Signed-off-by: Peng Ma 
---
 cmd/sata.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/cmd/sata.c b/cmd/sata.c
index a73cc54bd3..6bdb516cb5 100644
--- a/cmd/sata.c
+++ b/cmd/sata.c
@@ -26,6 +26,8 @@ int sata_remove(int devnum)
struct udevice *dev;
int rc;
 
+   blk_unbind_all(IF_TYPE_SATA);
+
rc = uclass_find_device(UCLASS_AHCI, devnum, );
if (!rc && !dev)
rc = uclass_find_first_device(UCLASS_AHCI, );
-- 
2.17.1



[PATCH 2/3] ata: fsl_sata: Continue probing other sata port when failed current port.

2019-12-04 Thread 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 
---
 drivers/ata/fsl_sata.c | 58 +-
 1 file changed, 51 insertions(+), 7 deletions(-)

diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index 3261c10f91..3d25101ff2 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -21,6 +21,7 @@
 #include 
 #include 
 #include 
+#include 
 #else
 #ifndef CONFIG_SYS_SATA1_FLAGS
#define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
@@ -121,7 +122,7 @@ static int init_sata(struct fsl_ata_priv *priv, int dev)
/* Zero all of the device driver struct */
memset((void *)sata, 0, sizeof(fsl_sata_t));
 
-   snprintf(sata->name, 12, "SATA%d:\n", dev);
+   snprintf(sata->name, 12, "SATA%d:", dev);
 
/* Set the controller register base address to device struct */
 #if !CONFIG_IS_ENABLED(BLK)
@@ -232,10 +233,7 @@ static int init_sata(struct fsl_ata_priv *priv, int dev)
mdelay(100);
 
/* print sata device name */
-   if (!dev)
-   printf("%s ", sata->name);
-   else
-   printf("   %s ", sata->name);
+   printf("%s ", sata->name);
 
/* Wait PHY RDY signal changed for 500ms */
ata_wait_register(>hstatus, HSTATUS_PHY_RDY,
@@ -916,15 +914,32 @@ static int fsl_ata_ofdata_to_platdata(struct udevice *dev)
return 0;
 }
 
+static int fsl_unbind_device(struct udevice *dev)
+{
+   int ret;
+
+   ret = device_remove(dev, DM_REMOVE_NORMAL);
+   if (ret)
+   return ret;
+
+   ret = device_unbind(dev);
+   if (ret)
+   return ret;
+
+   return 0;
+}
+
 static int fsl_ata_probe(struct udevice *dev)
 {
struct fsl_ata_priv *blk_priv, *priv;
struct udevice *blk;
+   int failed_number;
char sata_name[10];
int nr_ports;
int ret;
int i;
 
+   failed_number = 0;
priv = dev_get_priv(dev);
nr_ports = priv->number;
nr_ports = min(nr_ports, CONFIG_SYS_SATA_MAX_DEVICE);
@@ -942,7 +957,12 @@ static int fsl_ata_probe(struct udevice *dev)
ret = init_sata(priv, i);
if (ret) {
debug("%s: Failed to init sata\n", __func__);
-   return ret;
+   ret = fsl_unbind_device(blk);
+   if (ret)
+   return ret;
+
+   failed_number++;
+   continue;
}
 
blk_priv = dev_get_platdata(blk);
@@ -951,10 +971,33 @@ static int fsl_ata_probe(struct udevice *dev)
ret = scan_sata(blk);
if (ret) {
debug("%s: Failed to scan bus\n", __func__);
-   return ret;
+   ret = fsl_unbind_device(blk);
+   if (ret)
+   return ret;
+
+   failed_number++;
+   continue;
}
}
 
+   if (failed_number == nr_ports)
+   return -ENODEV;
+   else
+   return 0;
+}
+
+static int fsl_ata_remove(struct udevice *dev)
+{
+   fsl_sata_t *sata;
+   struct fsl_ata_priv *priv;
+
+   priv = dev_get_priv(dev);
+   sata = priv->fsl_sata;
+
+   free(sata->cmd_hdr_tbl_offset);
+   free(sata->cmd_desc_offset);
+   free(sata);
+
return 0;
 }
 
@@ -981,6 +1024,7 @@ U_BOOT_DRIVER(fsl_ahci) = {
.ops = _fsl_ahci_ops,
.ofdata_to_platdata = fsl_ata_ofdata_to_platdata,
.probe  = fsl_ata_probe,
+   .remove = fsl_ata_remove,
.priv_auto_alloc_size = sizeof(struct fsl_ata_priv),
 };
 #endif
-- 
2.17.1



[PATCH 1/3] ata: sata_sil: Continue probing other sata port when failed current port.

2019-12-04 Thread 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 
---
 drivers/ata/sata_sil.c | 60 +++---
 1 file changed, 56 insertions(+), 4 deletions(-)

diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index d06d7a079d..bbba98f9a6 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -19,6 +19,7 @@
 #if CONFIG_IS_ENABLED(BLK)
 #include 
 #include 
+#include 
 #endif
 
 #include "sata_sil.h"
@@ -762,15 +763,33 @@ U_BOOT_DRIVER(sata_sil_driver) = {
.platdata_auto_alloc_size = sizeof(struct sil_sata_priv),
 };
 
+static int sil_unbind_device(struct udevice *dev)
+{
+   int ret;
+
+   ret = device_remove(dev, DM_REMOVE_NORMAL);
+   if (ret)
+   return ret;
+
+   ret = device_unbind(dev);
+   if (ret)
+   return ret;
+
+   return 0;
+}
+
 static int sil_pci_probe(struct udevice *dev)
 {
struct udevice *blk;
+   int failed_number;
char sata_name[10];
pci_dev_t devno;
u16 word;
int ret;
int i;
 
+   failed_number = 0;
+
/* Get PCI device number */
devno = dm_pci_get_bdf(dev);
if (devno == -1)
@@ -823,12 +842,44 @@ static int sil_pci_probe(struct udevice *dev)
}
 
ret = sil_init_sata(blk, i);
-   if (ret)
-   return -ENODEV;
+   if (ret) {
+   ret = sil_unbind_device(blk);
+   if (ret)
+   return ret;
+
+   failed_number++;
+   continue;
+   }
 
ret = scan_sata(blk, i);
-   if (ret)
-   return -ENODEV;
+   if (ret) {
+   ret = sil_unbind_device(blk);
+   if (ret)
+   return ret;
+
+   failed_number++;
+   continue;
+   }
+   }
+
+   if (failed_number == sata_info.maxport)
+   return -ENODEV;
+   else
+   return 0;
+}
+
+static int sil_pci_remove(struct udevice *dev)
+{
+   int i;
+   struct sil_sata *sata;
+   struct sil_sata_priv *priv;
+
+   priv = dev_get_priv(dev);
+
+   for (i = sata_info.portbase; i < sata_info.maxport; i++) {
+   sata = priv->sil_sata_desc[i];
+   if (sata)
+   free(sata);
}
 
return 0;
@@ -856,6 +907,7 @@ U_BOOT_DRIVER(sil_ahci_pci) = {
.of_match = sil_pci_ids,
.ops = _sil_ops,
.probe = sil_pci_probe,
+   .remove = sil_pci_remove,
.priv_auto_alloc_size = sizeof(struct sil_sata_priv),
 };
 
-- 
2.17.1



Re: [U-Boot] [EXT] Re: [v2 1/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-12-02 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年12月2日 15:59
>To: Peng Ma ; Priyanka Jain ;
>w...@denx.de; Ruchika Gupta ; Shengzhou Liu
>
>Cc: Yinbo Zhu ; Z.q. Hou ;
>s...@chromium.org; ja...@openedev.com; andre.przyw...@arm.com;
>sm...@web.de; Andy Tang ; u-boot@lists.denx.de
>Subject: [EXT] Re: [v2 1/5] Revert "ata: fsl_ahci: Add sata DM support for
>Freescale powerpc socs"
>
>Caution: EXT Email
>
>Hi Peng,
>
>On 02.12.19 04:40, Peng Ma wrote:
>> 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 
>> ---
>> Changed for v2:
>>   - Add detailed explanation.
>
>Thanks for adding a more detailed decription here. But at first glance I still
>failed to unterstand this. What's missing is (at least for me), that you 
>explain
>that you added a new DM enabled SATA driver to support this controller [1]
>which makes this AHCI driver superfluous.
>
>Is this explanation correct?
>
>If yes, then feel free to add my:
>
>Reviewed-by: Stefan Roese 
>
>to the complete patchset.
>
Hi, Stefan,

Thanks for your quick comments, You understand exactly right.

Best Regards,
Peng
>Thanks,
>Stefan
>
>[1] drivers/ata/fsl_sata.c
>
>>   drivers/ata/Kconfig|   10 -
>>   drivers/ata/Makefile   |1 -
>>   drivers/ata/fsl_ahci.c | 1030 
>>   drivers/ata/fsl_sata.h |1 -
>>   4 files changed, 1042 deletions(-)
>>   delete mode 100644 drivers/ata/fsl_ahci.c
>>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> fe589d3aa8..d8c9756c2a 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -59,16 +59,6 @@ config DWC_AHCI
>> Enable this driver to support Sata devices through
>> Synopsys DWC AHCI module.
>>
>> -config FSL_AHCI
>> - bool "Enable Freescale AHCI driver support"
>> - select SCSI_AHCI
>> - depends on AHCI
>> - depends on DM_SCSI
>> - help
>> -   Enable this driver to support Sata devices found in
>> -   some Freescale PowerPC SoCs.
>> -
>> -
>>   config DWC_AHSATA
>>   bool "Enable DWC AHSATA driver support"
>>   select LIBATA
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index
>> 6e03384f81..a69edb10f7 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -4,7 +4,6 @@
>>   # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
>>
>>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>> -obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
>>   obj-$(CONFIG_AHCI) += ahci-uclass.o
>>   obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
>>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>> diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c deleted
>> file mode 100644 index d04cff3ee7..00
>> --- a/drivers/ata/fsl_ahci.c
>> +++ /dev/null
>> @@ -1,1030 +0,0 @@
>> -// SPDX-License-Identifier: GPL-2.0+
>> -/*
>> - * NXP PPC SATA platform driver
>> - *
>> - * (C) Copyright 2019 NXP, Inc.
>> - *
>> - */
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -
>> -#include "fsl_sata.h"
>> -
>> -struct fsl_ahci_priv {
>> - u32 base;
>> - u32 flag;
>> - u32 number;
>> - fsl_sata_t *fsl_sata;
>> -};
>> -
>> -static int fsl_ahci_bind(struct udevice *dev) -{
>> - return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
>> -}
>> -
>> -static int fsl_ahci_ofdata_to_platdata(struct udevice *dev) -{
>> - struct fsl_ahci_priv *priv = dev_get_priv(dev);
>> -
>> - priv->number = dev_read_u32_default(dev, "sata-number", -1);
>> - priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
>> -
>> - priv->base = dev_read_addr(dev);
>> - if (priv->base == FDT_ADDR_T_NONE)
>> - return -EINVAL;
>> -
>> - return 0;
>> -}
>> -
>> -static int ata_wait_register(unsigned __

[U-Boot] [v2 2/5] Revert "powerpc: mpc85xx: delete FSL_SATA for T2080QDS board."

2019-12-01 Thread Peng Ma
This reverts commit 856b9cdb53f0e6c8d98f81cf71ef363c16b0aa0e.

Commit 856b9cdb53f0 ("powerpc: mpc85xx: delete FSL_SATA for T2080QDS
board.") is to fit support sata DM mode, Now the driver will be reverted,
So revert it.

Signed-off-by: Peng Ma 
---
Changed for v2:
- Add detailed explanation.

 arch/powerpc/cpu/mpc85xx/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 8cc82f80b4..6fc6ea8fef 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -352,6 +352,7 @@ config TARGET_T2080QDS
select PHYS_64BIT
select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
select FSL_DDR_INTERACTIVE
+   imply CMD_SATA
 
 config TARGET_T2080RDB
bool "Support T2080RDB"
@@ -360,7 +361,6 @@ config TARGET_T2080RDB
select SUPPORT_SPL
select PHYS_64BIT
imply CMD_SATA
-   imply FSL_SATA
imply PANIC_HANG
 
 config TARGET_T2081QDS
@@ -1099,8 +1099,10 @@ config ARCH_T2080
select SYS_FSL_SEC_COMPAT_4
select SYS_PPC64
select FSL_IFC
+   imply CMD_SATA
imply CMD_NAND
imply CMD_REGINFO
+   imply FSL_SATA
 
 config ARCH_T2081
bool
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 1/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-12-01 Thread Peng Ma
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 
---
Changed for v2:
- Add detailed explanation.

 drivers/ata/Kconfig|   10 -
 drivers/ata/Makefile   |1 -
 drivers/ata/fsl_ahci.c | 1030 
 drivers/ata/fsl_sata.h |1 -
 4 files changed, 1042 deletions(-)
 delete mode 100644 drivers/ata/fsl_ahci.c

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index fe589d3aa8..d8c9756c2a 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -59,16 +59,6 @@ config DWC_AHCI
  Enable this driver to support Sata devices through
  Synopsys DWC AHCI module.
 
-config FSL_AHCI
-   bool "Enable Freescale AHCI driver support"
-   select SCSI_AHCI
-   depends on AHCI
-   depends on DM_SCSI
-   help
- Enable this driver to support Sata devices found in
- some Freescale PowerPC SoCs.
-
-
 config DWC_AHSATA
bool "Enable DWC AHSATA driver support"
select LIBATA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 6e03384f81..a69edb10f7 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -4,7 +4,6 @@
 # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
 
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
-obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
deleted file mode 100644
index d04cff3ee7..00
--- a/drivers/ata/fsl_ahci.c
+++ /dev/null
@@ -1,1030 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * NXP PPC SATA platform driver
- *
- * (C) Copyright 2019 NXP, Inc.
- *
- */
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include "fsl_sata.h"
-
-struct fsl_ahci_priv {
-   u32 base;
-   u32 flag;
-   u32 number;
-   fsl_sata_t *fsl_sata;
-};
-
-static int fsl_ahci_bind(struct udevice *dev)
-{
-   return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
-}
-
-static int fsl_ahci_ofdata_to_platdata(struct udevice *dev)
-{
-   struct fsl_ahci_priv *priv = dev_get_priv(dev);
-
-   priv->number = dev_read_u32_default(dev, "sata-number", -1);
-   priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
-
-   priv->base = dev_read_addr(dev);
-   if (priv->base == FDT_ADDR_T_NONE)
-   return -EINVAL;
-
-   return 0;
-}
-
-static int ata_wait_register(unsigned __iomem *addr, u32 mask,
-u32 val, u32 timeout_msec)
-{
-   int i;
-
-   for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
-   mdelay(1);
-
-   return (i < timeout_msec) ? 0 : -1;
-}
-
-static void fsl_sata_dump_sfis(struct sata_fis_d2h *s)
-{
-   printf("Status FIS dump:\n\r");
-   printf("fis_type:   %02x\n\r", s->fis_type);
-   printf("pm_port_i:  %02x\n\r", s->pm_port_i);
-   printf("status: %02x\n\r", s->status);
-   printf("error:  %02x\n\r", s->error);
-   printf("lba_low:%02x\n\r", s->lba_low);
-   printf("lba_mid:%02x\n\r", s->lba_mid);
-   printf("lba_high:   %02x\n\r", s->lba_high);
-   printf("device: %02x\n\r", s->device);
-   printf("lba_low_exp:%02x\n\r", s->lba_low_exp);
-   printf("lba_mid_exp:%02x\n\r", s->lba_mid_exp);
-   printf("lba_high_exp:   %02x\n\r", s->lba_high_exp);
-   printf("res1:   %02x\n\r", s->res1);
-   printf("sector_count:   %02x\n\r", s->sector_count);
-   printf("sector_count_exp:   %02x\n\r", s->sector_count_exp);
-}
-
-static void fsl_sata_dump_regs(fsl_sata_reg_t __iomem *reg)
-{
-   printf("\n\rSATA:   %08x\n\r", (u32)reg);
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("CAR:%08x\n\r", in_le32(>car));
-   printf("CCR:%08x\n\r", in_le32(>ccr));
-   printf("CER:%08x\n\r", in_le32(>cer));
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("DER:%08x\n\

[U-Boot] [v2 4/5] arch: powerpc: Rewrite the sata node to fit the driver

2019-12-01 Thread Peng Ma
The sata of our powerpc platforms are updated. These changes is to
fit the driver probe.

Signed-off-by: Peng Ma 
---
Changed for v2
- Update title.

 arch/powerpc/dts/t2080.dtsi | 15 ---
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/arch/powerpc/dts/t2080.dtsi b/arch/powerpc/dts/t2080.dtsi
index 999fa8cec4..458019ae92 100644
--- a/arch/powerpc/dts/t2080.dtsi
+++ b/arch/powerpc/dts/t2080.dtsi
@@ -88,20 +88,13 @@
phy_type = "utmi";
};
 
-   sata0: sata@22 {
+   sata: sata@22 {
compatible = "fsl,pq-sata-v2";
reg = <0x22 0x1000>;
interrupts = <68 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
-   };
-
-   sata1: sata@221000 {
-   compatible = "fsl,pq-sata-v2";
-   reg = <0x221000 0x1000>;
-   interrupts = <69 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
};
};
 
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 5/5] ata: fsl_sata: Update fsl sata header file

2019-12-01 Thread Peng Ma
The variable(dma_flag) will be used by both fsl_ahci.c and fsl_sata.c,
Now we support the fsl_sata.c to DM mode and revert fsl_ahci.c(This
variable declare here). So we should Add this change.

Signed-off-by: Peng Ma 
---
Changed for v2:
- No change.

 drivers/ata/fsl_sata.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/ata/fsl_sata.h b/drivers/ata/fsl_sata.h
index 882803c8cd..5b9daa79e0 100644
--- a/drivers/ata/fsl_sata.h
+++ b/drivers/ata/fsl_sata.h
@@ -313,6 +313,7 @@ typedef struct fsl_sata {
int wcache;
int flush;
int flush_ext;
+   u32 dma_flag;
 } fsl_sata_t;
 
 #define READ_CMD   0
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 3/5] Revert "configs: enable sata device module in T2080QDS"

2019-12-01 Thread Peng Ma
This reverts commit 02dc1599ba0b16eb21ba0c206e5b6f38fe7b67a7

Commit 02dc1599ba0b ("configs: enable sata, eSDHC, USB device module in
T2080QDS") has some sata defconfig changes to fit support DM mode, Now
the driver will be reverted, So revert it.

Signed-off-by: Peng Ma 
---
Changed for v2:
- Add detailed explanation.

 configs/T2080QDS_NAND_defconfig   | 4 
 configs/T2080QDS_SDCARD_defconfig | 4 
 configs/T2080QDS_SECURE_BOOT_defconfig| 4 
 configs/T2080QDS_SPIFLASH_defconfig   | 4 
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 4 
 configs/T2080QDS_defconfig| 4 
 6 files changed, 24 deletions(-)

diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 44f0e6c9b6..0b169e4b4e 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -9,7 +9,6 @@ CONFIG_ENV_OFFSET=0x14
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_SYS_CUSTOM_LDSCRIPT=y
 CONFIG_SYS_LDSCRIPT="arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"
@@ -47,7 +46,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -72,8 +70,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NAND=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SDCARD_defconfig 
b/configs/T2080QDS_SDCARD_defconfig
index e41c005a04..988ffb7e40 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -10,7 +10,6 @@ CONFIG_ENV_OFFSET=0x10
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -45,7 +44,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -69,8 +67,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_MMC=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig 
b/configs/T2080QDS_SECURE_BOOT_defconfig
index f7f59a7a9d..73616d383e 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -33,7 +32,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -56,8 +54,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NOR=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig 
b/configs/T2080QDS_SPIFLASH_defconfig
index 56d6c241e3..46d2806dc0 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -12,7 +12,6 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -48,7 +47,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_ENV_ADDR=0xFFFC9000
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -72,8 +70,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_SPIFLASH=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig 
b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index a1cef08b6e..b9211dbf30 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -4,7 +4,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -30,7 +29,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_ENV_ADDR=0xFFE2
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -49,8 +47,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_REMOTE=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index 7d7179d4fc..a714c653c1 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -5,7 +5,6 @@ CO

Re: [U-Boot] [EXT] Re: [PATCH 2/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-11-27 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年11月27日 18:31
>To: Peng Ma ; Priyanka Jain ;
>w...@denx.de; Ruchika Gupta ; Shengzhou Liu
>
>Cc: Yinbo Zhu ; Z.q. Hou ;
>s...@chromium.org; ja...@openedev.com; andre.przyw...@arm.com;
>sm...@web.de; Andy Tang ; u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 2/5] Revert "ata: fsl_ahci: Add sata DM support for
>Freescale powerpc socs"
>
>Caution: EXT Email
>
>Hi Peng,
>
>On 27.11.19 11:02, Peng Ma wrote:
>> This reverts commit 1ee494291880fd51ef0c5f7342e072bdb069d7ff.
>
>I'm missing an explanation for this revert (or even better for this whole
>patch-set). Why are you doing this? Is the new DM driver causing problems?
>
Hi, Stefan,

I will refresh these series patches for v2. 
Thanks very much for your points.

Best Regards,
Peng

>Thanks,
>Stefan
>
>> Signed-off-by: Peng Ma 
>> ---
>>   drivers/ata/Kconfig|   10 -
>>   drivers/ata/Makefile   |1 -
>>   drivers/ata/fsl_ahci.c | 1030 
>>   drivers/ata/fsl_sata.h |1 -
>>   4 files changed, 1042 deletions(-)
>>   delete mode 100644 drivers/ata/fsl_ahci.c
>>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> fe589d3aa8..d8c9756c2a 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -59,16 +59,6 @@ config DWC_AHCI
>> Enable this driver to support Sata devices through
>> Synopsys DWC AHCI module.
>>
>> -config FSL_AHCI
>> - bool "Enable Freescale AHCI driver support"
>> - select SCSI_AHCI
>> - depends on AHCI
>> - depends on DM_SCSI
>> - help
>> -   Enable this driver to support Sata devices found in
>> -   some Freescale PowerPC SoCs.
>> -
>> -
>>   config DWC_AHSATA
>>   bool "Enable DWC AHSATA driver support"
>>   select LIBATA
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index
>> 6e03384f81..a69edb10f7 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -4,7 +4,6 @@
>>   # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
>>
>>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>> -obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
>>   obj-$(CONFIG_AHCI) += ahci-uclass.o
>>   obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
>>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>> diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c deleted
>> file mode 100644 index d04cff3ee7..00
>> --- a/drivers/ata/fsl_ahci.c
>> +++ /dev/null
>> @@ -1,1030 +0,0 @@
>> -// SPDX-License-Identifier: GPL-2.0+
>> -/*
>> - * NXP PPC SATA platform driver
>> - *
>> - * (C) Copyright 2019 NXP, Inc.
>> - *
>> - */
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -
>> -#include "fsl_sata.h"
>> -
>> -struct fsl_ahci_priv {
>> - u32 base;
>> - u32 flag;
>> - u32 number;
>> - fsl_sata_t *fsl_sata;
>> -};
>> -
>> -static int fsl_ahci_bind(struct udevice *dev) -{
>> - return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
>> -}
>> -
>> -static int fsl_ahci_ofdata_to_platdata(struct udevice *dev) -{
>> - struct fsl_ahci_priv *priv = dev_get_priv(dev);
>> -
>> - priv->number = dev_read_u32_default(dev, "sata-number", -1);
>> - priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
>> -
>> - priv->base = dev_read_addr(dev);
>> - if (priv->base == FDT_ADDR_T_NONE)
>> - return -EINVAL;
>> -
>> - return 0;
>> -}
>> -
>> -static int ata_wait_register(unsigned __iomem *addr, u32 mask,
>> -  u32 val, u32 timeout_msec)
>> -{
>> - int i;
>> -
>> - for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
>> - mdelay(1);
>> -
>> - return (i < timeout_msec) ? 0 : -1;
>> -}
>> -
>> -static void fsl_sata_dump_sfis(struct sata_fis_d2h *s) -{
>> - printf("Status FIS dump:\n\r");
>> - printf("fis_type:   %02x\n\r", s->fis_type);
>> - printf("pm_port_i:  %02x\n\r", s->pm_port_i);
>> - printf("status: %02x\n\r", s->status);
>> 

Re: [U-Boot] [EXT] Re: [PATCH 1/5] Revert "powerpc: mpc85xx: delete FSL_SATA for T2080QDS board."

2019-11-27 Thread Peng Ma


>-Original Message-
>From: Wolfgang Denk 
>Sent: 2019年11月28日 0:08
>To: Peng Ma 
>Cc: Priyanka Jain ; Ruchika Gupta
>; Shengzhou Liu ; Yinbo
>Zhu ; Z.q. Hou ;
>s...@chromium.org; ja...@openedev.com; andre.przyw...@arm.com;
>s...@denx.de; sm...@web.de; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/5] Revert "powerpc: mpc85xx: delete FSL_SATA for
>T2080QDS board."
>
>Caution: EXT Email
>
>Dear Peng Ma,
>
>In message <20191127100145.44346-1-peng...@nxp.com> you wrote:
>> This reverts commit 856b9cdb53f0e6c8d98f81cf71ef363c16b0aa0e.
>>
>> Signed-off-by: Peng Ma 
>
>Why?
>
>A commit message should always explain why such an action is taking place.
>
Hi, Wolfgang,

I am so sorry to send these series patches(revert patches not to explain why), 
I will refresh them and send V2.

Best Regards,
Peng 

>Best regards,
>
>Wolfgang Denk
>
>--
>DENX Software Engineering GmbH,  Managing Director: Wolfgang Denk
>HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
>The high cost of living hasn't affected its popularity.
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 2/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-11-27 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年11月27日 18:31
>To: Peng Ma ; Priyanka Jain ;
>w...@denx.de; Ruchika Gupta ; Shengzhou Liu
>
>Cc: Yinbo Zhu ; Z.q. Hou ;
>s...@chromium.org; ja...@openedev.com; andre.przyw...@arm.com;
>sm...@web.de; Andy Tang ; u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 2/5] Revert "ata: fsl_ahci: Add sata DM support for
>Freescale powerpc socs"
>
>Caution: EXT Email
>
>Hi Peng,
>
>On 27.11.19 11:02, Peng Ma wrote:
>> This reverts commit 1ee494291880fd51ef0c5f7342e072bdb069d7ff.
>
>I'm missing an explanation for this revert (or even better for this whole
>patch-set). Why are you doing this? Is the new DM driver causing problems?
>
[Peng Ma] The new driver work well but that's not the best way to do it. I make 
some changes
in fsl_sata.c, please see /drivers/ata/fsl_sata.c. 

Thanks,
Peng

>Thanks,
>Stefan
>
>> Signed-off-by: Peng Ma 
>> ---
>>   drivers/ata/Kconfig|   10 -
>>   drivers/ata/Makefile   |1 -
>>   drivers/ata/fsl_ahci.c | 1030 
>>   drivers/ata/fsl_sata.h |1 -
>>   4 files changed, 1042 deletions(-)
>>   delete mode 100644 drivers/ata/fsl_ahci.c
>>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> fe589d3aa8..d8c9756c2a 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -59,16 +59,6 @@ config DWC_AHCI
>> Enable this driver to support Sata devices through
>> Synopsys DWC AHCI module.
>>
>> -config FSL_AHCI
>> - bool "Enable Freescale AHCI driver support"
>> - select SCSI_AHCI
>> - depends on AHCI
>> - depends on DM_SCSI
>> - help
>> -   Enable this driver to support Sata devices found in
>> -   some Freescale PowerPC SoCs.
>> -
>> -
>>   config DWC_AHSATA
>>   bool "Enable DWC AHSATA driver support"
>>   select LIBATA
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index
>> 6e03384f81..a69edb10f7 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -4,7 +4,6 @@
>>   # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
>>
>>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>> -obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
>>   obj-$(CONFIG_AHCI) += ahci-uclass.o
>>   obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
>>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>> diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c deleted
>> file mode 100644 index d04cff3ee7..00
>> --- a/drivers/ata/fsl_ahci.c
>> +++ /dev/null
>> @@ -1,1030 +0,0 @@
>> -// SPDX-License-Identifier: GPL-2.0+
>> -/*
>> - * NXP PPC SATA platform driver
>> - *
>> - * (C) Copyright 2019 NXP, Inc.
>> - *
>> - */
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -#include 
>> -
>> -#include "fsl_sata.h"
>> -
>> -struct fsl_ahci_priv {
>> - u32 base;
>> - u32 flag;
>> - u32 number;
>> - fsl_sata_t *fsl_sata;
>> -};
>> -
>> -static int fsl_ahci_bind(struct udevice *dev) -{
>> - return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
>> -}
>> -
>> -static int fsl_ahci_ofdata_to_platdata(struct udevice *dev) -{
>> - struct fsl_ahci_priv *priv = dev_get_priv(dev);
>> -
>> - priv->number = dev_read_u32_default(dev, "sata-number", -1);
>> - priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
>> -
>> - priv->base = dev_read_addr(dev);
>> - if (priv->base == FDT_ADDR_T_NONE)
>> - return -EINVAL;
>> -
>> - return 0;
>> -}
>> -
>> -static int ata_wait_register(unsigned __iomem *addr, u32 mask,
>> -  u32 val, u32 timeout_msec)
>> -{
>> - int i;
>> -
>> - for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
>> - mdelay(1);
>> -
>> - return (i < timeout_msec) ? 0 : -1;
>> -}
>> -
>> -static void fsl_sata_dump_sfis(struct sata_fis_d2h *s) -{
>> - printf("Status FIS dump:\n\r");
>> - printf("fis_type:   %02x\n\r", s->fis_type);
>> - printf("pm_port_i:  %02x\n\r", s->pm_port_i);
>> - printf("status: %02x

[U-Boot] [PATCH 4/5] Revert "configs: enable sata device module in T2080QDS"

2019-11-27 Thread Peng Ma
This reverts commit 02dc1599ba0b16eb21ba0c206e5b6f38fe7b67a7
Just reverts some configs about sata to fit fsl_sata.c

Signed-off-by: Peng Ma 
---
 configs/T2080QDS_NAND_defconfig   | 4 
 configs/T2080QDS_SDCARD_defconfig | 4 
 configs/T2080QDS_SECURE_BOOT_defconfig| 4 
 configs/T2080QDS_SPIFLASH_defconfig   | 4 
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 4 
 configs/T2080QDS_defconfig| 4 
 6 files changed, 24 deletions(-)

diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index 44f0e6c9b6..0b169e4b4e 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -9,7 +9,6 @@ CONFIG_ENV_OFFSET=0x14
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_SYS_CUSTOM_LDSCRIPT=y
 CONFIG_SYS_LDSCRIPT="arch/powerpc/cpu/mpc85xx/u-boot-nand.lds"
@@ -47,7 +46,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -72,8 +70,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NAND=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SDCARD_defconfig 
b/configs/T2080QDS_SDCARD_defconfig
index e41c005a04..988ffb7e40 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -10,7 +10,6 @@ CONFIG_ENV_OFFSET=0x10
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -45,7 +44,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -69,8 +67,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_MMC=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig 
b/configs/T2080QDS_SECURE_BOOT_defconfig
index f7f59a7a9d..73616d383e 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -33,7 +32,6 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -56,8 +54,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_NOR=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig 
b/configs/T2080QDS_SPIFLASH_defconfig
index 56d6c241e3..46d2806dc0 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -12,7 +12,6 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
-CONFIG_AHCI=y
 CONFIG_SPL_TEXT_BASE=0xFFFD8000
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -48,7 +47,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_ENV_ADDR=0xFFFC9000
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -72,8 +70,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_SPIFLASH=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig 
b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
index a1cef08b6e..b9211dbf30 100644
--- a/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
+++ b/configs/T2080QDS_SRIO_PCIE_BOOT_defconfig
@@ -4,7 +4,6 @@ CONFIG_ENV_SIZE=0x2000
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -30,7 +29,6 @@ CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_REMOTE=y
 CONFIG_ENV_ADDR=0xFFE2
 CONFIG_DM=y
-CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -49,8 +47,6 @@ CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_FSL=y
 CONFIG_SYS_QE_FMAN_FW_IN_REMOTE=y
-CONFIG_SCSI=y
-CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
diff --git a/configs/T2080QDS_defconfig b/configs/T2080QDS_defconfig
index 7d7179d4fc..a714c653c1 100644
--- a/configs/T2080QDS_defconfig
+++ b/configs/T2080QDS_defconfig
@@ -5,7 +5,6 @@ CONFIG_ENV_SECT_SIZE=0x2
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
 CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SE

[U-Boot] [PATCH 5/5] ata: fsl_sata: Update fsl sata header file

2019-11-27 Thread Peng Ma
The variable(dma_flag) will be used by both fsl_ahci.c and fsl_sata.c,
Now we support the fsl_sata.c to DM mode and revert fsl_ahci.c(This
variable declare here). So we should Add this changed.

Signed-off-by: Peng Ma 
---
 drivers/ata/fsl_sata.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/ata/fsl_sata.h b/drivers/ata/fsl_sata.h
index 882803c8cd..5b9daa79e0 100644
--- a/drivers/ata/fsl_sata.h
+++ b/drivers/ata/fsl_sata.h
@@ -313,6 +313,7 @@ typedef struct fsl_sata {
int wcache;
int flush;
int flush_ext;
+   u32 dma_flag;
 } fsl_sata_t;
 
 #define READ_CMD   0
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 2/5] Revert "ata: fsl_ahci: Add sata DM support for Freescale powerpc socs"

2019-11-27 Thread Peng Ma
This reverts commit 1ee494291880fd51ef0c5f7342e072bdb069d7ff.

Signed-off-by: Peng Ma 
---
 drivers/ata/Kconfig|   10 -
 drivers/ata/Makefile   |1 -
 drivers/ata/fsl_ahci.c | 1030 
 drivers/ata/fsl_sata.h |1 -
 4 files changed, 1042 deletions(-)
 delete mode 100644 drivers/ata/fsl_ahci.c

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index fe589d3aa8..d8c9756c2a 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -59,16 +59,6 @@ config DWC_AHCI
  Enable this driver to support Sata devices through
  Synopsys DWC AHCI module.
 
-config FSL_AHCI
-   bool "Enable Freescale AHCI driver support"
-   select SCSI_AHCI
-   depends on AHCI
-   depends on DM_SCSI
-   help
- Enable this driver to support Sata devices found in
- some Freescale PowerPC SoCs.
-
-
 config DWC_AHSATA
bool "Enable DWC AHSATA driver support"
select LIBATA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 6e03384f81..a69edb10f7 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -4,7 +4,6 @@
 # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
 
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
-obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
deleted file mode 100644
index d04cff3ee7..00
--- a/drivers/ata/fsl_ahci.c
+++ /dev/null
@@ -1,1030 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * NXP PPC SATA platform driver
- *
- * (C) Copyright 2019 NXP, Inc.
- *
- */
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-#include "fsl_sata.h"
-
-struct fsl_ahci_priv {
-   u32 base;
-   u32 flag;
-   u32 number;
-   fsl_sata_t *fsl_sata;
-};
-
-static int fsl_ahci_bind(struct udevice *dev)
-{
-   return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
-}
-
-static int fsl_ahci_ofdata_to_platdata(struct udevice *dev)
-{
-   struct fsl_ahci_priv *priv = dev_get_priv(dev);
-
-   priv->number = dev_read_u32_default(dev, "sata-number", -1);
-   priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
-
-   priv->base = dev_read_addr(dev);
-   if (priv->base == FDT_ADDR_T_NONE)
-   return -EINVAL;
-
-   return 0;
-}
-
-static int ata_wait_register(unsigned __iomem *addr, u32 mask,
-u32 val, u32 timeout_msec)
-{
-   int i;
-
-   for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
-   mdelay(1);
-
-   return (i < timeout_msec) ? 0 : -1;
-}
-
-static void fsl_sata_dump_sfis(struct sata_fis_d2h *s)
-{
-   printf("Status FIS dump:\n\r");
-   printf("fis_type:   %02x\n\r", s->fis_type);
-   printf("pm_port_i:  %02x\n\r", s->pm_port_i);
-   printf("status: %02x\n\r", s->status);
-   printf("error:  %02x\n\r", s->error);
-   printf("lba_low:%02x\n\r", s->lba_low);
-   printf("lba_mid:%02x\n\r", s->lba_mid);
-   printf("lba_high:   %02x\n\r", s->lba_high);
-   printf("device: %02x\n\r", s->device);
-   printf("lba_low_exp:%02x\n\r", s->lba_low_exp);
-   printf("lba_mid_exp:%02x\n\r", s->lba_mid_exp);
-   printf("lba_high_exp:   %02x\n\r", s->lba_high_exp);
-   printf("res1:   %02x\n\r", s->res1);
-   printf("sector_count:   %02x\n\r", s->sector_count);
-   printf("sector_count_exp:   %02x\n\r", s->sector_count_exp);
-}
-
-static void fsl_sata_dump_regs(fsl_sata_reg_t __iomem *reg)
-{
-   printf("\n\rSATA:   %08x\n\r", (u32)reg);
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("CAR:%08x\n\r", in_le32(>car));
-   printf("CCR:%08x\n\r", in_le32(>ccr));
-   printf("CER:%08x\n\r", in_le32(>cer));
-   printf("CQR:%08x\n\r", in_le32(>cqr));
-   printf("DER:%08x\n\r", in_le32(>der));
-   printf("CHBA:   %08x\n\r", in_le32(>chba));
-   printf("HStatus:%08x\n\r", in_le32(>hstatus));
-   printf("HControl:   %08x\n\r", in_le32(>hcontrol));
-   printf("CQPMP:  %08x\n\r", in_le32(>cqpmp));
-   printf("SIG:%08x\n\

[U-Boot] [PATCH 3/5] arch: powerpc: Rewrite the sata node to fit the driver

2019-11-27 Thread Peng Ma
The sata of our powerpc platform are updated. This changed is to
fit the driver init

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/t2080.dtsi | 15 ---
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/arch/powerpc/dts/t2080.dtsi b/arch/powerpc/dts/t2080.dtsi
index 999fa8cec4..458019ae92 100644
--- a/arch/powerpc/dts/t2080.dtsi
+++ b/arch/powerpc/dts/t2080.dtsi
@@ -88,20 +88,13 @@
phy_type = "utmi";
};
 
-   sata0: sata@22 {
+   sata: sata@22 {
compatible = "fsl,pq-sata-v2";
reg = <0x22 0x1000>;
interrupts = <68 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
-   };
-
-   sata1: sata@221000 {
-   compatible = "fsl,pq-sata-v2";
-   reg = <0x221000 0x1000>;
-   interrupts = <69 0x2 0 0>;
-   sata-number = <0x0>;
-   sata-fpdma = <0x0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
};
};
 
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/5] Revert "powerpc: mpc85xx: delete FSL_SATA for T2080QDS board."

2019-11-27 Thread Peng Ma
This reverts commit 856b9cdb53f0e6c8d98f81cf71ef363c16b0aa0e.

Signed-off-by: Peng Ma 
---
 arch/powerpc/cpu/mpc85xx/Kconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 8cc82f80b4..6fc6ea8fef 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -352,6 +352,7 @@ config TARGET_T2080QDS
select PHYS_64BIT
select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
select FSL_DDR_INTERACTIVE
+   imply CMD_SATA
 
 config TARGET_T2080RDB
bool "Support T2080RDB"
@@ -360,7 +361,6 @@ config TARGET_T2080RDB
select SUPPORT_SPL
select PHYS_64BIT
imply CMD_SATA
-   imply FSL_SATA
imply PANIC_HANG
 
 config TARGET_T2081QDS
@@ -1099,8 +1099,10 @@ config ARCH_T2080
select SYS_FSL_SEC_COMPAT_4
select SYS_PPC64
select FSL_IFC
+   imply CMD_SATA
imply CMD_NAND
imply CMD_REGINFO
+   imply FSL_SATA
 
 config ARCH_T2081
bool
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [V3 1/2] ata: fsl_sata: Add DM support for Freescale PowerPC SATA driver

2019-11-18 Thread Peng Ma


>-Original Message-
>From: Peng Ma 
>Sent: 2019年11月19日 14:18
>To: Prabhakar X ; w...@denx.de
>Cc: ja...@openedev.com; s...@chromium.org; andre.przyw...@arm.com;
>s...@denx.de; sm...@web.de; u-boot@lists.denx.de; Peng Ma
>
>Subject: [V3 1/2] ata: fsl_sata: Add DM support for Freescale PowerPC SATA
>driver
>
>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 
>---
>Changed for v3:
>   - Limitd the title for maximum 75 chars per line
>
> arch/powerpc/cpu/mpc85xx/cpu_init.c |  10 --
> drivers/ata/Kconfig |   1 +
> drivers/ata/fsl_sata.c  | 307
>++--
> drivers/ata/fsl_sata.h  |  13 +-
> 4 files changed, 233 insertions(+), 98 deletions(-)
>
>diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c
>b/arch/powerpc/cpu/mpc85xx/cpu_init.c
>index cac9280..9c12c87 100644
>--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
>+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
>@@ -1023,16 +1023,6 @@ void arch_preboot_os(void)
>   mtmsr(msr);
> }
>
>-#if defined(CONFIG_SATA) && defined(CONFIG_FSL_SATA) -int
>sata_initialize(void) -{
>-  if (is_serdes_configured(SATA1) || is_serdes_configured(SATA2))
>-  return __sata_initialize();
>-
>-  return 1;
>-}
>-#endif
>-
> void cpu_secondary_init_r(void)
> {
> #ifdef CONFIG_U_QE
>diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index 87636ae..57121f6
>100644
>--- a/drivers/ata/Kconfig
>+++ b/drivers/ata/Kconfig
>@@ -87,6 +87,7 @@ config DWC_AHSATA_AHCI  config FSL_SATA
>   bool "Enable Freescale SATA controller driver support"
>   select LIBATA
>+  select AHCI if BLK
>   help
> Enable this driver to support the SATA controller found in
> some Freescale PowerPC SoCs.
>diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c index
>e70a515..3261c10 100644
>--- a/drivers/ata/fsl_sata.c
>+++ b/drivers/ata/fsl_sata.c
>@@ -1,7 +1,8 @@
> // SPDX-License-Identifier: GPL-2.0+
> /*
>  * Copyright (C) 2008,2010 Freescale Semiconductor, Inc.
>- *Dave Liu 
>+ * Copyright 2019 NXP
>+ * Author: Dave Liu 
>  */
>
> #include 
>@@ -16,6 +17,11 @@
> #include 
> #include "fsl_sata.h"
>
>+#if CONFIG_IS_ENABLED(BLK)
>+#include 
>+#include 
>+#include 
>+#else
> #ifndef CONFIG_SYS_SATA1_FLAGS
>   #define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
> #endif
>@@ -35,6 +41,7 @@ static struct fsl_sata_info fsl_sata_info[] = {
>   {0, 0},
> #endif
> };
>+#endif
>
> static inline void sdelay(unsigned long sec)  { @@ -74,7 +81,11 @@ static int
>ata_wait_register(unsigned __iomem *addr, u32 mask,
>   return (i < timeout_msec) ? 0 : -1;
> }
>
>+#if !CONFIG_IS_ENABLED(BLK)
> int init_sata(int dev)
>+#else
>+static int init_sata(struct fsl_ata_priv *priv, int dev) #endif
> {
>   u32 length, align;
>   cmd_hdr_tbl_t *cmd_hdr;
>@@ -110,13 +121,18 @@ int init_sata(int dev)
>   /* Zero all of the device driver struct */
>   memset((void *)sata, 0, sizeof(fsl_sata_t));
>
>-  /* Save the private struct to block device struct */
>-  sata_dev_desc[dev].priv = (void *)sata;
>-
>-  snprintf(sata->name, 12, "SATA%d", dev);
>+  snprintf(sata->name, 12, "SATA%d:\n", dev);
>
>   /* Set the controller register base address to device struct */
>+#if !CONFIG_IS_ENABLED(BLK)
>+  sata_dev_desc[dev].priv = (void *)sata;
>   reg = (fsl_sata_reg_t *)(fsl_sata_info[dev].sata_reg_base);
>+  sata->dma_flag = fsl_sata_info[dev].flags; #else
>+  reg = (fsl_sata_reg_t *)(priv->base + priv->offset * dev);
>+  sata->dma_flag = priv->flag;
>+  priv->fsl_sata = sata;
>+#endif
>   sata->reg_base = reg;
>
>   /* Allocate the command header table, 4 bytes ali

Re: [U-Boot] [V3 2/2] ata: sata_sil: Add DM support for Silicon sata driver

2019-11-18 Thread Peng Ma


>-Original Message-
>From: Peng Ma 
>Sent: 2019年11月19日 14:18
>To: Prabhakar X ; w...@denx.de
>Cc: ja...@openedev.com; s...@chromium.org; andre.przyw...@arm.com;
>s...@denx.de; sm...@web.de; u-boot@lists.denx.de; Peng Ma
>
>Subject: [V3 2/2] ata: sata_sil: Add DM support for Silicon sata driver
>
>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 
>---
>Changed for v3:
>   - Remove the typedef
>
> drivers/ata/Kconfig|   1 +
> drivers/ata/sata_sil.c | 535
>+++--
> drivers/ata/sata_sil.h |  10 +
> 3 files changed, 353 insertions(+), 193 deletions(-)
>
>diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index 57121f6..fe589d3
>100644
>--- a/drivers/ata/Kconfig
>+++ b/drivers/ata/Kconfig
>@@ -110,6 +110,7 @@ config SATA_MV
> config SATA_SIL
>   bool "Enable Silicon Image SIL3131 / SIL3132 / SIL3124 SATA driver
>support"
>   select LIBATA
>+  select AHCI if BLK
>   help
> Enable this driver to support the SIL3131, SIL3132 and SIL3124
> SATA controllers.
>diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c index
>a8598d9..d06d7a0 100644
>--- a/drivers/ata/sata_sil.c
>+++ b/drivers/ata/sata_sil.c
>@@ -1,6 +1,7 @@
> // SPDX-License-Identifier: GPL-2.0+
> /*
>  * Copyright (C) 2011 Freescale Semiconductor, Inc.
>+ * Copyright 2019 NXP
>  * Author: Tang Yuantian 
>  */
>
>@@ -14,18 +15,29 @@
> #include 
> #include 
> #include 
>+
>+#if CONFIG_IS_ENABLED(BLK)
>+#include 
>+#include 
>+#endif
>+
> #include "sata_sil.h"
>
>-/* Convert sectorsize to wordsize */
>-#define ATA_SECTOR_WORDS (ATA_SECT_SIZE/2)
> #define virt_to_bus(devno, v) pci_virt_to_mem(devno, (void *) (v))
>
>+/* just compatible ahci_ops */
>+struct sil_ops {
>+  int *rev0;
>+  int *rev1;
>+  int (*scan)(struct udevice *dev);
>+};
>+
> static struct sata_info sata_info;
>
> static struct pci_device_id supported[] = {
>-  {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131},
>-  {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132},
>-  {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124},
>+  { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE,
>PCI_DEVICE_ID_SIL3131) },
>+  { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE,
>PCI_DEVICE_ID_SIL3132) },
>+  { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE,
>PCI_DEVICE_ID_SIL3124) },
>   {}
> };
>
>@@ -113,9 +125,9 @@ static int sil_init_port(void *port)
>   return 0;
> }
>
>-static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis)
>+static void sil_read_fis(struct sil_sata *sata, int tag,
>+   struct sata_fis_d2h *fis)
> {
>-  struct sil_sata *sata = sata_dev_desc[dev].priv;
>   void *port = sata->port;
>   struct sil_prb *prb;
>   int i;
>@@ -128,9 +140,9 @@ static void sil_read_fis(int dev, int tag, struct
>sata_fis_d2h *fis)
>   *dst++ = readl(src++);
> }
>
>-static int sil_exec_cmd(int dev, struct sil_cmd_block *pcmd, int tag)
>+static int sil_exec_cmd(struct sil_sata *sata, struct sil_cmd_block *pcmd,
>+  int tag)
> {
>-  struct sil_sata *sata = sata_dev_desc[dev].priv;
>   void *port = sata->port;
>   u64 paddr = virt_to_bus(sata->devno, pcmd);
>   u32 irq_mask, irq_stat;
>@@ -164,9 +176,8 @@ static int sil_exec_cmd(int dev, struct sil_cmd_block
>*pcmd, int tag)
>   return rc;
> }
>
>-static int sil_cmd_set_feature(int dev)
>+static int sil_cmd_set_feature(struct sil_sata *sata)
> {
>-  struct sil_sata *sata = sata_dev_desc[dev].priv;
>   struct sil_cmd_block cmdb, *pcmd = 
>   struct sata_fis_d2h fis;
>   u8 udma_cap;
>@@ -191,9 +202,9 @@ static int sil_cmd_set_feature(int dev)
>   if (udma_cap == ATA_UDMA3)
>   pcmd->prb.fis.sector_count = XFER_UDMA_3;
>
>-  ret = sil_exec_cmd(dev, pcmd, 0);
>+  ret = sil_exec_cmd(sata, pcmd, 0);
>   if (ret) {
>-

[U-Boot] [V3 2/2] ata: sata_sil: Add DM support for Silicon sata driver

2019-11-18 Thread Peng Ma
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 
---
Changed for v3:
- Remove the typedef

 drivers/ata/Kconfig|   1 +
 drivers/ata/sata_sil.c | 535 +++--
 drivers/ata/sata_sil.h |  10 +
 3 files changed, 353 insertions(+), 193 deletions(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 57121f6..fe589d3 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -110,6 +110,7 @@ config SATA_MV
 config SATA_SIL
bool "Enable Silicon Image SIL3131 / SIL3132 / SIL3124 SATA driver 
support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SIL3131, SIL3132 and SIL3124
  SATA controllers.
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index a8598d9..d06d7a0 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2011 Freescale Semiconductor, Inc.
+ * Copyright 2019 NXP
  * Author: Tang Yuantian 
  */
 
@@ -14,18 +15,29 @@
 #include 
 #include 
 #include 
+
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#endif
+
 #include "sata_sil.h"
 
-/* Convert sectorsize to wordsize */
-#define ATA_SECTOR_WORDS (ATA_SECT_SIZE/2)
 #define virt_to_bus(devno, v)  pci_virt_to_mem(devno, (void *) (v))
 
+/* just compatible ahci_ops */
+struct sil_ops {
+   int *rev0;
+   int *rev1;
+   int (*scan)(struct udevice *dev);
+};
+
 static struct sata_info sata_info;
 
 static struct pci_device_id supported[] = {
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124},
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124) },
{}
 };
 
@@ -113,9 +125,9 @@ static int sil_init_port(void *port)
return 0;
 }
 
-static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis)
+static void sil_read_fis(struct sil_sata *sata, int tag,
+struct sata_fis_d2h *fis)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
struct sil_prb *prb;
int i;
@@ -128,9 +140,9 @@ static void sil_read_fis(int dev, int tag, struct 
sata_fis_d2h *fis)
*dst++ = readl(src++);
 }
 
-static int sil_exec_cmd(int dev, struct sil_cmd_block *pcmd, int tag)
+static int sil_exec_cmd(struct sil_sata *sata, struct sil_cmd_block *pcmd,
+   int tag)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
u64 paddr = virt_to_bus(sata->devno, pcmd);
u32 irq_mask, irq_stat;
@@ -164,9 +176,8 @@ static int sil_exec_cmd(int dev, struct sil_cmd_block 
*pcmd, int tag)
return rc;
 }
 
-static int sil_cmd_set_feature(int dev)
+static int sil_cmd_set_feature(struct sil_sata *sata)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
struct sil_cmd_block cmdb, *pcmd = 
struct sata_fis_d2h fis;
u8 udma_cap;
@@ -191,9 +202,9 @@ static int sil_cmd_set_feature(int dev)
if (udma_cap == ATA_UDMA3)
pcmd->prb.fis.sector_count = XFER_UDMA_3;
 
-   ret = sil_exec_cmd(dev, pcmd, 0);
+   ret = sil_exec_cmd(sata, pcmd, 0);
if (ret) {
-   sil_read_fis(dev, 0, );
+   sil_read_fis(sata, 0, );
printf("Err: exe cmd(0x%x).\n",
readl(sata->port + PORT_SERROR));
sil_sata_dump_fis();
@@ -203,9 +214,34 @@ static int sil_cmd_set_feature(int dev)
return 0;
 }
 
-static int sil_cmd_identify_device(int dev, u16 *id)
+static void sil_sata_init_wcache(struct sil_sata *sata, u16 *id)
+{
+   if (ata_id_has_wcache(id) && ata_id_wcache_enabled(id))
+   sata->wcache = 1;
+   if (ata_id_has_flush(id))
+   sata->flush = 1;
+   if (ata_id_has_flush_ext(id))
+   sata->flush_ext = 1;
+}
+
+static void sil_sata_set_feature_by_id(struct sil_sata *sata, u16 *id)
+{
+#ifdef CONFIG_LBA48
+  

[U-Boot] [V3 1/2] ata: fsl_sata: Add DM support for Freescale PowerPC SATA driver

2019-11-18 Thread 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 
---
Changed for v3:
- Limitd the title for maximum 75 chars per line

 arch/powerpc/cpu/mpc85xx/cpu_init.c |  10 --
 drivers/ata/Kconfig |   1 +
 drivers/ata/fsl_sata.c  | 307 ++--
 drivers/ata/fsl_sata.h  |  13 +-
 4 files changed, 233 insertions(+), 98 deletions(-)

diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c 
b/arch/powerpc/cpu/mpc85xx/cpu_init.c
index cac9280..9c12c87 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
@@ -1023,16 +1023,6 @@ void arch_preboot_os(void)
mtmsr(msr);
 }
 
-#if defined(CONFIG_SATA) && defined(CONFIG_FSL_SATA)
-int sata_initialize(void)
-{
-   if (is_serdes_configured(SATA1) || is_serdes_configured(SATA2))
-   return __sata_initialize();
-
-   return 1;
-}
-#endif
-
 void cpu_secondary_init_r(void)
 {
 #ifdef CONFIG_U_QE
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 87636ae..57121f6 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -87,6 +87,7 @@ config DWC_AHSATA_AHCI
 config FSL_SATA
bool "Enable Freescale SATA controller driver support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SATA controller found in
  some Freescale PowerPC SoCs.
diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index e70a515..3261c10 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -1,7 +1,8 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2008,2010 Freescale Semiconductor, Inc.
- * Dave Liu 
+ * Copyright 2019 NXP
+ * Author: Dave Liu 
  */
 
 #include 
@@ -16,6 +17,11 @@
 #include 
 #include "fsl_sata.h"
 
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#include 
+#else
 #ifndef CONFIG_SYS_SATA1_FLAGS
#define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
 #endif
@@ -35,6 +41,7 @@ static struct fsl_sata_info fsl_sata_info[] = {
{0, 0},
 #endif
 };
+#endif
 
 static inline void sdelay(unsigned long sec)
 {
@@ -74,7 +81,11 @@ static int ata_wait_register(unsigned __iomem *addr, u32 
mask,
return (i < timeout_msec) ? 0 : -1;
 }
 
+#if !CONFIG_IS_ENABLED(BLK)
 int init_sata(int dev)
+#else
+static int init_sata(struct fsl_ata_priv *priv, int dev)
+#endif
 {
u32 length, align;
cmd_hdr_tbl_t *cmd_hdr;
@@ -110,13 +121,18 @@ int init_sata(int dev)
/* Zero all of the device driver struct */
memset((void *)sata, 0, sizeof(fsl_sata_t));
 
-   /* Save the private struct to block device struct */
-   sata_dev_desc[dev].priv = (void *)sata;
-
-   snprintf(sata->name, 12, "SATA%d", dev);
+   snprintf(sata->name, 12, "SATA%d:\n", dev);
 
/* Set the controller register base address to device struct */
+#if !CONFIG_IS_ENABLED(BLK)
+   sata_dev_desc[dev].priv = (void *)sata;
reg = (fsl_sata_reg_t *)(fsl_sata_info[dev].sata_reg_base);
+   sata->dma_flag = fsl_sata_info[dev].flags;
+#else
+   reg = (fsl_sata_reg_t *)(priv->base + priv->offset * dev);
+   sata->dma_flag = priv->flag;
+   priv->fsl_sata = sata;
+#endif
sata->reg_base = reg;
 
/* Allocate the command header table, 4 bytes aligned */
@@ -479,34 +495,16 @@ static int fsl_sata_exec_cmd(struct fsl_sata *sata, 
struct sata_fis_h2d *cfis,
return -1;
 }
 
-static void fsl_sata_identify(int dev, u16 *id)
-{
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-   struct sata_fis_h2d h2d, *cfis = 
-
-   memset(cfis, 0, sizeof(struct sata_fis_h2d));
-
-   cfis->fis_type = SATA_FIS_TYPE_REGISTER_H2D;
-   cfis->pm_port_c = 0x80; /* is command */
-   cfis->command = ATA_CMD_ID_ATA;
-
-   fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, (u8 *)id, ATA_ID_WORDS * 2);
-   ata_swap_buf_le16(id, ATA_ID_WORDS);
-}
-
-static void fsl_sata_xfer_mode(int dev, u16 *id)
+static void fsl_sata_xfer_mode(fsl_sata_t *sata, u16 *id)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[de

[U-Boot] [v2 3/6] powerpc: p5040: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for P5040 platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/p5040.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p5040.dtsi b/arch/powerpc/dts/p5040.dtsi
index 8ab123d..7b8218a 100644
--- a/arch/powerpc/dts/p5040.dtsi
+++ b/arch/powerpc/dts/p5040.dtsi
@@ -58,6 +58,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 6/6] powerpc: t4240: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for T4240 platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/t4240.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t4240.dtsi b/arch/powerpc/dts/t4240.dtsi
index fc34974..3bda2fa 100644
--- a/arch/powerpc/dts/t4240.dtsi
+++ b/arch/powerpc/dts/t4240.dtsi
@@ -98,6 +98,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 4/6] powerpc: t102x: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for T102x platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/t102x.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t102x.dtsi b/arch/powerpc/dts/t102x.dtsi
index c49fd21..7d3f7c5 100644
--- a/arch/powerpc/dts/t102x.dtsi
+++ b/arch/powerpc/dts/t102x.dtsi
@@ -48,6 +48,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 2/6] powerpc: p3041: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for P3041 platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/p3041.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p3041.dtsi b/arch/powerpc/dts/p3041.dtsi
index 197896d..23bde81 100644
--- a/arch/powerpc/dts/p3041.dtsi
+++ b/arch/powerpc/dts/p3041.dtsi
@@ -59,6 +59,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 5/6] powerpc: t104x: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for T104x platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/t104x.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t104x.dtsi b/arch/powerpc/dts/t104x.dtsi
index 5998967..fe6cc3c 100644
--- a/arch/powerpc/dts/t104x.dtsi
+++ b/arch/powerpc/dts/t104x.dtsi
@@ -58,6 +58,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 1/6] powerpc: p2041: dts: Add Sata DT nodes

2019-10-23 Thread Peng Ma
This patch is to add sata node for P2041 platform

Signed-off-by: Peng Ma 
---
Changed for v2:
- Change "Added" to "Add"

 arch/powerpc/dts/p2041.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p2041.dtsi b/arch/powerpc/dts/p2041.dtsi
index 55f7adc..239439d 100644
--- a/arch/powerpc/dts/p2041.dtsi
+++ b/arch/powerpc/dts/p2041.dtsi
@@ -59,6 +59,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 2/2] ata: sata_sil: Add DM support for Silicon sata driver

2019-10-23 Thread Peng Ma
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 
---
Changed for v2:
- Rewrite the subject and description

 drivers/ata/Kconfig|   1 +
 drivers/ata/sata_sil.c | 539 +++--
 drivers/ata/sata_sil.h |  14 +-
 3 files changed, 357 insertions(+), 197 deletions(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 57121f6..fe589d3 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -110,6 +110,7 @@ config SATA_MV
 config SATA_SIL
bool "Enable Silicon Image SIL3131 / SIL3132 / SIL3124 SATA driver 
support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SIL3131, SIL3132 and SIL3124
  SATA controllers.
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index a8598d9..20502b3 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2011 Freescale Semiconductor, Inc.
+ * Copyright 2019 NXP
  * Author: Tang Yuantian 
  */
 
@@ -14,18 +15,29 @@
 #include 
 #include 
 #include 
+
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#endif
+
 #include "sata_sil.h"
 
-/* Convert sectorsize to wordsize */
-#define ATA_SECTOR_WORDS (ATA_SECT_SIZE/2)
 #define virt_to_bus(devno, v)  pci_virt_to_mem(devno, (void *) (v))
 
+/* just compatible ahci_ops */
+struct sil_ops {
+   int *rev0;
+   int *rev1;
+   int (*scan)(struct udevice *dev);
+};
+
 static struct sata_info sata_info;
 
 static struct pci_device_id supported[] = {
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124},
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124) },
{}
 };
 
@@ -113,9 +125,9 @@ static int sil_init_port(void *port)
return 0;
 }
 
-static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis)
+static void sil_read_fis(struct sil_sata *sata, int tag,
+struct sata_fis_d2h *fis)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
struct sil_prb *prb;
int i;
@@ -128,9 +140,9 @@ static void sil_read_fis(int dev, int tag, struct 
sata_fis_d2h *fis)
*dst++ = readl(src++);
 }
 
-static int sil_exec_cmd(int dev, struct sil_cmd_block *pcmd, int tag)
+static int sil_exec_cmd(struct sil_sata *sata, struct sil_cmd_block *pcmd,
+   int tag)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
u64 paddr = virt_to_bus(sata->devno, pcmd);
u32 irq_mask, irq_stat;
@@ -164,9 +176,8 @@ static int sil_exec_cmd(int dev, struct sil_cmd_block 
*pcmd, int tag)
return rc;
 }
 
-static int sil_cmd_set_feature(int dev)
+static int sil_cmd_set_feature(struct sil_sata *sata)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
struct sil_cmd_block cmdb, *pcmd = 
struct sata_fis_d2h fis;
u8 udma_cap;
@@ -191,9 +202,9 @@ static int sil_cmd_set_feature(int dev)
if (udma_cap == ATA_UDMA3)
pcmd->prb.fis.sector_count = XFER_UDMA_3;
 
-   ret = sil_exec_cmd(dev, pcmd, 0);
+   ret = sil_exec_cmd(sata, pcmd, 0);
if (ret) {
-   sil_read_fis(dev, 0, );
+   sil_read_fis(sata, 0, );
printf("Err: exe cmd(0x%x).\n",
readl(sata->port + PORT_SERROR));
sil_sata_dump_fis();
@@ -203,9 +214,34 @@ static int sil_cmd_set_feature(int dev)
return 0;
 }
 
-static int sil_cmd_identify_device(int dev, u16 *id)
+static void sil_sata_init_wcache(struct sil_sata *sata, u16 *id)
+{
+   if (ata_id_has_wcache(id) && ata_id_wcache_enabled(id))
+   sata->wcache = 1;
+   if (ata_id_has_flush(id))
+   sata->flush = 1;
+   if (ata_id_has_flush_ext(id))
+   sata->flush_ext = 1;
+}
+
+static void sil_sata_set_feature_by_id(struct sil_sata *sata, u16 *id)
+{
+#ifdef CONFIG_LBA48
+  

[U-Boot] [v2 1/2] ata: fsl_sata: Add DM support for Freescale PowerPC SATA driver

2019-10-23 Thread 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 
---
Changed for v2:
- Rewrite the subject and description
- Copy lba48 for new block device

 arch/powerpc/cpu/mpc85xx/cpu_init.c |  10 --
 drivers/ata/Kconfig |   1 +
 drivers/ata/fsl_sata.c  | 307 ++--
 drivers/ata/fsl_sata.h  |  13 +-
 4 files changed, 233 insertions(+), 98 deletions(-)

diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init.c 
b/arch/powerpc/cpu/mpc85xx/cpu_init.c
index cac9280..9c12c87 100644
--- a/arch/powerpc/cpu/mpc85xx/cpu_init.c
+++ b/arch/powerpc/cpu/mpc85xx/cpu_init.c
@@ -1023,16 +1023,6 @@ void arch_preboot_os(void)
mtmsr(msr);
 }
 
-#if defined(CONFIG_SATA) && defined(CONFIG_FSL_SATA)
-int sata_initialize(void)
-{
-   if (is_serdes_configured(SATA1) || is_serdes_configured(SATA2))
-   return __sata_initialize();
-
-   return 1;
-}
-#endif
-
 void cpu_secondary_init_r(void)
 {
 #ifdef CONFIG_U_QE
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 87636ae..57121f6 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -87,6 +87,7 @@ config DWC_AHSATA_AHCI
 config FSL_SATA
bool "Enable Freescale SATA controller driver support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SATA controller found in
  some Freescale PowerPC SoCs.
diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index e70a515..3261c10 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -1,7 +1,8 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2008,2010 Freescale Semiconductor, Inc.
- * Dave Liu 
+ * Copyright 2019 NXP
+ * Author: Dave Liu 
  */
 
 #include 
@@ -16,6 +17,11 @@
 #include 
 #include "fsl_sata.h"
 
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#include 
+#else
 #ifndef CONFIG_SYS_SATA1_FLAGS
#define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
 #endif
@@ -35,6 +41,7 @@ static struct fsl_sata_info fsl_sata_info[] = {
{0, 0},
 #endif
 };
+#endif
 
 static inline void sdelay(unsigned long sec)
 {
@@ -74,7 +81,11 @@ static int ata_wait_register(unsigned __iomem *addr, u32 
mask,
return (i < timeout_msec) ? 0 : -1;
 }
 
+#if !CONFIG_IS_ENABLED(BLK)
 int init_sata(int dev)
+#else
+static int init_sata(struct fsl_ata_priv *priv, int dev)
+#endif
 {
u32 length, align;
cmd_hdr_tbl_t *cmd_hdr;
@@ -110,13 +121,18 @@ int init_sata(int dev)
/* Zero all of the device driver struct */
memset((void *)sata, 0, sizeof(fsl_sata_t));
 
-   /* Save the private struct to block device struct */
-   sata_dev_desc[dev].priv = (void *)sata;
-
-   snprintf(sata->name, 12, "SATA%d", dev);
+   snprintf(sata->name, 12, "SATA%d:\n", dev);
 
/* Set the controller register base address to device struct */
+#if !CONFIG_IS_ENABLED(BLK)
+   sata_dev_desc[dev].priv = (void *)sata;
reg = (fsl_sata_reg_t *)(fsl_sata_info[dev].sata_reg_base);
+   sata->dma_flag = fsl_sata_info[dev].flags;
+#else
+   reg = (fsl_sata_reg_t *)(priv->base + priv->offset * dev);
+   sata->dma_flag = priv->flag;
+   priv->fsl_sata = sata;
+#endif
sata->reg_base = reg;
 
/* Allocate the command header table, 4 bytes aligned */
@@ -479,34 +495,16 @@ static int fsl_sata_exec_cmd(struct fsl_sata *sata, 
struct sata_fis_h2d *cfis,
return -1;
 }
 
-static void fsl_sata_identify(int dev, u16 *id)
-{
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-   struct sata_fis_h2d h2d, *cfis = 
-
-   memset(cfis, 0, sizeof(struct sata_fis_h2d));
-
-   cfis->fis_type = SATA_FIS_TYPE_REGISTER_H2D;
-   cfis->pm_port_c = 0x80; /* is command */
-   cfis->command = ATA_CMD_ID_ATA;
-
-   fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, (u8 *)id, ATA_ID_WORDS * 2);
-   ata_swap_buf_le16(id, ATA_ID_WORDS);
-}
-
-static void fsl_sata_xfer_mode(int dev, u16 *id)
+static void fsl_sata_xfer_mode(fsl_sata_t *sata, u16 *id)
 {
-   fsl_sata_t *sata = (fsl

[U-Boot] [PATCH 6/6] powerpc: t4240: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for T4240 platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/t4240.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t4240.dtsi b/arch/powerpc/dts/t4240.dtsi
index fc34974..3bda2fa 100644
--- a/arch/powerpc/dts/t4240.dtsi
+++ b/arch/powerpc/dts/t4240.dtsi
@@ -98,6 +98,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/6] powerpc: p2041: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for P2041 platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/p2041.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p2041.dtsi b/arch/powerpc/dts/p2041.dtsi
index 55f7adc..239439d 100644
--- a/arch/powerpc/dts/p2041.dtsi
+++ b/arch/powerpc/dts/p2041.dtsi
@@ -59,6 +59,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 4/6] powerpc: t102x: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for T102x platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/t102x.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t102x.dtsi b/arch/powerpc/dts/t102x.dtsi
index c49fd21..7d3f7c5 100644
--- a/arch/powerpc/dts/t102x.dtsi
+++ b/arch/powerpc/dts/t102x.dtsi
@@ -48,6 +48,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 5/6] powerpc: t104x: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for T104x platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/t104x.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/t104x.dtsi b/arch/powerpc/dts/t104x.dtsi
index 5998967..fe6cc3c 100644
--- a/arch/powerpc/dts/t104x.dtsi
+++ b/arch/powerpc/dts/t104x.dtsi
@@ -58,6 +58,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe24 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 3/6] powerpc: p5040: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for P5040 platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/p5040.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p5040.dtsi b/arch/powerpc/dts/p5040.dtsi
index 8ab123d..7b8218a 100644
--- a/arch/powerpc/dts/p5040.dtsi
+++ b/arch/powerpc/dts/p5040.dtsi
@@ -58,6 +58,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 2/6] powerpc: p3041: dts: Added Sata DT nodes

2019-10-16 Thread Peng Ma
This patch is to add sata node for P3041 platform

Signed-off-by: Peng Ma 
---
 arch/powerpc/dts/p3041.dtsi | 9 +
 1 file changed, 9 insertions(+)

diff --git a/arch/powerpc/dts/p3041.dtsi b/arch/powerpc/dts/p3041.dtsi
index 197896d..23bde81 100644
--- a/arch/powerpc/dts/p3041.dtsi
+++ b/arch/powerpc/dts/p3041.dtsi
@@ -59,6 +59,15 @@
device_type = "open-pic";
clock-frequency = <0x0>;
};
+
+   sata: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-offset = <0x1000>;
+   sata-number = <2>;
+   sata-fpdma = <0>;
+   };
};
 
pcie@ffe20 {
-- 
2.9.5

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/2] ata: fsl_sata: Add sata DM support for Freescale powerpc

2019-10-14 Thread Peng Ma
T series socs

This patch is to support Freescale sata driver with dts initialized.
We 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.
Also resolved the following problems.

= 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 
---
 drivers/ata/Kconfig|   1 +
 drivers/ata/fsl_sata.c | 296 +++--
 drivers/ata/fsl_sata.h |  10 ++
 3 files changed, 222 insertions(+), 85 deletions(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 87636ae..57121f6 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -87,6 +87,7 @@ config DWC_AHSATA_AHCI
 config FSL_SATA
bool "Enable Freescale SATA controller driver support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SATA controller found in
  some Freescale PowerPC SoCs.
diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index e70a515..986e44e 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -16,6 +16,11 @@
 #include 
 #include "fsl_sata.h"
 
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#include 
+#else
 #ifndef CONFIG_SYS_SATA1_FLAGS
#define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
 #endif
@@ -35,6 +40,7 @@ static struct fsl_sata_info fsl_sata_info[] = {
{0, 0},
 #endif
 };
+#endif
 
 static inline void sdelay(unsigned long sec)
 {
@@ -74,7 +80,11 @@ static int ata_wait_register(unsigned __iomem *addr, u32 
mask,
return (i < timeout_msec) ? 0 : -1;
 }
 
+#if !CONFIG_IS_ENABLED(BLK)
 int init_sata(int dev)
+#else
+static int init_sata(struct fsl_ata_priv *priv, int dev)
+#endif
 {
u32 length, align;
cmd_hdr_tbl_t *cmd_hdr;
@@ -110,13 +120,18 @@ int init_sata(int dev)
/* Zero all of the device driver struct */
memset((void *)sata, 0, sizeof(fsl_sata_t));
 
-   /* Save the private struct to block device struct */
-   sata_dev_desc[dev].priv = (void *)sata;
-
-   snprintf(sata->name, 12, "SATA%d", dev);
+   snprintf(sata->name, 12, "SATA%d:\n", dev);
 
/* Set the controller register base address to device struct */
+#if !CONFIG_IS_ENABLED(BLK)
+   sata_dev_desc[dev].priv = (void *)sata;
reg = (fsl_sata_reg_t *)(fsl_sata_info[dev].sata_reg_base);
+   sata->dma_flag = fsl_sata_info[dev].flags;
+#else
+   reg = (fsl_sata_reg_t *)(priv->base + priv->offset * dev);
+   sata->dma_flag = priv->flag;
+   priv->fsl_sata = sata;
+#endif
sata->reg_base = reg;
 
/* Allocate the command header table, 4 bytes aligned */
@@ -479,34 +494,16 @@ static int fsl_sata_exec_cmd(struct fsl_sata *sata, 
struct sata_fis_h2d *cfis,
return -1;
 }
 
-static void fsl_sata_identify(int dev, u16 *id)
-{
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-   struct sata_fis_h2d h2d, *cfis = 
-
-   memset(cfis, 0, sizeof(struct sata_fis_h2d));
-
-   cfis->fis_type = SATA_FIS_TYPE_REGISTER_H2D;
-   cfis->pm_port_c = 0x80; /* is command */
-   cfis->command = ATA_CMD_ID_ATA;
-
-   fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, (u8 *)id, ATA_ID_WORDS * 2);
-   ata_swap_buf_le16(id, ATA_ID_WORDS);
-}
-
-static void fsl_sata_xfer_mode(int dev, u16 *id)
+static void fsl_sata_xfer_mode(fsl_sata_t *sata, u16 *id)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-
sata->pio = id[ATA_ID_PIO_MODES];
sata->mwdma = id[ATA_ID_MWDMA_MODES];
sata->udma = id[ATA_ID_UDMA_MODES];
debug("pio %04x, mwdma %04x, udma %04x\n\r", sata->pio, sata->mwdma, 
sata->udma);
 }
 
-static void fsl_sata_set_features(int dev)
+static void fsl_sata_set_features(fsl_sata_t *sata)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
struct sata_fis_h2d h2d, *cfis = 
u8 udma_cap;
 
@@ -533,9 +530,9 @@ static void fsl_sata_set_features(int dev)
fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, NULL, 0);
 }
 
-static u32 fsl_sata_rw_cmd(int dev, u32 start, u32 blkcnt, u8 *buffer, int 
is_write)
+static u32 fsl_sata_rw_cmd(fsl_sata_t *sata, u32 start, u32 blkcnt, u8 *buffer,
+  int is_write)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
struct sata_fis_h2d h2d, *cfis = 
u32 block;
 

[U-Boot] [PATCH 2/2] ata: sata_sil: Add sata DM support for Silicon driver

2019-10-14 Thread Peng Ma
This patch is to support Silicon(SIL3131 / SIL3132 / SIL3124) sata driver
with dts initialized.
This changed same as fsl_sata.c some of our socs need to use this
driver such as P series platforms.
Also resolved the following problems.

= 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 
---
 drivers/ata/Kconfig|   1 +
 drivers/ata/sata_sil.c | 538 +++--
 drivers/ata/sata_sil.h |  13 +-
 3 files changed, 355 insertions(+), 197 deletions(-)

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 57121f6..fe589d3 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -110,6 +110,7 @@ config SATA_MV
 config SATA_SIL
bool "Enable Silicon Image SIL3131 / SIL3132 / SIL3124 SATA driver 
support"
select LIBATA
+   select AHCI if BLK
help
  Enable this driver to support the SIL3131, SIL3132 and SIL3124
  SATA controllers.
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index a8598d9..22e9d0c 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -14,18 +14,29 @@
 #include 
 #include 
 #include 
+
+#if CONFIG_IS_ENABLED(BLK)
+#include 
+#include 
+#endif
+
 #include "sata_sil.h"
 
-/* Convert sectorsize to wordsize */
-#define ATA_SECTOR_WORDS (ATA_SECT_SIZE/2)
 #define virt_to_bus(devno, v)  pci_virt_to_mem(devno, (void *) (v))
 
+/* just compatible ahci_ops */
+struct sil_ops {
+   int *rev0;
+   int *rev1;
+   int (*scan)(struct udevice *dev);
+};
+
 static struct sata_info sata_info;
 
 static struct pci_device_id supported[] = {
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124},
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124) },
{}
 };
 
@@ -113,9 +124,9 @@ static int sil_init_port(void *port)
return 0;
 }
 
-static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis)
+static void sil_read_fis(struct sil_sata *sata, int tag,
+struct sata_fis_d2h *fis)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
struct sil_prb *prb;
int i;
@@ -128,9 +139,9 @@ static void sil_read_fis(int dev, int tag, struct 
sata_fis_d2h *fis)
*dst++ = readl(src++);
 }
 
-static int sil_exec_cmd(int dev, struct sil_cmd_block *pcmd, int tag)
+static int sil_exec_cmd(struct sil_sata *sata, struct sil_cmd_block *pcmd,
+   int tag)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
u64 paddr = virt_to_bus(sata->devno, pcmd);
u32 irq_mask, irq_stat;
@@ -164,9 +175,8 @@ static int sil_exec_cmd(int dev, struct sil_cmd_block 
*pcmd, int tag)
return rc;
 }
 
-static int sil_cmd_set_feature(int dev)
+static int sil_cmd_set_feature(struct sil_sata *sata)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
struct sil_cmd_block cmdb, *pcmd = 
struct sata_fis_d2h fis;
u8 udma_cap;
@@ -191,9 +201,9 @@ static int sil_cmd_set_feature(int dev)
if (udma_cap == ATA_UDMA3)
pcmd->prb.fis.sector_count = XFER_UDMA_3;
 
-   ret = sil_exec_cmd(dev, pcmd, 0);
+   ret = sil_exec_cmd(sata, pcmd, 0);
if (ret) {
-   sil_read_fis(dev, 0, );
+   sil_read_fis(sata, 0, );
printf("Err: exe cmd(0x%x).\n",
readl(sata->port + PORT_SERROR));
sil_sata_dump_fis();
@@ -203,9 +213,34 @@ static int sil_cmd_set_feature(int dev)
return 0;
 }
 
-static int sil_cmd_identify_device(int dev, u16 *id)
+static void sil_sata_init_wcache(struct sil_sata *sata, u16 *id)
+{
+   if (ata_id_has_wcache(id) && ata_id_wcache_enabled(id))
+   sata->wcache = 1;
+   if (ata_id_has_flush(id))
+   sata->flush = 1;
+   if (ata_id_has_flush_ext(id))
+   sata->flush_ext = 1;
+}
+
+static void sil_sata_set_feature_by_id(struct sil_sata *sata, u16 *id)
+{
+#ifdef CONFIG_LBA48
+   /* Check if support LBA48 */
+   if (ata_id_has_lba48(id)) {
+   sata->lba48 = 1;
+   debug("Device supports LBA48\n");
+   } else {
+   debug("Device supports LBA

Re: [U-Boot] [EXT] Re: [RFC 1/3] scsi: ata: Add DM SCSI interface to support None AHCI sata driver

2019-09-29 Thread Peng Ma
Hi Stefan,

Thanks for your opinion.

>-Original Message-
>From: Stefan Roese 
>Sent: 2019年9月29日 19:46
>To: Peng Ma ; s...@chromium.org; Prabhakar X
>; ja...@openedev.com;
>bmeng...@gmail.com; Andy Tang 
>Cc: michal.si...@xilinx.com; andre.przyw...@arm.com; sm...@web.de;
>u-boot@lists.denx.de; Robert Hancock 
>Subject: [EXT] Re: [RFC 1/3] scsi: ata: Add DM SCSI interface to support None
>AHCI sata driver
>
>Caution: EXT Email
>
>Hi Peng,
>
>On 25.09.19 11:54, Peng Ma wrote:
>> In driver/ata. If the sata driver support AHCI mode, there will
>> provides a complete set of SCSI interface. If the sata is not support
>> AHCI
>> mode(NONE_AHCI) there will not provides the SCSI interface.
>>
>> This patch is to support SCSI interface for None AHCI sata such as
>> fsl_sata.c sil_sata.c etc.
>>
>> Signed-off-by: Peng Ma 
>> ---
>>   drivers/ata/Kconfig  |  17 +++-
>>   drivers/ata/Makefile |   2 +
>>   drivers/ata/ata-uclass.c |  16 
>>   drivers/ata/ata.c| 244
>+++
>>   drivers/ata/sata.c   |   2 +-
>>   drivers/ata/scsi_ata.h   |  43 +
>>   include/dm/uclass-id.h   |   1 +
>>   7 files changed, 323 insertions(+), 2 deletions(-)
>>   create mode 100644 drivers/ata/ata-uclass.c
>>   create mode 100644 drivers/ata/ata.c
>>   create mode 100644 drivers/ata/scsi_ata.h
>
>Please take a look at commit 0506620f4f49 ("sata: sata_mv: Add DM support
>to enable CONFIG_BLK usage"). Perhaps this is a way to migrate these drivers
>to DM / BLK as well.
>
[Peng Ma] I saw This changed is not support SCSI command.
>BTW: I agree with Robert, that SCSI is a bit misleading here. We are not using
>the SCSI commands on the boards with this Marvell (non-AHCI) SATA driver.
>The SATA command is more appropriate in this case in my eyes.
>
[Peng Ma] OK, you mean There is no need to support SCSI command for Non-AHCI
driver? We still use SATA command for Non-AHCI driver here?

Best Regards,
Peng
>Thanks,
>Stefan
>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> 87636ae..3d6db2e 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -7,6 +7,13 @@ config AHCI
>> operations at present. The block device interface has not been
>converted
>> to driver model.
>>
>> +config NONE_AHCI
>> + bool "Support None AHCI SATA controllers with driver model"
>> + depends on DM
>> + help
>> +   This enables a uclass for disk controllers in U-Boot. such as AHCI. 
>> It
>> +   support None AHCI sata with DM mode
>> +
>>   config SATA
>>   bool "Support SATA controllers"
>>   select HAVE_BLOCK_DEVICE
>> @@ -32,6 +39,15 @@ config SCSI_AHCI
>>   help
>> Enable this to allow interfacing SATA devices via the SCSI layer.
>>
>> +config SCSI_NONE_AHCI
>> + bool "Enable SCSI interface to None AHCI SATA devices"
>> + select LIBATA
>> + select SCSI
>> + select DM_SCSI
>> + help
>> +   Enable this to allow interfacing None AHCI SATA devices via the DM
>> +   SCSI layer.
>> +
>>   menu "SATA/SCSI device support"
>>
>>   config AHCI_PCI
>> @@ -49,7 +65,6 @@ config SATA_CEVA
>> ZynqMP. Support up to 2 external devices. Complient with SATA
>3.1 and
>> AHCI 1.3 specifications with hot-plug detect feature.
>>
>> -
>>   config DWC_AHCI
>>   bool "Enable Synopsys DWC AHCI driver support"
>>   select SCSI_AHCI
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index
>> 6e03384..cddbdc8 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -6,8 +6,10 @@
>>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>>   obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
>>   obj-$(CONFIG_AHCI) += ahci-uclass.o
>> +obj-$(CONFIG_NONE_AHCI) += ata-uclass.o
>>   obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
>>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>> +obj-$(CONFIG_SCSI_NONE_AHCI) += ata.o
>>   obj-$(CONFIG_DWC_AHSATA) += dwc_ahsata.o
>>   obj-$(CONFIG_FSL_SATA) += fsl_sata.o
>>   obj-$(CONFIG_LIBATA) += libata.o
>> diff --git a/drivers/ata/ata-uclass.c b/drivers/ata/ata-uclass.c new
>> file mode 100644 index 000..e2cc499
>> --- /dev/null
>> +++ b/drivers/ata/ata-uclass.c
>> @@ -0,0 +1,16 @@
>> +// SPDX-License-Identifier: GPL-2.0+
>> +/*
>> + * Copyright (c) 2019 NXP, Inc
>> + * Written by Peng 

Re: [U-Boot] [EXT] Re: [RFC 1/3] scsi: ata: Add DM SCSI interface to support None AHCI sata driver

2019-09-25 Thread Peng Ma
Hi Robert,

Thanks very much for your comments, please see my comments inline.

>-Original Message-
>From: Robert Hancock 
>Sent: 2019年9月25日 23:50
>To: Peng Ma ; s...@chromium.org; Prabhakar X
>; ja...@openedev.com;
>bmeng...@gmail.com; Andy Tang 
>Cc: andre.przyw...@arm.com; michal.si...@xilinx.com;
>u-boot@lists.denx.de; sm...@web.de; s...@denx.de
>Subject: [EXT] Re: [U-Boot] [RFC 1/3] scsi: ata: Add DM SCSI interface to
>support None AHCI sata driver
>
>Caution: EXT Email
>
>On 2019-09-25 3:54 a.m., Peng Ma wrote:
>> In driver/ata. If the sata driver support AHCI mode, there will
>> provides a complete set of SCSI interface. If the sata is not support
>> AHCI
>> mode(NONE_AHCI) there will not provides the SCSI interface.
>>
>> This patch is to support SCSI interface for None AHCI sata such as
>> fsl_sata.c sil_sata.c etc.
>
>The patch rationale seems strange - SATA controllers don't inherently provide a
>SCSI interface regardless of whether they are AHCI or not. In the Linux kernel,
>SATA devices are supported using the SCSI layer via SCSI to ATA translation,
>which is a standardized mapping, largely in order to reuse a bunch of code -
>and U-Boot could choose to do the same
>- but AHCI controllers are handled the same way as all other SATA controllers 
>in
>that regard by Linux, so I'm not sure why that distinction is being made here.
>
[Peng Ma] 
For Linux:
If the sata controller fallow AHCI:
Vendor_init > ahci_platform_init_host(struct ata_port_operations 
ahci_ops) ---> ata_host_register > ata_scsi_add_hosts ..
If the sata controller not fallow AHCI:
Vendor_init(struct ata_port_operations sata_xxx _ops) > 
ata_host_register > ata_scsi_add_hosts ..

For U-boot:
If the sata controller fallow AHCI:
The devices:
UCLASS_BLK>UCLASS_SCSI>UCLASS_AHCI(just call ata interface)
The drivers:
Vendor_init > ahci_probe_scsi(struct scsi_ops scsi_ops) then the 
devices will bind(ahci_bind_scsi) the driver during uboot init.
If the sata controller not fallow AHCI:
Not Support:
We shold support for None AHCI sata with scsi interface like as follows:
The devices:
UCLASS_BLK>UCLASS_SCSI>UCLASS_NONE_AHCI
The drivers:
Vendor_init (struct scsi_ops scsi_ops) then the devices will 
bind(ata_bind_scsi) the driver during uboot init.

Note: On U-boot the The ATA lib just provide some common interface.
Best Regards,
Peng

>>
>> Signed-off-by: Peng Ma 
>> ---
>>  drivers/ata/Kconfig  |  17 +++-
>>  drivers/ata/Makefile |   2 +
>>  drivers/ata/ata-uclass.c |  16 
>>  drivers/ata/ata.c| 244
>+++
>>  drivers/ata/sata.c   |   2 +-
>>  drivers/ata/scsi_ata.h   |  43 +
>>  include/dm/uclass-id.h   |   1 +
>>  7 files changed, 323 insertions(+), 2 deletions(-)  create mode
>> 100644 drivers/ata/ata-uclass.c  create mode 100644 drivers/ata/ata.c
>> create mode 100644 drivers/ata/scsi_ata.h
>>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> 87636ae..3d6db2e 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -7,6 +7,13 @@ config AHCI
>> operations at present. The block device interface has not been
>converted
>> to driver model.
>>
>> +config NONE_AHCI
>> + bool "Support None AHCI SATA controllers with driver model"
>> + depends on DM
>> + help
>> +   This enables a uclass for disk controllers in U-Boot. such as AHCI. 
>> It
>> +   support None AHCI sata with DM mode
>> +
>>  config SATA
>>   bool "Support SATA controllers"
>>   select HAVE_BLOCK_DEVICE
>> @@ -32,6 +39,15 @@ config SCSI_AHCI
>>   help
>> Enable this to allow interfacing SATA devices via the SCSI layer.
>>
>> +config SCSI_NONE_AHCI
>> + bool "Enable SCSI interface to None AHCI SATA devices"
>> + select LIBATA
>> + select SCSI
>> + select DM_SCSI
>> + help
>> +   Enable this to allow interfacing None AHCI SATA devices via the DM
>> +   SCSI layer.
>> +
>>  menu "SATA/SCSI device support"
>>
>>  config AHCI_PCI
>> @@ -49,7 +65,6 @@ config SATA_CEVA
>> ZynqMP. Support up to 2 external devices. Complient with SATA
>3.1 and
>> AHCI 1.3 specifications with hot-plug detect feature.
>>
>> -
>>  config DWC_AHCI
>>   bool "Enable Synopsys DWC AHCI driver support"
>>   select SCSI_AHCI
>> diff --git a/dr

[U-Boot] [RFC 1/3] scsi: ata: Add DM SCSI interface to support None AHCI sata driver

2019-09-25 Thread Peng Ma
In driver/ata. If the sata driver support AHCI mode, there will provides
a complete set of SCSI interface. If the sata is not support AHCI
mode(NONE_AHCI) there will not provides the SCSI interface.

This patch is to support SCSI interface for None AHCI sata such as fsl_sata.c
sil_sata.c etc.

Signed-off-by: Peng Ma 
---
 drivers/ata/Kconfig  |  17 +++-
 drivers/ata/Makefile |   2 +
 drivers/ata/ata-uclass.c |  16 
 drivers/ata/ata.c| 244 +++
 drivers/ata/sata.c   |   2 +-
 drivers/ata/scsi_ata.h   |  43 +
 include/dm/uclass-id.h   |   1 +
 7 files changed, 323 insertions(+), 2 deletions(-)
 create mode 100644 drivers/ata/ata-uclass.c
 create mode 100644 drivers/ata/ata.c
 create mode 100644 drivers/ata/scsi_ata.h

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 87636ae..3d6db2e 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -7,6 +7,13 @@ config AHCI
  operations at present. The block device interface has not been 
converted
  to driver model.
 
+config NONE_AHCI
+   bool "Support None AHCI SATA controllers with driver model"
+   depends on DM
+   help
+ This enables a uclass for disk controllers in U-Boot. such as AHCI. It
+ support None AHCI sata with DM mode
+
 config SATA
bool "Support SATA controllers"
select HAVE_BLOCK_DEVICE
@@ -32,6 +39,15 @@ config SCSI_AHCI
help
  Enable this to allow interfacing SATA devices via the SCSI layer.
 
+config SCSI_NONE_AHCI
+   bool "Enable SCSI interface to None AHCI SATA devices"
+   select LIBATA
+   select SCSI
+   select DM_SCSI
+   help
+ Enable this to allow interfacing None AHCI SATA devices via the DM
+ SCSI layer.
+
 menu "SATA/SCSI device support"
 
 config AHCI_PCI
@@ -49,7 +65,6 @@ config SATA_CEVA
  ZynqMP. Support up to 2 external devices. Complient with SATA 3.1 and
  AHCI 1.3 specifications with hot-plug detect feature.
 
-
 config DWC_AHCI
bool "Enable Synopsys DWC AHCI driver support"
select SCSI_AHCI
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 6e03384..cddbdc8 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -6,8 +6,10 @@
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
 obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
+obj-$(CONFIG_NONE_AHCI) += ata-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
+obj-$(CONFIG_SCSI_NONE_AHCI) += ata.o
 obj-$(CONFIG_DWC_AHSATA) += dwc_ahsata.o
 obj-$(CONFIG_FSL_SATA) += fsl_sata.o
 obj-$(CONFIG_LIBATA) += libata.o
diff --git a/drivers/ata/ata-uclass.c b/drivers/ata/ata-uclass.c
new file mode 100644
index 000..e2cc499
--- /dev/null
+++ b/drivers/ata/ata-uclass.c
@@ -0,0 +1,16 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (c) 2019 NXP, Inc
+ * Written by Peng Ma
+ */
+
+#include 
+#include 
+#include 
+#include "scsi_ata.h"
+
+UCLASS_DRIVER(ata) = {
+   .id = UCLASS_NONE_AHCI,
+   .name   = "ata",
+   .per_device_auto_alloc_size = sizeof(struct ata_uc_priv),
+};
diff --git a/drivers/ata/ata.c b/drivers/ata/ata.c
new file mode 100644
index 000..bdb7403
--- /dev/null
+++ b/drivers/ata/ata.c
@@ -0,0 +1,244 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (C) NXP, Inc. 2019.
+ * Author: Peng Ma
+ *
+ * with the reference on libata and none ahci drvier in kernel
+ *
+ * This driver provides a DM SCSI interface to None AHCI SATA.
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#include "scsi_ata.h"
+
+int ata_bind_scsi(struct udevice *ata_dev, struct udevice **devp)
+{
+   int ret;
+   struct udevice *dev;
+
+   ret =  device_bind_driver(ata_dev, "ata_scsi", "ata_scsi", );
+   if (ret)
+   return ret;
+   *devp = dev;
+
+   return 0;
+}
+
+static int scsi_exec_internal(struct udevice *dev, struct scsi_cmd *pccb,
+ bool is_write)
+{
+   u32 temp;
+   u16 blocks = 0;
+   int ret = -ENODEV;
+   lbaint_t start = 0;
+   u8 port = pccb->target;
+   u8 *buffer = pccb->pdata;
+   struct ata_uc_priv *uc_priv = dev_get_uclass_priv(dev);
+
+   /* Retrieve the base LBA number from the ccb structure. */
+   if (pccb->cmd[0] == SCSI_READ16) {
+   memcpy(, pccb->cmd + 2, 8);
+   start = be64_to_cpu(start);
+   } else {
+   memcpy(, pccb->cmd + 2, 4);
+   start = be32_to_cpu(temp);
+   }
+
+   if (pccb->cmd[0] == SCSI_READ16)
+   blocks = (((u16)pccb->cmd[13]) << 8) | ((u16)pccb->cmd[14]);
+   else
+   blocks = (((u16)pccb->cmd[7]) << 8) | ((u16)pccb-&g

[U-Boot] [RFC 3/3] ata: fsl_sata: Add sata DM support for Freescale powerpc socs

2019-09-25 Thread Peng Ma
This sata is a None AHCI sata device. To support DM mode with SCSI interface
we use the SCSI_NONE_AHCI.

This patch is an example(normal sata) to fit "support SCSI interface for None 
AHCI sata"

Signed-off-by: Peng Ma 
---
 drivers/ata/fsl_sata.c | 300 +
 drivers/ata/fsl_sata.h |   9 ++
 2 files changed, 211 insertions(+), 98 deletions(-)

diff --git a/drivers/ata/fsl_sata.c b/drivers/ata/fsl_sata.c
index e70a515..7bfeb9b 100644
--- a/drivers/ata/fsl_sata.c
+++ b/drivers/ata/fsl_sata.c
@@ -15,7 +15,11 @@
 #include 
 #include 
 #include "fsl_sata.h"
-
+#if CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+#include "scsi_ata.h"
+#include 
+#include 
+#else
 #ifndef CONFIG_SYS_SATA1_FLAGS
#define CONFIG_SYS_SATA1_FLAGS  FLAGS_DMA
 #endif
@@ -35,6 +39,7 @@ static struct fsl_sata_info fsl_sata_info[] = {
{0, 0},
 #endif
 };
+#endif
 
 static inline void sdelay(unsigned long sec)
 {
@@ -74,7 +79,11 @@ static int ata_wait_register(unsigned __iomem *addr, u32 
mask,
return (i < timeout_msec) ? 0 : -1;
 }
 
+#if !CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
 int init_sata(int dev)
+#else
+static int init_sata(struct fsl_ata_priv *priv)
+#endif
 {
u32 length, align;
cmd_hdr_tbl_t *cmd_hdr;
@@ -85,6 +94,10 @@ int init_sata(int dev)
int i;
fsl_sata_t *sata;
 
+#if CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+   int dev = priv->number;
+#endif
+
if (dev < 0 || dev > (CONFIG_SYS_SATA_MAX_DEVICE - 1)) {
printf("the sata index %d is out of ranges\n\r", dev);
return -1;
@@ -110,13 +123,17 @@ int init_sata(int dev)
/* Zero all of the device driver struct */
memset((void *)sata, 0, sizeof(fsl_sata_t));
 
-   /* Save the private struct to block device struct */
-   sata_dev_desc[dev].priv = (void *)sata;
-
snprintf(sata->name, 12, "SATA%d", dev);
 
/* Set the controller register base address to device struct */
+#if !CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+   sata_dev_desc[dev].priv = (void *)sata;
reg = (fsl_sata_reg_t *)(fsl_sata_info[dev].sata_reg_base);
+   sata->dma_flag = fsl_sata_info[dev].flags;
+#else
+   reg = (fsl_sata_reg_t *)priv->base;
+   sata->dma_flag = priv->flag;
+#endif
sata->reg_base = reg;
 
/* Allocate the command header table, 4 bytes aligned */
@@ -252,6 +269,9 @@ int init_sata(int dev)
else if ((val32 & SSTATUS_SPD_MASK) == SSTATUS_SPD_GEN2)
printf("(3 Gbps)\n\r");
 
+#if CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+   priv->fsl_sata = sata;
+#endif
return 0;
 }
 
@@ -479,34 +499,16 @@ static int fsl_sata_exec_cmd(struct fsl_sata *sata, 
struct sata_fis_h2d *cfis,
return -1;
 }
 
-static void fsl_sata_identify(int dev, u16 *id)
+static void fsl_sata_xfer_mode(fsl_sata_t *sata, u16 *id)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-   struct sata_fis_h2d h2d, *cfis = 
-
-   memset(cfis, 0, sizeof(struct sata_fis_h2d));
-
-   cfis->fis_type = SATA_FIS_TYPE_REGISTER_H2D;
-   cfis->pm_port_c = 0x80; /* is command */
-   cfis->command = ATA_CMD_ID_ATA;
-
-   fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, (u8 *)id, ATA_ID_WORDS * 2);
-   ata_swap_buf_le16(id, ATA_ID_WORDS);
-}
-
-static void fsl_sata_xfer_mode(int dev, u16 *id)
-{
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
-
sata->pio = id[ATA_ID_PIO_MODES];
sata->mwdma = id[ATA_ID_MWDMA_MODES];
sata->udma = id[ATA_ID_UDMA_MODES];
debug("pio %04x, mwdma %04x, udma %04x\n\r", sata->pio, sata->mwdma, 
sata->udma);
 }
 
-static void fsl_sata_set_features(int dev)
+static void fsl_sata_set_features(fsl_sata_t *sata)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
struct sata_fis_h2d h2d, *cfis = 
u8 udma_cap;
 
@@ -533,9 +535,9 @@ static void fsl_sata_set_features(int dev)
fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, NULL, 0);
 }
 
-static u32 fsl_sata_rw_cmd(int dev, u32 start, u32 blkcnt, u8 *buffer, int 
is_write)
+static u32 fsl_sata_rw_cmd(fsl_sata_t *sata, u32 start, u32 blkcnt, u8 *buffer,
+  int is_write)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
struct sata_fis_h2d h2d, *cfis = 
u32 block;
 
@@ -558,9 +560,8 @@ static u32 fsl_sata_rw_cmd(int dev, u32 start, u32 blkcnt, 
u8 *buffer, int is_wr
return blkcnt;
 }
 
-static void fsl_sata_flush_cache(int dev)
+static void fsl_sata_flush_cache(fsl_sata_t *sata)
 {
-   fsl_sata_t *sata = (fsl_sata_t *)sata_dev_desc[dev].priv;
struct sata_fis_h2d h2d, *cfis = 
 
memset(cfis, 0, sizeof(struct sata_fis_h2d));
@@ -572,9 +573,9 @@ static void fsl_sata_flush_cache(int dev)
fsl_sata_exec_cmd(sata, cfis, CMD_ATA, 0, NUL

[U-Boot] [RFC 2/3] ata: sata_sil: Add sata DM support for Silicon driver

2019-09-25 Thread Peng Ma
This sata is a None AHCI sata device. It belongs to PCI sata. To support
DM mode with SCSI interface we use the SCSI_NONE_AHCI.

This patch is an example(pci sata) to fit "support SCSI interface for None AHCI 
sata"

Signed-off-by: Peng Ma 
---
 drivers/ata/sata_sil.c | 515 +++--
 drivers/ata/sata_sil.h |  12 +-
 2 files changed, 332 insertions(+), 195 deletions(-)

diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index a8598d9..c4ac640 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -14,18 +14,22 @@
 #include 
 #include 
 #include 
+#if CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+#include "scsi_ata.h"
+#include 
+#include 
+#endif
 #include "sata_sil.h"
 
 /* Convert sectorsize to wordsize */
-#define ATA_SECTOR_WORDS (ATA_SECT_SIZE/2)
 #define virt_to_bus(devno, v)  pci_virt_to_mem(devno, (void *) (v))
 
 static struct sata_info sata_info;
 
 static struct pci_device_id supported[] = {
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132},
-   {PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124},
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3131) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3132) },
+   { PCI_DEVICE(PCI_VENDOR_ID_SILICONIMAGE, PCI_DEVICE_ID_SIL3124) },
{}
 };
 
@@ -113,9 +117,9 @@ static int sil_init_port(void *port)
return 0;
 }
 
-static void sil_read_fis(int dev, int tag, struct sata_fis_d2h *fis)
+static void sil_read_fis(struct sil_sata *sata, int tag,
+struct sata_fis_d2h *fis)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
struct sil_prb *prb;
int i;
@@ -128,9 +132,9 @@ static void sil_read_fis(int dev, int tag, struct 
sata_fis_d2h *fis)
*dst++ = readl(src++);
 }
 
-static int sil_exec_cmd(int dev, struct sil_cmd_block *pcmd, int tag)
+static int sil_exec_cmd(struct sil_sata *sata, struct sil_cmd_block *pcmd,
+   int tag)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
void *port = sata->port;
u64 paddr = virt_to_bus(sata->devno, pcmd);
u32 irq_mask, irq_stat;
@@ -164,9 +168,8 @@ static int sil_exec_cmd(int dev, struct sil_cmd_block 
*pcmd, int tag)
return rc;
 }
 
-static int sil_cmd_set_feature(int dev)
+static int sil_cmd_set_feature(struct sil_sata *sata)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
struct sil_cmd_block cmdb, *pcmd = 
struct sata_fis_d2h fis;
u8 udma_cap;
@@ -191,9 +194,9 @@ static int sil_cmd_set_feature(int dev)
if (udma_cap == ATA_UDMA3)
pcmd->prb.fis.sector_count = XFER_UDMA_3;
 
-   ret = sil_exec_cmd(dev, pcmd, 0);
+   ret = sil_exec_cmd(sata, pcmd, 0);
if (ret) {
-   sil_read_fis(dev, 0, );
+   sil_read_fis(sata, 0, );
printf("Err: exe cmd(0x%x).\n",
readl(sata->port + PORT_SERROR));
sil_sata_dump_fis();
@@ -203,9 +206,44 @@ static int sil_cmd_set_feature(int dev)
return 0;
 }
 
-static int sil_cmd_identify_device(int dev, u16 *id)
+static void sil_sata_init_wcache(struct sil_sata *sata, u16 *id)
+{
+   if (ata_id_has_wcache(id) && ata_id_wcache_enabled(id))
+   sata->wcache = 1;
+   if (ata_id_has_flush(id))
+   sata->flush = 1;
+   if (ata_id_has_flush_ext(id))
+   sata->flush_ext = 1;
+}
+
+static void sil_sata_set_feature_by_id(struct sil_sata *sata, u16 *id)
+{
+#ifdef CONFIG_LBA48
+   /* Check if support LBA48 */
+   if (ata_id_has_lba48(id)) {
+#if !CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+   sata_dev_desc[sata->id].lba48 = 1;
+#endif
+   sata->lba48 = 1;
+   debug("Device supports LBA48\n");
+   } else {
+   debug("Device supports LBA28\n");
+   }
+#endif
+
+   sil_sata_init_wcache(sata, id);
+   sil_cmd_set_feature(sata);
+}
+
+#if !CONFIG_IS_ENABLED(SCSI_NONE_AHCI)
+static int sil_cmd_identify_device(struct sil_sata *sata, u16 *id)
 {
-   struct sil_sata *sata = sata_dev_desc[dev].priv;
+#else
+static int sil_cmd_identify_device(struct udevice *dev, u16 *id, u8 port)
+{
+   struct sil_sata_priv *priv = dev_get_priv(dev);
+   sil_sata_t *sata = priv->sil_sata_desc[port];
+#endif
struct sil_cmd_block cmdb, *pcmd = 
struct sata_fis_d2h fis;
int ret;
@@ -220,29 +258,29 @@ static int sil_cmd_identify_device(int dev, u16 *id)
pcmd->sge.cnt = cpu_to_le32(sizeof(id[0]) * ATA_ID_WORDS);
pcmd->sge.flags = cpu_to_le32(SGE_TRM);
 
-   ret = sil_exec_cmd(dev, pcmd, 0);
+   ret = sil_exec_cmd(sata, pcmd, 0);
if (ret) {
-   si

[U-Boot] [PATCH] ARM: dts: ls1021a: Fixed reg for sata node

2019-05-28 Thread Peng Ma
This patch is to fixed the reg read to "0" for armv7
architecture.

Signed-off-by: Peng Ma 
---
 arch/arm/dts/ls1021a.dtsi |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/dts/ls1021a.dtsi b/arch/arm/dts/ls1021a.dtsi
index 5bde3f3..0e00ac2 100644
--- a/arch/arm/dts/ls1021a.dtsi
+++ b/arch/arm/dts/ls1021a.dtsi
@@ -408,8 +408,8 @@
compatible = "fsl,ls1021a-ahci";
/* ccsr sata base */
/* ecc sata addr*/
-   reg = <0x0 0x320 0x0 0x1
-  0x0 0x20220520 0x0 0x4>;
+   reg = <0x320 0x1
+  0x20220520 0x4>;
reg-names = "sata-base", "ecc-addr";
interrupts = <0 101 4>;
status = "disabled";
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-05-23 Thread Peng Ma
Hi Stefan,

>-Original Message-
>From: Stefan Roese 
>Sent: 2019年5月23日 13:09
>To: Prabhakar Kushwaha ; Peng Ma
>; Shengzhou Liu ; Ruchika
>Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>Caution: EXT Email
>
>On 23.05.19 06:58, Prabhakar Kushwaha wrote:
>
>
>
>>>>>>>>  drivers/ata/Kconfig|   10 +
>>>>>>>>  drivers/ata/Makefile   |1 +
>>>>>>>>  drivers/ata/fsl_ahci.c | 1030
>>>>>>> 
>>>>>>>>  drivers/ata/fsl_sata.h |1 +
>>>>>>>>  4 files changed, 1042 insertions(+)
>>>>>>>>  create mode 100644 drivers/ata/fsl_ahci.c
>>>>>>>
>>>>>>> Will this patch series replace the old fsl_sata.c driver? If yes,
>>>>>>> could you remove this driver as well in this series?
>>>>>> [Peng Ma]
>>>>>> Hi Stefan,
>>>>>>
>>>>>> fsl_sata.c used to Non DM sata driver for some powerpc socs.
>>>>>> Currently We only have one board that supports dts initialization.
>>>>>> I will remove this old driver When all of our powerpc socs support DM.
>>>>>
>>>>> I see, thanks. I just wanted to know, if this new SATA driver is a
>>>>> meant as a replacement for the old non-DM driver.
>>>> [Peng Ma]
>>>> Hi Stefan,
>>>>
>>>> I am so sorry to reply late, Other Non dts powerpc board need the
>>>> old sata driver, so the new Sata driver does not replace the so far.
>>>
>>> Just curious: Which are the "other non dts powerpc boards"? Are there
>>> still many? Is there a plan to move them to DT as well? Or should
>>> they perhaps be dropped from mainline if not converted to DT? What's
>>> stopping the conversion here?
>>>
>>
>> There are too many powerpc platforms  which are not migrated to DT.
>>
>> My suggestion will be to have sata driver supporting both.  Once all
>> PowerPC platform using this SATA driver migrated, it can be dropped.
>
>I'm fine with this. Please go ahead.
>
Ok, thanks for your review.

Best Regards,
Peng
>Thanks,
>Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-05-22 Thread Peng Ma
Hi Stefan,

Do you have any questions about this patch?
Plese let me know. Thanks.

Best Regars,
Peng
>-Original Message-
>From: Stefan Roese 
>Sent: 2019年5月15日 17:23
>To: Peng Ma ; Prabhakar Kushwaha
>; Shengzhou Liu ;
>Ruchika Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>Caution: EXT Email
>
>On 15.05.19 11:04, Peng Ma wrote:
>>
>>
>>> -Original Message-----
>>> From: Stefan Roese 
>>> Sent: 2019年3月27日 18:48
>>> To: Peng Ma ; Prabhakar Kushwaha
>>> ; Shengzhou Liu
>;
>>> Ruchika Gupta 
>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>> ; York Sun ;
>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>;
>>> u-boot@lists.denx.de
>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>> Freescale powerpc socs
>>>
>>> On 27.03.19 11:41, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Stefan Roese 
>>>>> Sent: 2019年3月27日 18:01
>>>>> To: Peng Ma ; Prabhakar Kushwaha
>>>>> ; Shengzhou Liu
>>> ;
>>>>> Ruchika Gupta 
>>>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>>>> ; York Sun ;
>>>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>>> ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>>>> Freescale powerpc socs
>>>>>
>>>>> On 27.03.19 10:23, Peng Ma wrote:
>>>>>> 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 
>>>>>> ---
>>>>>> depends on:
>>>>>>   -
>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fp
>>>>> at
>>>>> chw
>>>>>
>>>
>ork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99168data
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>>
>>>
>3%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072
>>>>>
>>>
>966sdata=3Z33Z5raG%2BnbtSUpz2kPCGpefk1byOgy0%2Br3R4DUFU8%
>>>>> 3Dreserved=0
>>>>>>   -
>>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F
>>>>>> pa
>>>>>> tc
>>>>>>
>>>>>
>>>
>hwork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99167d
>>>>> ata
>>>>>>
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>> 3%7C686e
>>>>>>
>>>>>
>>>
>a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072966
>>>>> sdata=sr
>>>>>> %2BCh4UioJw0kuhOiLhc3F6keRhIH8Wflt%2BvMJnHtsY%3Dreser
>ve
>>> d=
>>>>> 0
>>>>>>
>>>>>> drivers/ata/Kconfig|   10 +
>>>>>> drivers/ata/Makefile   |1 +
>>>>>> drivers/ata/fsl_ahci.c | 1030
>>>>> 
>>>>>> drivers/ata/fsl_sata.h |1 +
>>>>>> 4 files changed, 1042 insertions(+)
>>>>>> create mode 100644 drivers/ata/fsl_ahci.c
>>>>>
>>>>> Will this patch series replace the old fsl_sata.c driver? If yes,
>>>>> could you remove this driver as well in this series?
>>>> [Peng Ma]
>>>> Hi Stefan,
>>>>
>>>> fsl_sata.c used to Non DM sata driver for some powerpc socs.
>>>> Currently We only have one board that supports dts initialization. I
>>>> will remove this old driver When all of our powerpc socs support DM.
>>>
>>> I see, thanks. I just wanted to know, if this new SATA driver is a
>>> meant as a replacement for the old non-DM driver.
>> [Peng Ma]
>> Hi Stefan,
>>
>> I am so sorry to reply late, Other Non dts powerpc board need the old
>> sata driver, so the new Sata driver does not replace the so far.
>
>Just curious: Which are the "other non dts powerpc boards"? Are there still
>many? Is there a plan to move them to DT as well? Or should they perhaps be
>dropped from mainline if not converted to DT? What's stopping the conversion
>here?
>
>Thanks,
>Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH] armv8: ls1028a: Add ecc address node for sata.

2019-05-22 Thread Peng Ma
Move the ecc addr from driver to dts

Signed-off-by: Peng Ma 
---
 arch/arm/dts/fsl-ls1028a.dtsi |5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/dts/fsl-ls1028a.dtsi b/arch/arm/dts/fsl-ls1028a.dtsi
index e6a443a..29a0858 100644
--- a/arch/arm/dts/fsl-ls1028a.dtsi
+++ b/arch/arm/dts/fsl-ls1028a.dtsi
@@ -272,9 +272,10 @@
 
sata: sata@320 {
compatible = "fsl,ls1028a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata base */
+  0x7 0x100520  0x0 0x4>;  /* ecc sata addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 133 4>;
-   clocks = < 4 1>;
status = "disabled";
};
 
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [v2 1/2] ARM: dts: Freescale: Add ecc addr for sata node

2019-05-22 Thread Peng Ma
Hi prabhakar,

>-Original Message-
>From: Prabhakar Kushwaha
>Sent: 2019年5月22日 20:33
>To: Peng Ma ; albert.u.b...@aribaud.net;
>s...@chromium.org; Fabio Estevam ; York Sun
>
>Cc: Andy Tang ; Yinbo Zhu ;
>michal.si...@xilinx.com; u-boot@lists.denx.de; Peng Ma
>
>Subject: RE: [v2 1/2] ARM: dts: Freescale: Add ecc addr for sata node
>
>
>> -Original Message-
>> From: Peng Ma 
>> Sent: Wednesday, April 17, 2019 1:19 PM
>> To: albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>> ; York Sun ; Prabhakar
>> Kushwaha 
>> Cc: Andy Tang ; Yinbo Zhu ;
>> michal.si...@xilinx.com; u-boot@lists.denx.de; Peng Ma
>> 
>> Subject: [v2 1/2] ARM: dts: Freescale: Add ecc addr for sata node
>>
>> Move the ecc addr from driver to dts.
>>
>> Signed-off-by: Peng Ma 
>> ---
>> changed for v2:
>>  - Add reg-names to improve driver code.
>>
>
>fix chechpatch warning i.e. updated subject and applied to fsl-qoriq master,
>awaiting upstream
>
>Can you send patches for ls2088a and ls1028a also
[Peng Ma] ls2088a is not need to ecc address, I will
add ls1028 patch to upstream.

Best Regards,
Peng
>
>--pk
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH] armv8: lx2160aqds: Enable sata

2019-05-21 Thread Peng Ma
Change sata node status to enable sata.

Signed-off-by: Peng Ma 
---
 arch/arm/dts/fsl-lx2160a-qds.dts |   15 +++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/arch/arm/dts/fsl-lx2160a-qds.dts b/arch/arm/dts/fsl-lx2160a-qds.dts
index 6192156..77cf2ce 100644
--- a/arch/arm/dts/fsl-lx2160a-qds.dts
+++ b/arch/arm/dts/fsl-lx2160a-qds.dts
@@ -15,3 +15,18 @@
compatible = "fsl,lx2160aqds", "fsl,lx2160a";
 };
 
+ {
+   status = "okay";
+};
+
+ {
+   status = "okay";
+};
+
+ {
+   status = "okay";
+};
+
+ {
+   status = "okay";
+};
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-05-15 Thread Peng Ma
Hi Prabhakar,

I see our platforms with powerpc. We only support T2080QDS with DTS. Is there a 
plan to move them to DT as well?
Please let Stefan Know.
Thanks.

Best Regards,
Peng
>-Original Message-
>From: Stefan Roese 
>Sent: 2019年5月15日 17:23
>To: Peng Ma ; Prabhakar Kushwaha
>; Shengzhou Liu ;
>Ruchika Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>Caution: EXT Email
>
>On 15.05.19 11:04, Peng Ma wrote:
>>
>>
>>> -Original Message-----
>>> From: Stefan Roese 
>>> Sent: 2019年3月27日 18:48
>>> To: Peng Ma ; Prabhakar Kushwaha
>>> ; Shengzhou Liu
>;
>>> Ruchika Gupta 
>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>> ; York Sun ;
>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>;
>>> u-boot@lists.denx.de
>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>> Freescale powerpc socs
>>>
>>> On 27.03.19 11:41, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Stefan Roese 
>>>>> Sent: 2019年3月27日 18:01
>>>>> To: Peng Ma ; Prabhakar Kushwaha
>>>>> ; Shengzhou Liu
>>> ;
>>>>> Ruchika Gupta 
>>>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>>>> ; York Sun ;
>>>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>>> ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>>>> Freescale powerpc socs
>>>>>
>>>>> On 27.03.19 10:23, Peng Ma wrote:
>>>>>> 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 
>>>>>> ---
>>>>>> depends on:
>>>>>>   -
>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fp
>>>>> at
>>>>> chw
>>>>>
>>>
>ork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99168data
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>>
>>>
>3%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072
>>>>>
>>>
>966sdata=3Z33Z5raG%2BnbtSUpz2kPCGpefk1byOgy0%2Br3R4DUFU8%
>>>>> 3Dreserved=0
>>>>>>   -
>>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F
>>>>>> pa
>>>>>> tc
>>>>>>
>>>>>
>>>
>hwork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99167d
>>>>> ata
>>>>>>
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>> 3%7C686e
>>>>>>
>>>>>
>>>
>a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072966
>>>>> sdata=sr
>>>>>> %2BCh4UioJw0kuhOiLhc3F6keRhIH8Wflt%2BvMJnHtsY%3Dreser
>ve
>>> d=
>>>>> 0
>>>>>>
>>>>>> drivers/ata/Kconfig|   10 +
>>>>>> drivers/ata/Makefile   |1 +
>>>>>> drivers/ata/fsl_ahci.c | 1030
>>>>> 
>>>>>> drivers/ata/fsl_sata.h |1 +
>>>>>> 4 files changed, 1042 insertions(+)
>>>>>> create mode 100644 drivers/ata/fsl_ahci.c
>>>>>
>>>>> Will this patch series replace the old fsl_sata.c driver? If yes,
>>>>> could you remove this driver as well in this series?
>>>> [Peng Ma]
>>>> Hi Stefan,
>>>>
>>>> fsl_sata.c used to Non DM sata driver for some powerpc socs.
>>>> Currently We only have one board that supports dts initialization. I
>>>> will remove this old driver When all of our powerpc socs support DM.
>>>
>>> I see, thanks. I just wanted to know, if this new SATA driver is a
>>> meant as a replacement for the old non-DM driver.
>> [Peng Ma]
>> Hi Stefan,
>>
>> I am so sorry to reply late, Other Non dts powerpc board need the old
>> sata driver, so the new Sata driver does not replace the so far.
>
>Just curious: Which are the "other non dts powerpc boards"? Are there still
>many? Is there a plan to move them to DT as well? Or should they perhaps be
>dropped from mainline if not converted to DT? What's stopping the conversion
>here?
>
>Thanks,
>Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-05-15 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年5月15日 17:23
>To: Peng Ma ; Prabhakar Kushwaha
>; Shengzhou Liu ;
>Ruchika Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>Caution: EXT Email
>
>On 15.05.19 11:04, Peng Ma wrote:
>>
>>
>>> -Original Message-----
>>> From: Stefan Roese 
>>> Sent: 2019年3月27日 18:48
>>> To: Peng Ma ; Prabhakar Kushwaha
>>> ; Shengzhou Liu
>;
>>> Ruchika Gupta 
>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>> ; York Sun ;
>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>;
>>> u-boot@lists.denx.de
>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>> Freescale powerpc socs
>>>
>>> On 27.03.19 11:41, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Stefan Roese 
>>>>> Sent: 2019年3月27日 18:01
>>>>> To: Peng Ma ; Prabhakar Kushwaha
>>>>> ; Shengzhou Liu
>>> ;
>>>>> Ruchika Gupta 
>>>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>>>> ; York Sun ;
>>>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>>> ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>>>> Freescale powerpc socs
>>>>>
>>>>> On 27.03.19 10:23, Peng Ma wrote:
>>>>>> 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 
>>>>>> ---
>>>>>> depends on:
>>>>>>   -
>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fp
>>>>> at
>>>>> chw
>>>>>
>>>
>ork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99168data
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>>
>>>
>3%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072
>>>>>
>>>
>966sdata=3Z33Z5raG%2BnbtSUpz2kPCGpefk1byOgy0%2Br3R4DUFU8%
>>>>> 3Dreserved=0
>>>>>>   -
>>>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F
>>>>>> pa
>>>>>> tc
>>>>>>
>>>>>
>>>
>hwork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99167d
>>>>> ata
>>>>>>
>>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>>> 3%7C686e
>>>>>>
>>>>>
>>>
>a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072966
>>>>> sdata=sr
>>>>>> %2BCh4UioJw0kuhOiLhc3F6keRhIH8Wflt%2BvMJnHtsY%3Dreser
>ve
>>> d=
>>>>> 0
>>>>>>
>>>>>> drivers/ata/Kconfig    |   10 +
>>>>>> drivers/ata/Makefile   |1 +
>>>>>> drivers/ata/fsl_ahci.c | 1030
>>>>> 
>>>>>> drivers/ata/fsl_sata.h |1 +
>>>>>> 4 files changed, 1042 insertions(+)
>>>>>> create mode 100644 drivers/ata/fsl_ahci.c
>>>>>
>>>>> Will this patch series replace the old fsl_sata.c driver? If yes,
>>>>> could you remove this driver as well in this series?
>>>> [Peng Ma]
>>>> Hi Stefan,
>>>>
>>>> fsl_sata.c used to Non DM sata driver for some powerpc socs.
>>>> Currently We only have one board that supports dts initialization. I
>>>> will remove this old driver When all of our powerpc socs support DM.
>>>
>>> I see, thanks. I just wanted to know, if this new SATA driver is a
>>> meant as a replacement for the old non-DM driver.
>> [Peng Ma]
>> Hi Stefan,
>>
>> I am so sorry to reply late, Other Non dts powerpc board need the old
>> sata driver, so the new Sata driver does not replace the so far.
>
>Just curious: Which are the "other non dts powerpc boards"? Are there still
>many? Is there a plan to move them to DT as well? Or should they perhaps be
>dropped from mainline if not converted to DT? What's stopping the conversion
>here?
[Peng Ma]
1: There is some platforms still with non dts such as: T1024QDS, T1024RDB, 
T1040D4RDB etc.
2: I do not know the plan to move them to DT,  we only support one platform 
named T2080QDS so far.
3:Before all of them support DT, we should not delete old sata driver.

Thanks. 
Best Regards,
Peng
>
>Thanks,
>Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-05-15 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年3月27日 18:48
>To: Peng Ma ; Prabhakar Kushwaha
>; Shengzhou Liu ;
>Ruchika Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>On 27.03.19 11:41, Peng Ma wrote:
>>
>>
>>> -Original Message-----
>>> From: Stefan Roese 
>>> Sent: 2019年3月27日 18:01
>>> To: Peng Ma ; Prabhakar Kushwaha
>>> ; Shengzhou Liu
>;
>>> Ruchika Gupta 
>>> Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>>> ; York Sun ;
>>> bmeng...@gmail.com; m...@marvell.com; Andy Tang
>;
>>> u-boot@lists.denx.de
>>> Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for
>>> Freescale powerpc socs
>>>
>>> On 27.03.19 10:23, Peng Ma wrote:
>>>> 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 
>>>> ---
>>>> depends on:
>>>>-
>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpat
>>> chw
>>>
>ork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99168data
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>>
>3%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072
>>>
>966sdata=3Z33Z5raG%2BnbtSUpz2kPCGpefk1byOgy0%2Br3R4DUFU8%
>>> 3Dreserved=0
>>>>-
>>>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpa
>>>> tc
>>>>
>>>
>hwork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99167d
>>> ata
>>>>
>>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>>> 3%7C686e
>>>>
>>>
>a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072966
>>> sdata=sr
>>>> %2BCh4UioJw0kuhOiLhc3F6keRhIH8Wflt%2BvMJnHtsY%3Dreserve
>d=
>>> 0
>>>>
>>>>drivers/ata/Kconfig|   10 +
>>>>drivers/ata/Makefile   |1 +
>>>>drivers/ata/fsl_ahci.c | 1030
>>> ++++
>>>>drivers/ata/fsl_sata.h |1 +
>>>>4 files changed, 1042 insertions(+)
>>>>create mode 100644 drivers/ata/fsl_ahci.c
>>>
>>> Will this patch series replace the old fsl_sata.c driver? If yes,
>>> could you remove this driver as well in this series?
>> [Peng Ma]
>> Hi Stefan,
>>
>> fsl_sata.c used to Non DM sata driver for some powerpc socs. Currently
>> We only have one board that supports dts initialization. I will remove
>> this old driver When all of our powerpc socs support DM.
>
>I see, thanks. I just wanted to know, if this new SATA driver is a meant as a
>replacement for the old non-DM driver.
[Peng Ma] 
Hi Stefan,

I am so sorry to reply late, Other Non dts powerpc board need the old sata 
driver, so the new
Sata driver does not replace the so far.

Best Regards,
Peng
>
>Thanks,
>Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v3 2/2] scsi: ceva: Clean up the driver code

2019-04-17 Thread Peng Ma
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 
---
changed for v3:
- Add Reviewed-by.

 drivers/ata/sata_ceva.c |   50 +++
 1 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c
index 8887be9..2d49630 100644
--- a/drivers/ata/sata_ceva.c
+++ b/drivers/ata/sata_ceva.c
@@ -8,6 +8,7 @@
 #include 
 #include 
 #include 
+#include 
 
 /* Vendor Specific Register Offsets */
 #define AHCI_VEND_PCFG  0xA4
@@ -88,20 +89,16 @@
 #define LS1021_CEVA_PHY4_CFG   0x064a080b
 #define LS1021_CEVA_PHY5_CFG   0x2aa86470
 
-/* for ls1088a */
-#define LS1088_ECC_DIS_ADDR_CH20x100520
-#define LS1088_ECC_DIS_VAL_CH2 0x4000
-
-/* ecc addr-val pair */
-#define ECC_DIS_ADDR_CH2   0x20140520
+/* ecc val pair */
+#define ECC_DIS_VAL_CH10x0002
 #define ECC_DIS_VAL_CH20x8000
-#define SATA_ECC_REG_ADDR  0x20220520
-#define SATA_ECC_DISABLE   0x0002
+#define ECC_DIS_VAL_CH30x4000
 
 enum ceva_soc {
CEVA_1V84,
CEVA_LS1012A,
CEVA_LS1021A,
+   CEVA_LS1028A,
CEVA_LS1043A,
CEVA_LS1046A,
CEVA_LS1088A,
@@ -110,12 +107,14 @@ enum ceva_soc {
 
 struct ceva_sata_priv {
ulong base;
+   ulong ecc_base;
enum ceva_soc soc;
ulong flag;
 };
 
 static int ceva_init_sata(struct ceva_sata_priv *priv)
 {
+   ulong ecc_addr = priv->ecc_base;
ulong base = priv->base;
ulong tmp;
 
@@ -132,38 +131,42 @@ static int ceva_init_sata(struct ceva_sata_priv *priv)
break;
 
case CEVA_LS1021A:
-   writel(SATA_ECC_DISABLE, SATA_ECC_REG_ADDR);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH1, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(LS1021_CEVA_PHY2_CFG, base + AHCI_VEND_PP2C);
writel(LS1021_CEVA_PHY3_CFG, base + AHCI_VEND_PP3C);
writel(LS1021_CEVA_PHY4_CFG, base + AHCI_VEND_PP4C);
writel(LS1021_CEVA_PHY5_CFG, base + AHCI_VEND_PP5C);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + LS1021_AHCI_VEND_AXICC);
break;
 
case CEVA_LS1012A:
case CEVA_LS1043A:
case CEVA_LS1046A:
-   writel(ECC_DIS_VAL_CH2, ECC_DIS_ADDR_CH2);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH2, ecc_addr);
/* fallthrough */
case CEVA_LS2080A:
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
 
+   case CEVA_LS1028A:
case CEVA_LS1088A:
-   writel(LS1088_ECC_DIS_VAL_CH2, LS1088_ECC_DIS_ADDR_CH2);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH3, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
}
 
+   if (priv->flag & FLAG_COHERENT)
+   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
+
return 0;
 }
 
@@ -187,6 +190,7 @@ static const struct udevice_id sata_ceva_ids[] = {
{ .compatible = "ceva,ahci-1v84", .data = CEVA_1V84 },
{ .compatible = "fsl,ls1012a-ahci", .data = CEVA_LS1012A },
{ .compatible = "fsl,ls1021a-ahci", .data = CEVA_LS1021A },
+   { .compatible = "fsl,ls1028a-ahci", .data = CEVA_LS1028A },
{ .compatible = "fsl,ls1043a-ahci", .data = CEVA_LS1043A },
{ .compatible = "fsl,ls1046a-ahci", .data = CEVA_LS1046A },
{ .compatible = "fsl,ls1088a-ahci", .data = CEVA_LS1088A },
@@ -197,6 +201,8 @@ static const struct udevice_id sata_ceva_ids[] = {
 static int sata_ceva_ofdata_to_platdata(struct udevice *dev)
 {
struct ceva_sata_priv *priv = dev_get_priv(dev);
+   struct resource res_regs;
+   int ret;
 
if (dev_read_bool(dev, "dma-coherent"))
priv->flag |= FLAG_COHERENT;
@@ -205,8 +211,18 @@ static int sata_ceva_ofdata_to_platdata(struct udevice 
*dev)
if (priv->base == FDT_ADDR_T_NONE)
return -EINVAL;
 
+   ret = dev_read_resource_byname(dev, "ecc-add

[U-Boot] [v3 1/2] ARM: dts: Freescale: Add ecc addr for sata node

2019-04-17 Thread Peng Ma
Move the ecc addr from driver to dts.

Signed-off-by: Peng Ma 
---
changed for v3:
- remove some dts node reg to fix build error

 arch/arm/dts/fsl-ls1012a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1043a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1046a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1088a.dtsi |4 +++-
 arch/arm/dts/ls1021a.dtsi |4 +++-
 5 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/arch/arm/dts/fsl-ls1012a.dtsi b/arch/arm/dts/fsl-ls1012a.dtsi
index f22cbf4..30af2e1 100644
--- a/arch/arm/dts/fsl-ls1012a.dtsi
+++ b/arch/arm/dts/fsl-ls1012a.dtsi
@@ -136,7 +136,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1012a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1043a.dtsi b/arch/arm/dts/fsl-ls1043a.dtsi
index bb70992..c7fa9e2 100644
--- a/arch/arm/dts/fsl-ls1043a.dtsi
+++ b/arch/arm/dts/fsl-ls1043a.dtsi
@@ -290,7 +290,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1043a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1046a.dtsi b/arch/arm/dts/fsl-ls1046a.dtsi
index 5ac10e0..d56ecd6 100644
--- a/arch/arm/dts/fsl-ls1046a.dtsi
+++ b/arch/arm/dts/fsl-ls1046a.dtsi
@@ -294,7 +294,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1046a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 1>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1088a.dtsi b/arch/arm/dts/fsl-ls1088a.dtsi
index 9455e03..b7dd3ba 100644
--- a/arch/arm/dts/fsl-ls1088a.dtsi
+++ b/arch/arm/dts/fsl-ls1088a.dtsi
@@ -153,7 +153,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1088a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata base */
+  0x7 0x100520  0x0 0x4>;  /* ecc sata addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 133 4>;
status = "disabled";
};
diff --git a/arch/arm/dts/ls1021a.dtsi b/arch/arm/dts/ls1021a.dtsi
index 7670a39..cc5d56c 100644
--- a/arch/arm/dts/ls1021a.dtsi
+++ b/arch/arm/dts/ls1021a.dtsi
@@ -406,7 +406,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1021a-ahci";
-   reg = <0x320 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20220520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 101 4>;
status = "disabled";
};
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2 2/2] scsi: ceva: Clean up the driver code

2019-04-17 Thread Peng Ma
Distinguish the ecc val by chassis version and move the ecc addr to dts.
Add ls1028a soc support.

Signed-off-by: Peng Ma 
---
changed for v2:
- Use the reg-names to get secondary reg base
- Return error while some socs not set the ecc address at DT

 drivers/ata/sata_ceva.c |   50 +++
 1 files changed, 33 insertions(+), 17 deletions(-)

diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c
index 8887be9..2d49630 100644
--- a/drivers/ata/sata_ceva.c
+++ b/drivers/ata/sata_ceva.c
@@ -8,6 +8,7 @@
 #include 
 #include 
 #include 
+#include 
 
 /* Vendor Specific Register Offsets */
 #define AHCI_VEND_PCFG  0xA4
@@ -88,20 +89,16 @@
 #define LS1021_CEVA_PHY4_CFG   0x064a080b
 #define LS1021_CEVA_PHY5_CFG   0x2aa86470
 
-/* for ls1088a */
-#define LS1088_ECC_DIS_ADDR_CH20x100520
-#define LS1088_ECC_DIS_VAL_CH2 0x4000
-
-/* ecc addr-val pair */
-#define ECC_DIS_ADDR_CH2   0x20140520
+/* ecc val pair */
+#define ECC_DIS_VAL_CH10x0002
 #define ECC_DIS_VAL_CH20x8000
-#define SATA_ECC_REG_ADDR  0x20220520
-#define SATA_ECC_DISABLE   0x0002
+#define ECC_DIS_VAL_CH30x4000
 
 enum ceva_soc {
CEVA_1V84,
CEVA_LS1012A,
CEVA_LS1021A,
+   CEVA_LS1028A,
CEVA_LS1043A,
CEVA_LS1046A,
CEVA_LS1088A,
@@ -110,12 +107,14 @@ enum ceva_soc {
 
 struct ceva_sata_priv {
ulong base;
+   ulong ecc_base;
enum ceva_soc soc;
ulong flag;
 };
 
 static int ceva_init_sata(struct ceva_sata_priv *priv)
 {
+   ulong ecc_addr = priv->ecc_base;
ulong base = priv->base;
ulong tmp;
 
@@ -132,38 +131,42 @@ static int ceva_init_sata(struct ceva_sata_priv *priv)
break;
 
case CEVA_LS1021A:
-   writel(SATA_ECC_DISABLE, SATA_ECC_REG_ADDR);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH1, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(LS1021_CEVA_PHY2_CFG, base + AHCI_VEND_PP2C);
writel(LS1021_CEVA_PHY3_CFG, base + AHCI_VEND_PP3C);
writel(LS1021_CEVA_PHY4_CFG, base + AHCI_VEND_PP4C);
writel(LS1021_CEVA_PHY5_CFG, base + AHCI_VEND_PP5C);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + LS1021_AHCI_VEND_AXICC);
break;
 
case CEVA_LS1012A:
case CEVA_LS1043A:
case CEVA_LS1046A:
-   writel(ECC_DIS_VAL_CH2, ECC_DIS_ADDR_CH2);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH2, ecc_addr);
/* fallthrough */
case CEVA_LS2080A:
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
 
+   case CEVA_LS1028A:
case CEVA_LS1088A:
-   writel(LS1088_ECC_DIS_VAL_CH2, LS1088_ECC_DIS_ADDR_CH2);
+   if (!ecc_addr)
+   return -EINVAL;
+   writel(ECC_DIS_VAL_CH3, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
}
 
+   if (priv->flag & FLAG_COHERENT)
+   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
+
return 0;
 }
 
@@ -187,6 +190,7 @@ static const struct udevice_id sata_ceva_ids[] = {
{ .compatible = "ceva,ahci-1v84", .data = CEVA_1V84 },
{ .compatible = "fsl,ls1012a-ahci", .data = CEVA_LS1012A },
{ .compatible = "fsl,ls1021a-ahci", .data = CEVA_LS1021A },
+   { .compatible = "fsl,ls1028a-ahci", .data = CEVA_LS1028A },
{ .compatible = "fsl,ls1043a-ahci", .data = CEVA_LS1043A },
{ .compatible = "fsl,ls1046a-ahci", .data = CEVA_LS1046A },
{ .compatible = "fsl,ls1088a-ahci", .data = CEVA_LS1088A },
@@ -197,6 +201,8 @@ static const struct udevice_id sata_ceva_ids[] = {
 static int sata_ceva_ofdata_to_platdata(struct udevice *dev)
 {
struct ceva_sata_priv *priv = dev_get_priv(dev);
+   struct resource res_regs;
+   int ret;
 
if (dev_read_bool(dev, "dma-coherent"))
priv->flag |= FLAG_COHERENT;
@@ -205,8 +211,18 @@ static int sata_ceva_ofdata_to_platdata(struct udevice 
*dev)
if (priv->base == FDT_ADDR_T_NONE)
return -EINVA

[U-Boot] [v2 1/2] ARM: dts: Freescale: Add ecc addr for sata node

2019-04-17 Thread Peng Ma
Move the ecc addr from driver to dts.

Signed-off-by: Peng Ma 
---
changed for v2:
- Add reg-names to improve driver code.

 arch/arm/dts/fsl-ls1012a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1043a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1046a.dtsi |4 +++-
 arch/arm/dts/fsl-ls1088a.dtsi |3 +++
 arch/arm/dts/ls1021a.dtsi |4 +++-
 5 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/arch/arm/dts/fsl-ls1012a.dtsi b/arch/arm/dts/fsl-ls1012a.dtsi
index f22cbf4..30af2e1 100644
--- a/arch/arm/dts/fsl-ls1012a.dtsi
+++ b/arch/arm/dts/fsl-ls1012a.dtsi
@@ -136,7 +136,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1012a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1043a.dtsi b/arch/arm/dts/fsl-ls1043a.dtsi
index bb70992..c7fa9e2 100644
--- a/arch/arm/dts/fsl-ls1043a.dtsi
+++ b/arch/arm/dts/fsl-ls1043a.dtsi
@@ -290,7 +290,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1043a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1046a.dtsi b/arch/arm/dts/fsl-ls1046a.dtsi
index 5ac10e0..d56ecd6 100644
--- a/arch/arm/dts/fsl-ls1046a.dtsi
+++ b/arch/arm/dts/fsl-ls1046a.dtsi
@@ -294,7 +294,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1046a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 69 4>;
clocks = < 4 1>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1088a.dtsi b/arch/arm/dts/fsl-ls1088a.dtsi
index 9455e03..7ba0683 100644
--- a/arch/arm/dts/fsl-ls1088a.dtsi
+++ b/arch/arm/dts/fsl-ls1088a.dtsi
@@ -154,6 +154,9 @@
sata: sata@320 {
compatible = "fsl,ls1088a-ahci";
reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata base */
+  0x7 0x100520  0x0 0x4>;  /* ecc sata addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 133 4>;
status = "disabled";
};
diff --git a/arch/arm/dts/ls1021a.dtsi b/arch/arm/dts/ls1021a.dtsi
index 7670a39..cc5d56c 100644
--- a/arch/arm/dts/ls1021a.dtsi
+++ b/arch/arm/dts/ls1021a.dtsi
@@ -406,7 +406,9 @@
 
sata: sata@320 {
compatible = "fsl,ls1021a-ahci";
-   reg = <0x320 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20220520 0x0 0x4>; /* ecc sata 
addr*/
+   reg-names = "sata-base", "ecc-addr";
interrupts = <0 101 4>;
status = "disabled";
};
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-17 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月17日 15:38
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 17. 04. 19 9:27, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月17日 14:58
>>> To: Peng Ma ; Michal Simek
>>> ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> u-boot@lists.denx.de
>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>> code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 17. 04. 19 8:50, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Michal Simek 
>>>>> Sent: 2019年4月17日 13:58
>>>>> To: Peng Ma ; Michal Simek
>>>>> ; albert.u.b...@aribaud.net;
>>>>> s...@chromium.org; Fabio Estevam ; York Sun
>>>>> ; Prabhakar Kushwaha
>>> 
>>>>> Cc: Andy Tang ; Yinbo Zhu ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>> code
>>>>>
>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK links
>>>>> or attachments unless you recognize the sender and know the content is
>safe.
>>>>>
>>>>>
>>>>>
>>>>> On 17. 04. 19 4:50, Peng Ma wrote:
>>>>>>
>>>>>>
>>>>>>> -Original Message-
>>>>>>> From: Michal Simek 
>>>>>>> Sent: 2019年4月16日 18:49
>>>>>>> To: Peng Ma ; Michal Simek
>>>>>>> ; albert.u.b...@aribaud.net;
>>>>>>> s...@chromium.org; Fabio Estevam ; York
>Sun
>>>>>>> ; Prabhakar Kushwaha
>>>>> 
>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>;
>>>>>>> u-boot@lists.denx.de
>>>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the
>>>>>>> driver code
>>>>>>>
>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>> links or attachments unless you recognize the sender and know the
>>>>>>> content is
>>> safe.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16. 04. 19 12:29, Peng Ma wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>> -Original Message-
>>>>>>>>> From: Michal Simek 
>>>>>>>>> Sent: 2019年4月16日 18:01
>>>>>>>>> To: Peng Ma ; Michal Simek
>>>>>>>>> ; albert.u.b...@aribaud.net;
>>>>>>>>> s...@chromium.org; Fabio Estevam ; York
>>> Sun
>>>>>>>>> ; Prabhakar Kushwaha
>>>>>>> 
>>>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>>> ;
>>>>>>>>> u-boot@lists.denx.de
>>>>>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the
>>>>>>>>> driver code
>>>>>>>>>
>>>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>>>> links or attachments unless you recognize the sender and know
>>>>>>>>> the content is
>>>>> safe.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 16. 04. 19 11:54, Peng Ma wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> -Original Message-
>>>>>>>>>>> From: Michal Simek 
>>>>>>>&g

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-17 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月17日 14:58
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 17. 04. 19 8:50, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月17日 13:58
>>> To: Peng Ma ; Michal Simek
>>> ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> u-boot@lists.denx.de
>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>> code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 17. 04. 19 4:50, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Michal Simek 
>>>>> Sent: 2019年4月16日 18:49
>>>>> To: Peng Ma ; Michal Simek
>>>>> ; albert.u.b...@aribaud.net;
>>>>> s...@chromium.org; Fabio Estevam ; York Sun
>>>>> ; Prabhakar Kushwaha
>>> 
>>>>> Cc: Andy Tang ; Yinbo Zhu ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>> code
>>>>>
>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK links
>>>>> or attachments unless you recognize the sender and know the content is
>safe.
>>>>>
>>>>>
>>>>>
>>>>> On 16. 04. 19 12:29, Peng Ma wrote:
>>>>>>
>>>>>>
>>>>>>> -Original Message-
>>>>>>> From: Michal Simek 
>>>>>>> Sent: 2019年4月16日 18:01
>>>>>>> To: Peng Ma ; Michal Simek
>>>>>>> ; albert.u.b...@aribaud.net;
>>>>>>> s...@chromium.org; Fabio Estevam ; York
>Sun
>>>>>>> ; Prabhakar Kushwaha
>>>>> 
>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>;
>>>>>>> u-boot@lists.denx.de
>>>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the
>>>>>>> driver code
>>>>>>>
>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>> links or attachments unless you recognize the sender and know the
>>>>>>> content is
>>> safe.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16. 04. 19 11:54, Peng Ma wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>> -Original Message-
>>>>>>>>> From: Michal Simek 
>>>>>>>>> Sent: 2019年4月16日 17:31
>>>>>>>>> To: Peng Ma ; Michal Simek
>>>>>>>>> ; albert.u.b...@aribaud.net;
>>>>>>>>> s...@chromium.org; Fabio Estevam ; York
>>> Sun
>>>>>>>>> ; Prabhakar Kushwaha
>>>>>>> 
>>>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>>> ;
>>>>>>>>> u-boot@lists.denx.de
>>>>>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the
>>>>>>>>> driver code
>>>>>>>>>
>>>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>>>> links or attachments unless you recognize the sender and know
>>>>>>>>> the content is
>>>>> safe.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 16. 04. 19 11:22, Peng Ma wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> -Original Message-
>>>>>>>>>>> From: Michal Simek 
>>>>>>>>>>> Sent: 2019年4月16日 

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-17 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月17日 13:58
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 17. 04. 19 4:50, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月16日 18:49
>>> To: Peng Ma ; Michal Simek
>>> ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> u-boot@lists.denx.de
>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>> code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 16. 04. 19 12:29, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Michal Simek 
>>>>> Sent: 2019年4月16日 18:01
>>>>> To: Peng Ma ; Michal Simek
>>>>> ; albert.u.b...@aribaud.net;
>>>>> s...@chromium.org; Fabio Estevam ; York Sun
>>>>> ; Prabhakar Kushwaha
>>> 
>>>>> Cc: Andy Tang ; Yinbo Zhu ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>> code
>>>>>
>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK links
>>>>> or attachments unless you recognize the sender and know the content is
>safe.
>>>>>
>>>>>
>>>>>
>>>>> On 16. 04. 19 11:54, Peng Ma wrote:
>>>>>>
>>>>>>
>>>>>>> -Original Message-
>>>>>>> From: Michal Simek 
>>>>>>> Sent: 2019年4月16日 17:31
>>>>>>> To: Peng Ma ; Michal Simek
>>>>>>> ; albert.u.b...@aribaud.net;
>>>>>>> s...@chromium.org; Fabio Estevam ; York
>Sun
>>>>>>> ; Prabhakar Kushwaha
>>>>> 
>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>;
>>>>>>> u-boot@lists.denx.de
>>>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the
>>>>>>> driver code
>>>>>>>
>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>> links or attachments unless you recognize the sender and know the
>>>>>>> content is
>>> safe.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16. 04. 19 11:22, Peng Ma wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>> -Original Message-
>>>>>>>>> From: Michal Simek 
>>>>>>>>> Sent: 2019年4月16日 16:04
>>>>>>>>> To: Peng Ma ; albert.u.b...@aribaud.net;
>>>>>>>>> s...@chromium.org; Fabio Estevam ; York
>>> Sun
>>>>>>>>> ; Prabhakar Kushwaha
>>>>>>> 
>>>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>>> ;
>>>>>>>>> michal.si...@xilinx.com; u-boot@lists.denx.de
>>>>>>>>> Subject: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>>>>>> code
>>>>>>>>>
>>>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>>>> links or attachments unless you recognize the sender and know
>>>>>>>>> the content is
>>>>> safe.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 16. 04. 19 9:28, Peng Ma wrote:
>>>>>>>>>> Distinguish the ecc val by chassis version and move the ecc
>>>>>>>>>> addr to
>>> dts.
>>>>>>>>>> Add ls1028a soc support.
>>>>>>>>>>
>>>>>>>>>> Si

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-16 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月16日 18:49
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 16. 04. 19 12:29, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月16日 18:01
>>> To: Peng Ma ; Michal Simek
>>> ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> u-boot@lists.denx.de
>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>> code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 16. 04. 19 11:54, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Michal Simek 
>>>>> Sent: 2019年4月16日 17:31
>>>>> To: Peng Ma ; Michal Simek
>>>>> ; albert.u.b...@aribaud.net;
>>>>> s...@chromium.org; Fabio Estevam ; York Sun
>>>>> ; Prabhakar Kushwaha
>>> 
>>>>> Cc: Andy Tang ; Yinbo Zhu ;
>>>>> u-boot@lists.denx.de
>>>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>> code
>>>>>
>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK links
>>>>> or attachments unless you recognize the sender and know the content is
>safe.
>>>>>
>>>>>
>>>>>
>>>>> On 16. 04. 19 11:22, Peng Ma wrote:
>>>>>>
>>>>>>
>>>>>>> -Original Message-
>>>>>>> From: Michal Simek 
>>>>>>> Sent: 2019年4月16日 16:04
>>>>>>> To: Peng Ma ; albert.u.b...@aribaud.net;
>>>>>>> s...@chromium.org; Fabio Estevam ; York
>Sun
>>>>>>> ; Prabhakar Kushwaha
>>>>> 
>>>>>>> Cc: Andy Tang ; Yinbo Zhu
>;
>>>>>>> michal.si...@xilinx.com; u-boot@lists.denx.de
>>>>>>> Subject: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>>>>>> code
>>>>>>>
>>>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK
>>>>>>> links or attachments unless you recognize the sender and know the
>>>>>>> content is
>>> safe.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16. 04. 19 9:28, Peng Ma wrote:
>>>>>>>> Distinguish the ecc val by chassis version and move the ecc addr to
>dts.
>>>>>>>> Add ls1028a soc support.
>>>>>>>>
>>>>>>>> Signed-off-by: Peng Ma 
>>>>>>>> ---
>>>>>>>>  drivers/ata/sata_ceva.c |   43
>>>>>>> +--
>>>>>>>>  1 files changed, 25 insertions(+), 18 deletions(-)
>>>>>>>>
>>>>>>>> diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c
>>>>>>>> index
>>>>>>>> 8887be9..d26f712 100644
>>>>>>>> --- a/drivers/ata/sata_ceva.c
>>>>>>>> +++ b/drivers/ata/sata_ceva.c
>>>>>>>> @@ -88,20 +88,16 @@
>>>>>>>>  #define LS1021_CEVA_PHY4_CFG 0x064a080b  #define
>>>>>>> LS1021_CEVA_PHY5_CFG
>>>>>>>> 0x2aa86470
>>>>>>>>
>>>>>>>> -/* for ls1088a */
>>>>>>>> -#define LS1088_ECC_DIS_ADDR_CH2  0x100520
>>>>>>>> -#define LS1088_ECC_DIS_VAL_CH2   0x4000
>>>>>>>> -
>>>>>>>> -/* ecc addr-val pair */
>>>>>>>> -#define ECC_DIS_ADDR_CH2 0x20140520
>>>>>>>> +/* ecc val pair */
>>>>>>>> +#define ECC_DIS_VAL_CH1 

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-16 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月16日 18:01
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 16. 04. 19 11:54, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月16日 17:31
>>> To: Peng Ma ; Michal Simek
>>> ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> u-boot@lists.denx.de
>>> Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver
>>> code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 16. 04. 19 11:22, Peng Ma wrote:
>>>>
>>>>
>>>>> -Original Message-
>>>>> From: Michal Simek 
>>>>> Sent: 2019年4月16日 16:04
>>>>> To: Peng Ma ; albert.u.b...@aribaud.net;
>>>>> s...@chromium.org; Fabio Estevam ; York Sun
>>>>> ; Prabhakar Kushwaha
>>> 
>>>>> Cc: Andy Tang ; Yinbo Zhu ;
>>>>> michal.si...@xilinx.com; u-boot@lists.denx.de
>>>>> Subject: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>>>>>
>>>>> WARNING: This email was created outside of NXP. DO NOT CLICK links
>>>>> or attachments unless you recognize the sender and know the content is
>safe.
>>>>>
>>>>>
>>>>>
>>>>> On 16. 04. 19 9:28, Peng Ma wrote:
>>>>>> Distinguish the ecc val by chassis version and move the ecc addr to dts.
>>>>>> Add ls1028a soc support.
>>>>>>
>>>>>> Signed-off-by: Peng Ma 
>>>>>> ---
>>>>>>  drivers/ata/sata_ceva.c |   43
>>>>> +--
>>>>>>  1 files changed, 25 insertions(+), 18 deletions(-)
>>>>>>
>>>>>> diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c
>>>>>> index
>>>>>> 8887be9..d26f712 100644
>>>>>> --- a/drivers/ata/sata_ceva.c
>>>>>> +++ b/drivers/ata/sata_ceva.c
>>>>>> @@ -88,20 +88,16 @@
>>>>>>  #define LS1021_CEVA_PHY4_CFG 0x064a080b  #define
>>>>> LS1021_CEVA_PHY5_CFG
>>>>>> 0x2aa86470
>>>>>>
>>>>>> -/* for ls1088a */
>>>>>> -#define LS1088_ECC_DIS_ADDR_CH2  0x100520
>>>>>> -#define LS1088_ECC_DIS_VAL_CH2   0x4000
>>>>>> -
>>>>>> -/* ecc addr-val pair */
>>>>>> -#define ECC_DIS_ADDR_CH2 0x20140520
>>>>>> +/* ecc val pair */
>>>>>> +#define ECC_DIS_VAL_CH1  0x0002
>>>>>>  #define ECC_DIS_VAL_CH2  0x8000
>>>>>> -#define SATA_ECC_REG_ADDR0x20220520
>>>>>> -#define SATA_ECC_DISABLE 0x0002
>>>>>> +#define ECC_DIS_VAL_CH3  0x4000
>>>>>>
>>>>>>  enum ceva_soc {
>>>>>>   CEVA_1V84,
>>>>>>   CEVA_LS1012A,
>>>>>>   CEVA_LS1021A,
>>>>>> + CEVA_LS1028A,
>>>>>>   CEVA_LS1043A,
>>>>>>   CEVA_LS1046A,
>>>>>>   CEVA_LS1088A,
>>>>>> @@ -110,12 +106,14 @@ enum ceva_soc {
>>>>>>
>>>>>>  struct ceva_sata_priv {
>>>>>>   ulong base;
>>>>>> + ulong ecc_base;
>>>>>>   enum ceva_soc soc;
>>>>>>   ulong flag;
>>>>>>  };
>>>>>>
>>>>>>  static int ceva_init_sata(struct ceva_sata_priv *priv)  {
>>>>>> + ulong ecc_addr = priv->ecc_base;
>>>>>>   ulong base = priv->base;
>>>>>>   ulong tmp;
>>>>>>
>>>>>> @@ -132,38 +130,38 @@ static 

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-16 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月16日 17:31
>To: Peng Ma ; Michal Simek ;
>albert.u.b...@aribaud.net; s...@chromium.org; Fabio Estevam
>; York Sun ; Prabhakar
>Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>u-boot@lists.denx.de
>Subject: Re: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 16. 04. 19 11:22, Peng Ma wrote:
>>
>>
>>> -Original Message-
>>> From: Michal Simek 
>>> Sent: 2019年4月16日 16:04
>>> To: Peng Ma ; albert.u.b...@aribaud.net;
>>> s...@chromium.org; Fabio Estevam ; York Sun
>>> ; Prabhakar Kushwaha
>
>>> Cc: Andy Tang ; Yinbo Zhu ;
>>> michal.si...@xilinx.com; u-boot@lists.denx.de
>>> Subject: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>>>
>>> WARNING: This email was created outside of NXP. DO NOT CLICK links or
>>> attachments unless you recognize the sender and know the content is safe.
>>>
>>>
>>>
>>> On 16. 04. 19 9:28, Peng Ma wrote:
>>>> Distinguish the ecc val by chassis version and move the ecc addr to dts.
>>>> Add ls1028a soc support.
>>>>
>>>> Signed-off-by: Peng Ma 
>>>> ---
>>>>  drivers/ata/sata_ceva.c |   43
>>> +--
>>>>  1 files changed, 25 insertions(+), 18 deletions(-)
>>>>
>>>> diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c index
>>>> 8887be9..d26f712 100644
>>>> --- a/drivers/ata/sata_ceva.c
>>>> +++ b/drivers/ata/sata_ceva.c
>>>> @@ -88,20 +88,16 @@
>>>>  #define LS1021_CEVA_PHY4_CFG 0x064a080b  #define
>>> LS1021_CEVA_PHY5_CFG
>>>> 0x2aa86470
>>>>
>>>> -/* for ls1088a */
>>>> -#define LS1088_ECC_DIS_ADDR_CH2  0x100520
>>>> -#define LS1088_ECC_DIS_VAL_CH2   0x4000
>>>> -
>>>> -/* ecc addr-val pair */
>>>> -#define ECC_DIS_ADDR_CH2 0x20140520
>>>> +/* ecc val pair */
>>>> +#define ECC_DIS_VAL_CH1  0x0002
>>>>  #define ECC_DIS_VAL_CH2  0x8000
>>>> -#define SATA_ECC_REG_ADDR0x20220520
>>>> -#define SATA_ECC_DISABLE 0x0002
>>>> +#define ECC_DIS_VAL_CH3  0x4000
>>>>
>>>>  enum ceva_soc {
>>>>   CEVA_1V84,
>>>>   CEVA_LS1012A,
>>>>   CEVA_LS1021A,
>>>> + CEVA_LS1028A,
>>>>   CEVA_LS1043A,
>>>>   CEVA_LS1046A,
>>>>   CEVA_LS1088A,
>>>> @@ -110,12 +106,14 @@ enum ceva_soc {
>>>>
>>>>  struct ceva_sata_priv {
>>>>   ulong base;
>>>> + ulong ecc_base;
>>>>   enum ceva_soc soc;
>>>>   ulong flag;
>>>>  };
>>>>
>>>>  static int ceva_init_sata(struct ceva_sata_priv *priv)  {
>>>> + ulong ecc_addr = priv->ecc_base;
>>>>   ulong base = priv->base;
>>>>   ulong tmp;
>>>>
>>>> @@ -132,38 +130,38 @@ static int ceva_init_sata(struct
>>>> ceva_sata_priv
>>> *priv)
>>>>   break;
>>>>
>>>>   case CEVA_LS1021A:
>>>> - writel(SATA_ECC_DISABLE, SATA_ECC_REG_ADDR);
>>>> + if (ecc_addr)
>>>> + writel(ECC_DIS_VAL_CH1, ecc_addr);
>>>>   writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
>>>>   writel(LS1021_CEVA_PHY2_CFG, base +
>>> AHCI_VEND_PP2C);
>>>>   writel(LS1021_CEVA_PHY3_CFG, base +
>>> AHCI_VEND_PP3C);
>>>>   writel(LS1021_CEVA_PHY4_CFG, base +
>>> AHCI_VEND_PP4C);
>>>>   writel(LS1021_CEVA_PHY5_CFG, base +
>>> AHCI_VEND_PP5C);
>>>>   writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
>>>> - if (priv->flag & FLAG_COHERENT)
>>>> - writel(CEVA_AXICC_CFG, base +
>>> LS1021_AHCI_VEND_AXICC);
>>>>   break;
>>>>
>>>>   case CEVA_LS1012A:
>>>>   case CEVA_LS1043A:
>>>>   case CEVA_LS1046A:
>>>> - writel(ECC_DIS_VAL_CH2, ECC_DIS_ADDR_CH2);
>>>> -

Re: [U-Boot] [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-16 Thread Peng Ma


>-Original Message-
>From: Michal Simek 
>Sent: 2019年4月16日 16:04
>To: Peng Ma ; albert.u.b...@aribaud.net;
>s...@chromium.org; Fabio Estevam ; York Sun
>; Prabhakar Kushwaha 
>Cc: Andy Tang ; Yinbo Zhu ;
>michal.si...@xilinx.com; u-boot@lists.denx.de
>Subject: [EXT] Re: [PATCH 1/2] scsi: ceva: Clean up the driver code
>
>WARNING: This email was created outside of NXP. DO NOT CLICK links or
>attachments unless you recognize the sender and know the content is safe.
>
>
>
>On 16. 04. 19 9:28, Peng Ma wrote:
>> Distinguish the ecc val by chassis version and move the ecc addr to dts.
>> Add ls1028a soc support.
>>
>> Signed-off-by: Peng Ma 
>> ---
>>  drivers/ata/sata_ceva.c |   43
>+--
>>  1 files changed, 25 insertions(+), 18 deletions(-)
>>
>> diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c index
>> 8887be9..d26f712 100644
>> --- a/drivers/ata/sata_ceva.c
>> +++ b/drivers/ata/sata_ceva.c
>> @@ -88,20 +88,16 @@
>>  #define LS1021_CEVA_PHY4_CFG 0x064a080b  #define
>LS1021_CEVA_PHY5_CFG
>> 0x2aa86470
>>
>> -/* for ls1088a */
>> -#define LS1088_ECC_DIS_ADDR_CH2  0x100520
>> -#define LS1088_ECC_DIS_VAL_CH2   0x4000
>> -
>> -/* ecc addr-val pair */
>> -#define ECC_DIS_ADDR_CH2 0x20140520
>> +/* ecc val pair */
>> +#define ECC_DIS_VAL_CH1  0x0002
>>  #define ECC_DIS_VAL_CH2  0x8000
>> -#define SATA_ECC_REG_ADDR0x20220520
>> -#define SATA_ECC_DISABLE 0x0002
>> +#define ECC_DIS_VAL_CH3  0x4000
>>
>>  enum ceva_soc {
>>   CEVA_1V84,
>>   CEVA_LS1012A,
>>   CEVA_LS1021A,
>> + CEVA_LS1028A,
>>   CEVA_LS1043A,
>>   CEVA_LS1046A,
>>   CEVA_LS1088A,
>> @@ -110,12 +106,14 @@ enum ceva_soc {
>>
>>  struct ceva_sata_priv {
>>   ulong base;
>> + ulong ecc_base;
>>   enum ceva_soc soc;
>>   ulong flag;
>>  };
>>
>>  static int ceva_init_sata(struct ceva_sata_priv *priv)  {
>> + ulong ecc_addr = priv->ecc_base;
>>   ulong base = priv->base;
>>   ulong tmp;
>>
>> @@ -132,38 +130,38 @@ static int ceva_init_sata(struct ceva_sata_priv
>*priv)
>>   break;
>>
>>   case CEVA_LS1021A:
>> - writel(SATA_ECC_DISABLE, SATA_ECC_REG_ADDR);
>> + if (ecc_addr)
>> + writel(ECC_DIS_VAL_CH1, ecc_addr);
>>   writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
>>   writel(LS1021_CEVA_PHY2_CFG, base +
>AHCI_VEND_PP2C);
>>   writel(LS1021_CEVA_PHY3_CFG, base +
>AHCI_VEND_PP3C);
>>   writel(LS1021_CEVA_PHY4_CFG, base +
>AHCI_VEND_PP4C);
>>   writel(LS1021_CEVA_PHY5_CFG, base +
>AHCI_VEND_PP5C);
>>   writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
>> - if (priv->flag & FLAG_COHERENT)
>> - writel(CEVA_AXICC_CFG, base +
>LS1021_AHCI_VEND_AXICC);
>>   break;
>>
>>   case CEVA_LS1012A:
>>   case CEVA_LS1043A:
>>   case CEVA_LS1046A:
>> - writel(ECC_DIS_VAL_CH2, ECC_DIS_ADDR_CH2);
>> - /* fallthrough */
>>   case CEVA_LS2080A:
>> + if (ecc_addr)
>> + writel(ECC_DIS_VAL_CH2, ecc_addr);
>>   writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
>>   writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
>> - if (priv->flag & FLAG_COHERENT)
>> - writel(CEVA_AXICC_CFG, base +
>AHCI_VEND_AXICC);
>>   break;
>>
>> + case CEVA_LS1028A:
>>   case CEVA_LS1088A:
>> - writel(LS1088_ECC_DIS_VAL_CH2,
>LS1088_ECC_DIS_ADDR_CH2);
>> + if (ecc_addr)
>> + writel(ECC_DIS_VAL_CH3, ecc_addr);
>>   writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
>>   writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
>> - if (priv->flag & FLAG_COHERENT)
>> - writel(CEVA_AXICC_CFG, base +
>AHCI_VEND_AXICC);
>>   break;
>>   }
>>
>> + if (priv->flag & FLAG_COHERENT)
>> + writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
>> +
>>   return 0;
>>  }
>>
>> @@ -187,6 +185,7 @@ static const struct udevice_id sata_ceva_ids[] = {
>>   { .compatible = "ceva,ahci-1v84&q

[U-Boot] [PATCH 2/2] ARM: dts: Freescale: Add ecc addr for sata node

2019-04-16 Thread Peng Ma
Move the ecc addr from driver to dts.

Signed-off-by: Peng Ma 
---
 arch/arm/dts/fsl-ls1012a.dtsi |3 ++-
 arch/arm/dts/fsl-ls1043a.dtsi |3 ++-
 arch/arm/dts/fsl-ls1046a.dtsi |3 ++-
 arch/arm/dts/fsl-ls1088a.dtsi |2 ++
 arch/arm/dts/ls1021a.dtsi |3 ++-
 5 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm/dts/fsl-ls1012a.dtsi b/arch/arm/dts/fsl-ls1012a.dtsi
index f22cbf4..30fe268 100644
--- a/arch/arm/dts/fsl-ls1012a.dtsi
+++ b/arch/arm/dts/fsl-ls1012a.dtsi
@@ -136,7 +136,8 @@
 
sata: sata@320 {
compatible = "fsl,ls1012a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1043a.dtsi b/arch/arm/dts/fsl-ls1043a.dtsi
index bb70992..3109765 100644
--- a/arch/arm/dts/fsl-ls1043a.dtsi
+++ b/arch/arm/dts/fsl-ls1043a.dtsi
@@ -290,7 +290,8 @@
 
sata: sata@320 {
compatible = "fsl,ls1043a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
interrupts = <0 69 4>;
clocks = < 4 0>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1046a.dtsi b/arch/arm/dts/fsl-ls1046a.dtsi
index 5ac10e0..e9c8243 100644
--- a/arch/arm/dts/fsl-ls1046a.dtsi
+++ b/arch/arm/dts/fsl-ls1046a.dtsi
@@ -294,7 +294,8 @@
 
sata: sata@320 {
compatible = "fsl,ls1046a-ahci";
-   reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20140520 0x0 0x4>; /* ecc sata 
addr*/
interrupts = <0 69 4>;
clocks = < 4 1>;
status = "disabled";
diff --git a/arch/arm/dts/fsl-ls1088a.dtsi b/arch/arm/dts/fsl-ls1088a.dtsi
index 9455e03..6a1cd0d 100644
--- a/arch/arm/dts/fsl-ls1088a.dtsi
+++ b/arch/arm/dts/fsl-ls1088a.dtsi
@@ -154,6 +154,8 @@
sata: sata@320 {
compatible = "fsl,ls1088a-ahci";
reg = <0x0 0x320 0x0 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata base */
+  0x7 0x100520  0x0 0x4>;  /* ecc sata addr*/
interrupts = <0 133 4>;
status = "disabled";
};
diff --git a/arch/arm/dts/ls1021a.dtsi b/arch/arm/dts/ls1021a.dtsi
index 7670a39..b3d1b07 100644
--- a/arch/arm/dts/ls1021a.dtsi
+++ b/arch/arm/dts/ls1021a.dtsi
@@ -406,7 +406,8 @@
 
sata: sata@320 {
compatible = "fsl,ls1021a-ahci";
-   reg = <0x320 0x1>;
+   reg = <0x0 0x320 0x0 0x1/* ccsr sata 
base */
+  0x0 0x20220520 0x0 0x4>; /* ecc sata 
addr*/
interrupts = <0 101 4>;
status = "disabled";
};
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/2] scsi: ceva: Clean up the driver code

2019-04-16 Thread Peng Ma
Distinguish the ecc val by chassis version and move the ecc addr to dts.
Add ls1028a soc support.

Signed-off-by: Peng Ma 
---
 drivers/ata/sata_ceva.c |   43 +--
 1 files changed, 25 insertions(+), 18 deletions(-)

diff --git a/drivers/ata/sata_ceva.c b/drivers/ata/sata_ceva.c
index 8887be9..d26f712 100644
--- a/drivers/ata/sata_ceva.c
+++ b/drivers/ata/sata_ceva.c
@@ -88,20 +88,16 @@
 #define LS1021_CEVA_PHY4_CFG   0x064a080b
 #define LS1021_CEVA_PHY5_CFG   0x2aa86470
 
-/* for ls1088a */
-#define LS1088_ECC_DIS_ADDR_CH20x100520
-#define LS1088_ECC_DIS_VAL_CH2 0x4000
-
-/* ecc addr-val pair */
-#define ECC_DIS_ADDR_CH2   0x20140520
+/* ecc val pair */
+#define ECC_DIS_VAL_CH10x0002
 #define ECC_DIS_VAL_CH20x8000
-#define SATA_ECC_REG_ADDR  0x20220520
-#define SATA_ECC_DISABLE   0x0002
+#define ECC_DIS_VAL_CH30x4000
 
 enum ceva_soc {
CEVA_1V84,
CEVA_LS1012A,
CEVA_LS1021A,
+   CEVA_LS1028A,
CEVA_LS1043A,
CEVA_LS1046A,
CEVA_LS1088A,
@@ -110,12 +106,14 @@ enum ceva_soc {
 
 struct ceva_sata_priv {
ulong base;
+   ulong ecc_base;
enum ceva_soc soc;
ulong flag;
 };
 
 static int ceva_init_sata(struct ceva_sata_priv *priv)
 {
+   ulong ecc_addr = priv->ecc_base;
ulong base = priv->base;
ulong tmp;
 
@@ -132,38 +130,38 @@ static int ceva_init_sata(struct ceva_sata_priv *priv)
break;
 
case CEVA_LS1021A:
-   writel(SATA_ECC_DISABLE, SATA_ECC_REG_ADDR);
+   if (ecc_addr)
+   writel(ECC_DIS_VAL_CH1, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(LS1021_CEVA_PHY2_CFG, base + AHCI_VEND_PP2C);
writel(LS1021_CEVA_PHY3_CFG, base + AHCI_VEND_PP3C);
writel(LS1021_CEVA_PHY4_CFG, base + AHCI_VEND_PP4C);
writel(LS1021_CEVA_PHY5_CFG, base + AHCI_VEND_PP5C);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + LS1021_AHCI_VEND_AXICC);
break;
 
case CEVA_LS1012A:
case CEVA_LS1043A:
case CEVA_LS1046A:
-   writel(ECC_DIS_VAL_CH2, ECC_DIS_ADDR_CH2);
-   /* fallthrough */
case CEVA_LS2080A:
+   if (ecc_addr)
+   writel(ECC_DIS_VAL_CH2, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
 
+   case CEVA_LS1028A:
case CEVA_LS1088A:
-   writel(LS1088_ECC_DIS_VAL_CH2, LS1088_ECC_DIS_ADDR_CH2);
+   if (ecc_addr)
+   writel(ECC_DIS_VAL_CH3, ecc_addr);
writel(CEVA_PHY1_CFG, base + AHCI_VEND_PPCFG);
writel(CEVA_TRANS_CFG, base + AHCI_VEND_PTC);
-   if (priv->flag & FLAG_COHERENT)
-   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
break;
}
 
+   if (priv->flag & FLAG_COHERENT)
+   writel(CEVA_AXICC_CFG, base + AHCI_VEND_AXICC);
+
return 0;
 }
 
@@ -187,6 +185,7 @@ static const struct udevice_id sata_ceva_ids[] = {
{ .compatible = "ceva,ahci-1v84", .data = CEVA_1V84 },
{ .compatible = "fsl,ls1012a-ahci", .data = CEVA_LS1012A },
{ .compatible = "fsl,ls1021a-ahci", .data = CEVA_LS1021A },
+   { .compatible = "fsl,ls1028a-ahci", .data = CEVA_LS1028A },
{ .compatible = "fsl,ls1043a-ahci", .data = CEVA_LS1043A },
{ .compatible = "fsl,ls1046a-ahci", .data = CEVA_LS1046A },
{ .compatible = "fsl,ls1088a-ahci", .data = CEVA_LS1088A },
@@ -205,8 +204,16 @@ static int sata_ceva_ofdata_to_platdata(struct udevice 
*dev)
if (priv->base == FDT_ADDR_T_NONE)
return -EINVAL;
 
+   priv->ecc_base = dev_read_addr_index(dev, 1);
+   if (priv->ecc_base == FDT_ADDR_T_NONE)
+   priv->ecc_base = 0;
+
priv->soc = dev_get_driver_data(dev);
 
+   debug("ccsr-sata-base %lx\t ecc-base %lx\n",
+ priv->base,
+ priv->ecc_base);
+
return 0;
 }
 
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-03-27 Thread Peng Ma


>-Original Message-
>From: Stefan Roese 
>Sent: 2019年3月27日 18:01
>To: Peng Ma ; Prabhakar Kushwaha
>; Shengzhou Liu ;
>Ruchika Gupta 
>Cc: Yinbo Zhu ; s...@chromium.org; Jagdish Gediya
>; York Sun ;
>bmeng...@gmail.com; m...@marvell.com; Andy Tang ;
>u-boot@lists.denx.de
>Subject: Re: [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale
>powerpc socs
>
>On 27.03.19 10:23, Peng Ma wrote:
>> 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 
>> ---
>> depends on:
>>  -
>https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchw
>ork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99168data
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>3%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072
>966sdata=3Z33Z5raG%2BnbtSUpz2kPCGpefk1byOgy0%2Br3R4DUFU8%
>3Dreserved=0
>>  -
>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc
>>
>hwork.ozlabs.org%2Fproject%2Fuboot%2Flist%2F%3Fseries%3D99167d
>ata
>>
>=02%7C01%7Cpeng.ma%40nxp.com%7C71e43bd30bf24799586f08d6b29b1ef
>3%7C686e
>>
>a1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636892776652072966
>sdata=sr
>> %2BCh4UioJw0kuhOiLhc3F6keRhIH8Wflt%2BvMJnHtsY%3Dreserved=
>0
>>
>>   drivers/ata/Kconfig|   10 +
>>   drivers/ata/Makefile   |1 +
>>   drivers/ata/fsl_ahci.c | 1030
>
>>   drivers/ata/fsl_sata.h |1 +
>>   4 files changed, 1042 insertions(+)
>>   create mode 100644 drivers/ata/fsl_ahci.c
>
>Will this patch series replace the old fsl_sata.c driver? If yes, could you 
>remove
>this driver as well in this series?
[Peng Ma] 
Hi Stefan,

fsl_sata.c used to Non DM sata driver for some powerpc socs. Currently
We only have one board that supports dts initialization. I will remove this old 
driver
When all of our powerpc socs support DM.

Best Regards,
Peng
>
>Thanks,
>Stefan
>
>> diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig index
>> 49a056e941..efac29c709 100644
>> --- a/drivers/ata/Kconfig
>> +++ b/drivers/ata/Kconfig
>> @@ -59,6 +59,16 @@ config DWC_AHCI
>>Enable this driver to support Sata devices through
>>Synopsys DWC AHCI module.
>>
>> +config FSL_AHCI
>> +bool "Enable Freescale AHCI driver support"
>> +select SCSI_AHCI
>> +depends on AHCI
>> +depends on DM_SCSI
>> +help
>> +  Enable this driver to support Sata devices found in
>> +  some Freescale PowerPC SoCs.
>> +
>> +
>>   config DWC_AHSATA
>>  bool "Enable DWC AHSATA driver support"
>>  select LIBATA
>> diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile index
>> 10bed53bb3..93aabf34c7 100644
>> --- a/drivers/ata/Makefile
>> +++ b/drivers/ata/Makefile
>> @@ -4,6 +4,7 @@
>>   # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
>>
>>   obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
>> +obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
>>   obj-$(CONFIG_AHCI) += ahci-uclass.o
>>   obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
>>   obj-$(CONFIG_SCSI_AHCI) += ahci.o
>> diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c new file
>> mode 100644 index 00..16c6f7a335
>> --- /dev/null
>> +++ b/drivers/ata/fsl_ahci.c
>> @@ -0,0 +1,1030 @@
>> +// SPDX-License-Identifier: GPL-2.0+
>> +/*
>> + * NXP PPC SATA platform driver
>> + *
>> + * (C) Copyright 2019 NXP, Inc.
>> + *
>> + */
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +#include 
>> +
>> +#include "fsl_sata.h"
>> +
>> +struct fsl_ahci_priv {
>> +u32 base;
>> +u32 flag;
>> +u32 number;
>> +fsl_sata_t *fsl_sata;
>> +};
>> +
>> +static int fsl_ahci_bind(struct udevice *dev) {
>> +return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi",
>> +NULL); }
>> +
>> +static int fsl_ahci

[U-Boot] [PATCH 3/4] powerpc: mpc85xx: delete FSL_SATA for T2080QDS board.

2019-03-27 Thread Peng Ma
Signed-off-by: Peng Ma 
---
depends on:
- https://patchwork.ozlabs.org/project/uboot/list/?series=99168
- https://patchwork.ozlabs.org/project/uboot/list/?series=99167

 arch/powerpc/cpu/mpc85xx/Kconfig | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 0057f195b3..aebf168a89 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -352,7 +352,6 @@ config TARGET_T2080QDS
select PHYS_64BIT
select FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
select FSL_DDR_INTERACTIVE
-   imply CMD_SATA
 
 config TARGET_T2080RDB
bool "Support T2080RDB"
@@ -361,6 +360,7 @@ config TARGET_T2080RDB
select SUPPORT_SPL
select PHYS_64BIT
imply CMD_SATA
+   imply FSL_SATA
imply PANIC_HANG
 
 config TARGET_T2081QDS
@@ -1081,10 +1081,8 @@ config ARCH_T2080
select SYS_FSL_SEC_COMPAT_4
select SYS_PPC64
select FSL_IFC
-   imply CMD_SATA
imply CMD_NAND
imply CMD_REGINFO
-   imply FSL_SATA
 
 config ARCH_T2081
bool
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 4/4] configs: enable sata device module in T2080QDS

2019-03-27 Thread Peng Ma
This patch is to enable sata DM for T2080QDS in uboot

Signed-off-by: Peng Ma 
---
depends on:
- https://patchwork.ozlabs.org/project/uboot/list/?series=99168
- https://patchwork.ozlabs.org/project/uboot/list/?series=99167

 configs/T2080QDS_NAND_defconfig   | 11 +++
 configs/T2080QDS_SDCARD_defconfig | 11 +++
 configs/T2080QDS_SECURE_BOOT_defconfig| 16 +---
 configs/T2080QDS_SPIFLASH_defconfig   | 11 +++
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 18 ++
 configs/T2080QDS_defconfig| 11 +++
 6 files changed, 47 insertions(+), 31 deletions(-)

diff --git a/configs/T2080QDS_NAND_defconfig b/configs/T2080QDS_NAND_defconfig
index bbd2f3e781..e67a50251a 100644
--- a/configs/T2080QDS_NAND_defconfig
+++ b/configs/T2080QDS_NAND_defconfig
@@ -7,6 +7,7 @@ CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
+CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -38,7 +39,10 @@ 
CONFIG_MTDPARTS_DEFAULT="mtdparts=fe800.nor:1m(uboot),5m(kernel),128k(dtb),9
 CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_NAND=y
+CONFIG_DM=y
+CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -56,12 +60,11 @@ CONFIG_PHYLIB=y
 CONFIG_PHY_AQUANTIA=y
 CONFIG_E1000=y
 CONFIG_MII=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
 CONFIG_USB=y
-CONFIG_USB_STORAGE=y
 CONFIG_DM_USB=y
-CONFIG_DM_MMC=y
-CONFIG_BLK=y
-CONFIG_DM=y
+CONFIG_USB_STORAGE=y
diff --git a/configs/T2080QDS_SDCARD_defconfig 
b/configs/T2080QDS_SDCARD_defconfig
index df66599475..5f681d6d0f 100644
--- a/configs/T2080QDS_SDCARD_defconfig
+++ b/configs/T2080QDS_SDCARD_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
+CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -38,7 +39,10 @@ 
CONFIG_MTDPARTS_DEFAULT="mtdparts=fe800.nor:1m(uboot),5m(kernel),128k(dtb),9
 CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_DM=y
+CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -55,12 +59,11 @@ CONFIG_PHYLIB=y
 CONFIG_PHY_AQUANTIA=y
 CONFIG_E1000=y
 CONFIG_MII=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
 CONFIG_USB=y
-CONFIG_USB_STORAGE=y
 CONFIG_DM_USB=y
-CONFIG_DM_MMC=y
-CONFIG_BLK=y
-CONFIG_DM=y
+CONFIG_USB_STORAGE=y
diff --git a/configs/T2080QDS_SECURE_BOOT_defconfig 
b/configs/T2080QDS_SECURE_BOOT_defconfig
index 766ee7c4ac..f6284fede0 100644
--- a/configs/T2080QDS_SECURE_BOOT_defconfig
+++ b/configs/T2080QDS_SECURE_BOOT_defconfig
@@ -3,6 +3,8 @@ CONFIG_SYS_TEXT_BASE=0xEFF4
 CONFIG_SECURE_BOOT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
+CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
+CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -26,7 +28,11 @@ CONFIG_CMD_FAT=y
 CONFIG_CMD_MTDPARTS=y
 
CONFIG_MTDIDS_DEFAULT="nor0=fe800.nor,nand0=fff80.flash,spi0=spife11.0"
 
CONFIG_MTDPARTS_DEFAULT="mtdparts=fe800.nor:1m(uboot),5m(kernel),128k(dtb),96m(fs),-(user);fff80.flash:1m(uboot),5m(kernel),128k(dtb),96m(fs),-(user);spife11.0:1m(uboot),5m(kernel),128k(dtb),-(user)"
+CONFIG_OF_CONTROL=y
+CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_DM=y
+CONFIG_FSL_AHCI=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -43,18 +49,14 @@ CONFIG_PHYLIB=y
 CONFIG_PHY_AQUANTIA=y
 CONFIG_E1000=y
 CONFIG_MII=y
+CONFIG_SCSI=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_FSL_ESPI=y
 CONFIG_USB=y
-CONFIG_USB_STORAGE=y
 CONFIG_DM_USB=y
+CONFIG_USB_STORAGE=y
 CONFIG_RSA=y
 CONFIG_SPL_RSA=y
 CONFIG_RSA_SOFTWARE_EXP=y
-CONFIG_OF_LIBFDT=y
-CONFIG_MPC85XX_HAVE_RESET_VECTOR=y
-CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
-CONFIG_DM_MMC=y
-CONFIG_BLK=y
-CONFIG_OF_CONTROL=y
diff --git a/configs/T2080QDS_SPIFLASH_defconfig 
b/configs/T2080QDS_SPIFLASH_defconfig
index 43c50fb27b..4fe737ddb5 100644
--- a/configs/T2080QDS_SPIFLASH_defconfig
+++ b/configs/T2080QDS_SPIFLASH_defconfig
@@ -9,6 +9,7 @@ CONFIG_SPL_SPI_FLASH_SUPPORT=y
 CONFIG_SPL_SPI_SUPPORT=y
 CONFIG_MPC85xx=y
 CONFIG_TARGET_T2080QDS=y
+CONFIG_AHCI=y
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -39,7 +40,10 @@ 
CONFIG_MTDPARTS_DEFAULT="mtdparts=fe800.nor:1m(uboot),5m(kernel),128k(dtb),9
 CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="t2080qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
+CONFIG_DM=y
+CONFIG_FSL_AHCI=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -56,12 +60,11 @@ CONFIG_PHYLIB=y
 CONFIG_PHY_AQUANTIA=y

[U-Boot] [PATCH 2/4] ppc: t2080qds: add sata node

2019-03-27 Thread Peng Ma
This patch is to add sata node for t2080qds

Signed-off-by: Peng Ma 
---
depends on:
- https://patchwork.ozlabs.org/project/uboot/list/?series=99168
- https://patchwork.ozlabs.org/project/uboot/list/?series=99167

 arch/powerpc/dts/t2080.dtsi | 16 
 1 file changed, 16 insertions(+)

diff --git a/arch/powerpc/dts/t2080.dtsi b/arch/powerpc/dts/t2080.dtsi
index 01ed49..d2bebb08b6 100644
--- a/arch/powerpc/dts/t2080.dtsi
+++ b/arch/powerpc/dts/t2080.dtsi
@@ -87,5 +87,21 @@
dr_mode = "host";
phy_type = "utmi";
};
+
+   sata0: sata@22 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x22 0x1000>;
+   interrupts = <68 0x2 0 0>;
+   sata-number = <0x0>;
+   sata-fpdma = <0x0>;
+   };
+
+   sata1: sata@221000 {
+   compatible = "fsl,pq-sata-v2";
+   reg = <0x221000 0x1000>;
+   interrupts = <69 0x2 0 0>;
+   sata-number = <0x0>;
+   sata-fpdma = <0x0>;
+   };
};
 };
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/4] ata: fsl_ahci: Add sata DM support for Freescale powerpc socs

2019-03-27 Thread Peng Ma
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 
---
depends on:
- https://patchwork.ozlabs.org/project/uboot/list/?series=99168
- https://patchwork.ozlabs.org/project/uboot/list/?series=99167

 drivers/ata/Kconfig|   10 +
 drivers/ata/Makefile   |1 +
 drivers/ata/fsl_ahci.c | 1030 
 drivers/ata/fsl_sata.h |1 +
 4 files changed, 1042 insertions(+)
 create mode 100644 drivers/ata/fsl_ahci.c

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 49a056e941..efac29c709 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -59,6 +59,16 @@ config DWC_AHCI
  Enable this driver to support Sata devices through
  Synopsys DWC AHCI module.
 
+config FSL_AHCI
+   bool "Enable Freescale AHCI driver support"
+   select SCSI_AHCI
+   depends on AHCI
+   depends on DM_SCSI
+   help
+ Enable this driver to support Sata devices found in
+ some Freescale PowerPC SoCs.
+
+
 config DWC_AHSATA
bool "Enable DWC AHSATA driver support"
select LIBATA
diff --git a/drivers/ata/Makefile b/drivers/ata/Makefile
index 10bed53bb3..93aabf34c7 100644
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
@@ -4,6 +4,7 @@
 # Wolfgang Denk, DENX Software Engineering, w...@denx.de.
 
 obj-$(CONFIG_DWC_AHCI) += dwc_ahci.o
+obj-$(CONFIG_FSL_AHCI) += fsl_ahci.o
 obj-$(CONFIG_AHCI) += ahci-uclass.o
 obj-$(CONFIG_AHCI_PCI) += ahci-pci.o
 obj-$(CONFIG_SCSI_AHCI) += ahci.o
diff --git a/drivers/ata/fsl_ahci.c b/drivers/ata/fsl_ahci.c
new file mode 100644
index 00..16c6f7a335
--- /dev/null
+++ b/drivers/ata/fsl_ahci.c
@@ -0,0 +1,1030 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * NXP PPC SATA platform driver
+ *
+ * (C) Copyright 2019 NXP, Inc.
+ *
+ */
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#include "fsl_sata.h"
+
+struct fsl_ahci_priv {
+   u32 base;
+   u32 flag;
+   u32 number;
+   fsl_sata_t *fsl_sata;
+};
+
+static int fsl_ahci_bind(struct udevice *dev)
+{
+   return device_bind_driver(dev, "fsl_ahci_scsi", "fsl_ahci_scsi", NULL);
+}
+
+static int fsl_ahci_ofdata_to_platdata(struct udevice *dev)
+{
+   struct fsl_ahci_priv *priv = dev_get_priv(dev);
+
+   priv->number = dev_read_u32_default(dev, "sata-number", -1);
+   priv->flag = dev_read_u32_default(dev, "sata-fpdma", -1);
+
+   priv->base = dev_read_addr(dev);
+   if (priv->base == FDT_ADDR_T_NONE)
+   return -EINVAL;
+
+   return 0;
+}
+
+static int ata_wait_register(unsigned __iomem *addr, u32 mask,
+u32 val, u32 timeout_msec)
+{
+   int i;
+
+   for (i = 0; ((in_le32(addr) & mask) != val) && i < timeout_msec; i++)
+   mdelay(1);
+
+   return (i < timeout_msec) ? 0 : -1;
+}
+
+static void fsl_sata_dump_sfis(struct sata_fis_d2h *s)
+{
+   printf("Status FIS dump:\n\r");
+   printf("fis_type:   %02x\n\r", s->fis_type);
+   printf("pm_port_i:  %02x\n\r", s->pm_port_i);
+   printf("status: %02x\n\r", s->status);
+   printf("error:  %02x\n\r", s->error);
+   printf("lba_low:%02x\n\r", s->lba_low);
+   printf("lba_mid:%02x\n\r", s->lba_mid);
+   printf("lba_high:   %02x\n\r", s->lba_high);
+   printf("device: %02x\n\r", s->device);
+   printf("lba_low_exp:%02x\n\r", s->lba_low_exp);
+   printf("lba_mid_exp:%02x\n\r", s->lba_mid_exp);
+   printf("lba_high_exp:   %02x\n\r", s->lba_high_exp);
+   printf("res1:   %02x\n\r", s->res1);
+   printf("sector_count:   %02x\n\r", s->sector_count);
+   printf("sector_count_exp:   %02x\n\r", s->sector_count_exp);
+}
+
+static void fsl_sata_dump_regs(fsl_sata_reg_t __iomem *reg)
+{
+   printf("\n\rSATA:   %08x\n\r", (u32)reg);
+   printf("CQR:%08x\n\r", in_le32(>cqr));
+   printf("CAR:%08x\n\r", in_le32(>car));
+   printf("CCR:%08x\n\r", in_le32(>ccr));
+   p

[U-Boot] [v2] powerpc: t104xrdb: Add support of MTA9ADF1G72AZ DDR

2019-02-20 Thread Peng Ma
T1040RDB has been upgraded to support  new DDR ie. MTA9ADF1G72AZ-3G2, 8GB.
So adding support of new DDR part by updating board_specific_parameters
udimm0.

Signed-off-by: Peng Ma 
---
change for V2:
- update comments and subject

 board/freescale/t104xrdb/ddr.h |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/board/freescale/t104xrdb/ddr.h b/board/freescale/t104xrdb/ddr.h
index 319fc59..f9d667f 100644
--- a/board/freescale/t104xrdb/ddr.h
+++ b/board/freescale/t104xrdb/ddr.h
@@ -29,6 +29,7 @@ static const struct board_specific_parameters udimm0[] = {
 */
 #ifdef CONFIG_SYS_FSL_DDR4
{2,  1600, 4, 8, 6, 0x07090A0c, 0x0e0f100a},
+   {1,  1600, 4, 8, 5, 0x0607080B, 0x0C0C0D09},
 #elif defined(CONFIG_SYS_FSL_DDR3)
{2,  833,  4, 8, 6, 0x06060607, 0x08080807},
{2,  833,  0, 8, 6, 0x06060607, 0x08080807},
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 4/7] configs: ls1088a: enable sata configs for all ls1088a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1088ardb
and ls1088aqds defconfigs that missing one of them or more.
Support sata for all ls1088a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls1088aqds_qspi_defconfig |  3 +++
 configs/ls1088aqds_sdcard_ifc_defconfig   |  3 +++
 configs/ls1088aqds_sdcard_qspi_defconfig  |  3 +++
 configs/ls1088aqds_tfa_defconfig  | 17 +++--
 configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls1088ardb_sdcard_qspi_defconfig  |  3 +++
 configs/ls1088ardb_tfa_SECURE_BOOT_defconfig  | 14 +++---
 configs/ls1088ardb_tfa_defconfig  | 12 ++--
 9 files changed, 38 insertions(+), 23 deletions(-)

diff --git a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig 
b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
index 731408c13e..0254a861d8 100644
--- a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x2010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
 CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,6 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1088a-qds"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -41,6 +43,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_qspi_defconfig 
b/configs/ls1088aqds_qspi_defconfig
index 1a3e74600c..9160de255d 100644
--- a/configs/ls1088aqds_qspi_defconfig
+++ b/configs/ls1088aqds_qspi_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1088AQDS=y
 CONFIG_SYS_TEXT_BASE=0x2010
 CONFIG_FSL_LS_PPA=y
 CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,6 +30,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -41,6 +43,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig 
b/configs/ls1088aqds_sdcard_ifc_defconfig
index b34be2eaf9..868d6e7c87 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_OF_BOARD_SETUP=y
@@ -38,6 +39,7 @@ CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig 
b/configs/ls1088aqds_sdcard_qspi_defconfig
index d0319a5b63..6a9577aba2 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -39,6 +40,7 @@ CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_tfa_defconfig b/configs/ls1088aqds_tfa_defconfig
index 857362bb01..891810a583 100644
--- a/configs/ls1088aqds_tfa_defconfig
+++ b/configs/ls1088aqds_tfa_defconfig
@@ -1,10 +1,11 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1088AQDS=y
 CONFIG_SYS_TEXT_BASE=0x8200
+CONFIG_QSPI_AHB_INIT=y
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
-CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -17,7 +18,6 @@ CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 
earlycon=uart8250,mmio,0x21
 # CONFIG_USE_BOOTCOMMAND is not set
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
-CONFIG_HUSH_PARSER=y
 CONFIG_CMD_GREPENV=y
 CONFIG_CMD_MEMTEST=y
 CONFIG_CMD_I2C=y
@@ -25,18 +25,18 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_PING=y
 CONFIG_MP=y
 CONF

[U-Boot] [PATCH 5/7] configs: ls208xa: enable sata configs for all ls208xa defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls208xardb
and ls208xaqds defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls208xa defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls2080aqds_SECURE_BOOT_defconfig  |  3 +++
 configs/ls2080aqds_nand_defconfig |  3 +++
 configs/ls2080aqds_qspi_defconfig |  3 +++
 configs/ls2080aqds_sdcard_defconfig   |  3 +++
 configs/ls2080ardb_SECURE_BOOT_defconfig  |  3 +++
 configs/ls2080ardb_nand_defconfig |  3 +++
 configs/ls2081ardb_defconfig  |  4 
 configs/ls2088aqds_tfa_defconfig  |  9 +
 configs/ls2088ardb_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls2088ardb_qspi_defconfig |  3 +++
 configs/ls2088ardb_tfa_SECURE_BOOT_defconfig  | 18 +++---
 configs/ls2088ardb_tfa_defconfig  | 14 ++
 12 files changed, 46 insertions(+), 23 deletions(-)

diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig 
b/configs/ls2080aqds_SECURE_BOOT_defconfig
index d7c0db6343..5b85a94ed1 100644
--- a/configs/ls2080aqds_SECURE_BOOT_defconfig
+++ b/configs/ls2080aqds_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SYS_TEXT_BASE=0x3010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -46,6 +48,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_nand_defconfig 
b/configs/ls2080aqds_nand_defconfig
index 30b506fafc..6340c19b08 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -6,6 +6,7 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -41,6 +42,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -53,6 +55,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_qspi_defconfig 
b/configs/ls2080aqds_qspi_defconfig
index 44a718e855..5c509f60be 100644
--- a/configs/ls2080aqds_qspi_defconfig
+++ b/configs/ls2080aqds_qspi_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SYS_TEXT_BASE=0x2010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -32,6 +33,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_sdcard_defconfig 
b/configs/ls2080aqds_sdcard_defconfig
index d6ca28979f..9c85b8e9c0 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -40,6 +41,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig 
b/configs/ls2080ardb_SECURE_BOOT_defconfig
index 150693b387..647edeaed7 100644
--- a/configs/ls2080ardb_SECURE_BOOT_defconfig
+++ b/configs/ls2080ardb_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS2080ARDB=y
 CONFIG_SYS_TEXT_BASE=0x3010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -46,6 +48,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_CONS_INDEX=2
 CONFI

[U-Boot] [PATCH 7/7] configs: ls1021a: enable sata configs for all ls1021a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1021a
defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls1021a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1021aiot_qspi_defconfig| 5 -
 configs/ls1021aiot_sdcard_defconfig  | 5 -
 configs/ls1021aqds_ddr4_nor_defconfig| 4 
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig | 4 
 configs/ls1021aqds_nand_defconfig| 4 
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig | 4 
 configs/ls1021aqds_nor_defconfig | 4 
 configs/ls1021aqds_nor_lpuart_defconfig  | 4 
 configs/ls1021aqds_qspi_defconfig| 4 
 configs/ls1021aqds_sdcard_ifc_defconfig  | 4 
 configs/ls1021aqds_sdcard_qspi_defconfig | 4 
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig | 3 +++
 configs/ls1021atwr_nor_lpuart_defconfig  | 3 +++
 configs/ls1021atwr_qspi_defconfig| 3 +++
 configs/ls1021atwr_sdcard_ifc_defconfig  | 3 +++
 configs/ls1021atwr_sdcard_qspi_defconfig | 3 +++
 16 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/configs/ls1021aiot_qspi_defconfig 
b/configs/ls1021aiot_qspi_defconfig
index 0cafb5f294..c166abcdd4 100644
--- a/configs/ls1021aiot_qspi_defconfig
+++ b/configs/ls1021aiot_qspi_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AIOT=y
 CONFIG_SYS_TEXT_BASE=0x4001
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT"
 CONFIG_MISC_INIT_R=y
@@ -15,7 +16,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-iot-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -28,6 +31,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
@@ -36,4 +40,3 @@ CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_USB_STORAGE=y
diff --git a/configs/ls1021aiot_sdcard_defconfig 
b/configs/ls1021aiot_sdcard_defconfig
index 0b15353bac..cbe1bf1186 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1021AIOT=y
 CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI"
 CONFIG_MISC_INIT_R=y
@@ -20,7 +21,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-iot-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -33,6 +36,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
@@ -41,4 +45,3 @@ CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_USB_STORAGE=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig 
b/configs/ls1021aqds_ddr4_nor_defconfig
index d697a0302b..296cd094a3 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -33,7 +34,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -47,6 +50,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SPECIFY_CONSOLE_INDEX=y
 CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig 
b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index f485b73a8b..187c534ffc 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -34,7 +35,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -48,6 +51,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_USB=y
diff --git a/configs/ls1021aqds_nand_defconfig 
b/configs/ls1021aqds_nand_defconfig
index 045ef52a0f..81701fccf0 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_

[U-Boot] [PATCH 6/7] configs: ls1012afrwy: enable sata configs for all ls1012afrwy defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1012afrwy
and ls1012afrwy defconfigs that missing one of them or more.
Support sata for all ls1012afrwy defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig | 4 +++-
 configs/ls1012afrwy_qspi_defconfig | 4 +++-
 configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig  | 4 +++-
 configs/ls1012afrwy_tfa_defconfig  | 4 +++-
 4 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig 
b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
index c273dc937e..d5034b7b26 100644
--- a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -28,7 +29,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -40,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_qspi_defconfig 
b/configs/ls1012afrwy_qspi_defconfig
index 85523ba2d3..6fa13b205e 100644
--- a/configs/ls1012afrwy_qspi_defconfig
+++ b/configs/ls1012afrwy_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,7 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -41,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig 
b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
index d9020c5281..02f5dedfa2 100644
--- a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
@@ -5,6 +5,7 @@ CONFIG_SECURE_BOOT=y
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -28,7 +29,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -40,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_tfa_defconfig 
b/configs/ls1012afrwy_tfa_defconfig
index 08b3692f97..1da166e43a 100644
--- a/configs/ls1012afrwy_tfa_defconfig
+++ b/configs/ls1012afrwy_tfa_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,7 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -41,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 1/7] armv8: fsl-layerscape: ls1043a: move SCSI_AHCI and SCSI form arch/arm/cpu/armv8/fsl-layerscape/Kconfig to arch/arm/Kconfig

2019-01-30 Thread Peng Ma
remove SCSI and SCSI_AHCI configs for ls1043ardb due to no sata interface
support.
this changed is to fixed the ls1043ardb compile warning as fallows:
= 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 
---
 arch/arm/Kconfig  | 2 +-
 arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index d6b1629a00..afc8a85602 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1221,6 +1221,7 @@ config TARGET_LS1043AQDS
select BOARD_LATE_INIT
select SUPPORT_SPL
imply SCSI
+   imply SCSI_AHCI
help
  Support for Freescale LS1043AQDS platform.
 
@@ -1232,7 +1233,6 @@ config TARGET_LS1043ARDB
select BOARD_EARLY_INIT_F
select BOARD_LATE_INIT
select SUPPORT_SPL
-   imply SCSI
help
  Support for Freescale LS1043ARDB platform.
 
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig 
b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
index 01c5068ab6..7d52ed20e2 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
@@ -49,8 +49,6 @@ config ARCH_LS1043A
select SYS_I2C_MXC_I2C2
select SYS_I2C_MXC_I2C3
select SYS_I2C_MXC_I2C4
-   imply SCSI
-   imply SCSI_AHCI
imply CMD_PCI
 
 config ARCH_LS1046A
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 2/7] configs: ls1043aqds: enable sata configs for all ls1043aqds defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1043aqds
defconfigs that missing one of them or more.
Support sata for all ls1043aqds defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1043aqds_lpuart_defconfig  | 3 +++
 configs/ls1043aqds_nand_defconfig| 3 +++
 configs/ls1043aqds_nor_ddr3_defconfig| 3 +++
 configs/ls1043aqds_qspi_defconfig| 3 +++
 configs/ls1043aqds_sdcard_ifc_defconfig  | 3 +++
 configs/ls1043aqds_sdcard_qspi_defconfig | 3 +++
 configs/ls1043aqds_tfa_SECURE_BOOT_defconfig | 2 ++
 configs/ls1043aqds_tfa_defconfig | 2 ++
 8 files changed, 22 insertions(+)

diff --git a/configs/ls1043aqds_lpuart_defconfig 
b/configs/ls1043aqds_lpuart_defconfig
index 79448129bd..c8ddbc28ab 100644
--- a/configs/ls1043aqds_lpuart_defconfig
+++ b/configs/ls1043aqds_lpuart_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -30,6 +31,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_SPI=y
diff --git a/configs/ls1043aqds_nand_defconfig 
b/configs/ls1043aqds_nand_defconfig
index ada225c3b6..c845b01831 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -7,6 +7,7 @@ CONFIG_FSL_LS_PPA=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -44,6 +45,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -58,6 +60,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig 
b/configs/ls1043aqds_nor_ddr3_defconfig
index e86d4196b5..3cabc68729 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_DM_MMC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_qspi_defconfig 
b/configs/ls1043aqds_qspi_defconfig
index d948981080..434f69c289 100644
--- a/configs/ls1043aqds_qspi_defconfig
+++ b/configs/ls1043aqds_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -39,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig 
b/configs/ls1043aqds_sdcard_ifc_defconfig
index afa91e8b3a..bdbb12d302 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -44,6 +45,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -58,6 +60,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig 
b/configs/ls1043aqds_sdcard_qspi_defconfig
index 310cb2319a..3b16f3e84f 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y

[U-Boot] [PATCH 3/7] configs: ls1046a: enable sata configs for all ls1046a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1046ardb
and ls1046aqds defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls1046a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1046aqds_SECURE_BOOT_defconfig  | 3 +++
 configs/ls1046aqds_lpuart_defconfig   | 3 +++
 configs/ls1046aqds_nand_defconfig | 3 +++
 configs/ls1046aqds_qspi_defconfig | 3 +++
 configs/ls1046aqds_sdcard_ifc_defconfig   | 3 +++
 configs/ls1046aqds_sdcard_qspi_defconfig  | 3 +++
 configs/ls1046ardb_emmc_defconfig | 3 +++
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig | 3 +++
 configs/ls1046ardb_qspi_spl_defconfig | 4 
 configs/ls1046ardb_sdcard_defconfig   | 3 +++
 configs/ls1046ardb_tfa_SECURE_BOOT_defconfig  | 3 +++
 11 files changed, 34 insertions(+)

diff --git a/configs/ls1046aqds_SECURE_BOOT_defconfig 
b/configs/ls1046aqds_SECURE_BOOT_defconfig
index ae05dd150b..2a811ae627 100644
--- a/configs/ls1046aqds_SECURE_BOOT_defconfig
+++ b/configs/ls1046aqds_SECURE_BOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_SECURE_BOOT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT=y
@@ -30,6 +31,7 @@ 
CONFIG_MTDPARTS_DEFAULT="mtdparts=6000.nor:2m@0x10(nor_bank0_uboot),40m@
 CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -43,6 +45,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_lpuart_defconfig 
b/configs/ls1046aqds_lpuart_defconfig
index 0a8d51e43d..5b5800a9bf 100644
--- a/configs/ls1046aqds_lpuart_defconfig
+++ b/configs/ls1046aqds_lpuart_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -45,6 +47,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_SPI=y
diff --git a/configs/ls1046aqds_nand_defconfig 
b/configs/ls1046aqds_nand_defconfig
index 9e11db7d7f..4b594d5a87 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_FSL_LS_PPA=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -37,6 +38,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_qspi_defconfig 
b/configs/ls1046aqds_qspi_defconfig
index a6bbf106e1..16fc81a46d 100644
--- a/configs/ls1046aqds_qspi_defconfig
+++ b/configs/ls1046aqds_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -40,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig 
b/configs/ls1046aqds_sdcard_ifc_defconfig
index edf915fdd6..9da8fe0d4f 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -46,6 +47,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -60,6 +62,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defc

[U-Boot] [PATCH 6/7] configs: ls1012afrwy: enable sata configs for all ls1012afrwy defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1012afrwy
and ls1012afrwy defconfigs that missing one of them or more.
Support sata for all ls1012afrwy defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig | 4 +++-
 configs/ls1012afrwy_qspi_defconfig | 4 +++-
 configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig  | 4 +++-
 configs/ls1012afrwy_tfa_defconfig  | 4 +++-
 4 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig 
b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
index c273dc937e..d5034b7b26 100644
--- a/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_qspi_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -28,7 +29,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -40,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_qspi_defconfig 
b/configs/ls1012afrwy_qspi_defconfig
index 85523ba2d3..6fa13b205e 100644
--- a/configs/ls1012afrwy_qspi_defconfig
+++ b/configs/ls1012afrwy_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1012AFRWY=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,7 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -41,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig 
b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
index d9020c5281..02f5dedfa2 100644
--- a/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig
@@ -5,6 +5,7 @@ CONFIG_SECURE_BOOT=y
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -28,7 +29,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -40,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1012afrwy_tfa_defconfig 
b/configs/ls1012afrwy_tfa_defconfig
index 08b3692f97..1da166e43a 100644
--- a/configs/ls1012afrwy_tfa_defconfig
+++ b/configs/ls1012afrwy_tfa_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,7 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1012a-frwy"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
-# CONFIG_BLK is not set
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
@@ -41,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 7/7] configs: ls1021a: enable sata configs for all ls1021a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1021a
defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls1021a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1021aiot_qspi_defconfig| 5 -
 configs/ls1021aiot_sdcard_defconfig  | 5 -
 configs/ls1021aqds_ddr4_nor_defconfig| 4 
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig | 4 
 configs/ls1021aqds_nand_defconfig| 4 
 configs/ls1021aqds_nor_SECURE_BOOT_defconfig | 4 
 configs/ls1021aqds_nor_defconfig | 4 
 configs/ls1021aqds_nor_lpuart_defconfig  | 4 
 configs/ls1021aqds_qspi_defconfig| 4 
 configs/ls1021aqds_sdcard_ifc_defconfig  | 4 
 configs/ls1021aqds_sdcard_qspi_defconfig | 4 
 configs/ls1021atwr_nor_SECURE_BOOT_defconfig | 3 +++
 configs/ls1021atwr_nor_lpuart_defconfig  | 3 +++
 configs/ls1021atwr_qspi_defconfig| 3 +++
 configs/ls1021atwr_sdcard_ifc_defconfig  | 3 +++
 configs/ls1021atwr_sdcard_qspi_defconfig | 3 +++
 16 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/configs/ls1021aiot_qspi_defconfig 
b/configs/ls1021aiot_qspi_defconfig
index 0cafb5f294..c166abcdd4 100644
--- a/configs/ls1021aiot_qspi_defconfig
+++ b/configs/ls1021aiot_qspi_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AIOT=y
 CONFIG_SYS_TEXT_BASE=0x4001
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT"
 CONFIG_MISC_INIT_R=y
@@ -15,7 +16,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-iot-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -28,6 +31,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
@@ -36,4 +40,3 @@ CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_USB_STORAGE=y
diff --git a/configs/ls1021aiot_sdcard_defconfig 
b/configs/ls1021aiot_sdcard_defconfig
index 0b15353bac..cbe1bf1186 100644
--- a/configs/ls1021aiot_sdcard_defconfig
+++ b/configs/ls1021aiot_sdcard_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1021AIOT=y
 CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_SYS_EXTRA_OPTIONS="RAMBOOT_PBL,SPL_FSL_PBL,SD_BOOT,SD_BOOT_QSPI"
 CONFIG_MISC_INIT_R=y
@@ -20,7 +21,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-iot-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
@@ -33,6 +36,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
@@ -41,4 +45,3 @@ CONFIG_FSL_QSPI=y
 CONFIG_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
-CONFIG_USB_STORAGE=y
diff --git a/configs/ls1021aqds_ddr4_nor_defconfig 
b/configs/ls1021aqds_ddr4_nor_defconfig
index d697a0302b..296cd094a3 100644
--- a/configs/ls1021aqds_ddr4_nor_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -33,7 +34,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-duart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -47,6 +50,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SPECIFY_CONSOLE_INDEX=y
 CONFIG_DM_SERIAL=y
 CONFIG_SYS_NS16550=y
diff --git a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig 
b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
index f485b73a8b..187c534ffc 100644
--- a/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
+++ b/configs/ls1021aqds_ddr4_nor_lpuart_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1021AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=1
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -34,7 +35,9 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
 CONFIG_FLASH_CFI_DRIVER=y
@@ -48,6 +51,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_USB=y
diff --git a/configs/ls1021aqds_nand_defconfig 
b/configs/ls1021aqds_nand_defconfig
index 045ef52a0f..81701fccf0 100644
--- a/configs/ls1021aqds_nand_defconfig
+++ b/configs/ls1021aqds_

[U-Boot] [PATCH 5/7] configs: ls208xa: enable sata configs for all ls208xa defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls208xardb
and ls208xaqds defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls208xa defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls2080aqds_SECURE_BOOT_defconfig  |  3 +++
 configs/ls2080aqds_nand_defconfig |  3 +++
 configs/ls2080aqds_qspi_defconfig |  3 +++
 configs/ls2080aqds_sdcard_defconfig   |  3 +++
 configs/ls2080ardb_SECURE_BOOT_defconfig  |  3 +++
 configs/ls2080ardb_nand_defconfig |  3 +++
 configs/ls2081ardb_defconfig  |  4 
 configs/ls2088aqds_tfa_defconfig  |  9 +
 configs/ls2088ardb_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls2088ardb_qspi_defconfig |  3 +++
 configs/ls2088ardb_tfa_SECURE_BOOT_defconfig  | 18 +++---
 configs/ls2088ardb_tfa_defconfig  | 14 ++
 12 files changed, 46 insertions(+), 23 deletions(-)

diff --git a/configs/ls2080aqds_SECURE_BOOT_defconfig 
b/configs/ls2080aqds_SECURE_BOOT_defconfig
index d7c0db6343..5b85a94ed1 100644
--- a/configs/ls2080aqds_SECURE_BOOT_defconfig
+++ b/configs/ls2080aqds_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SYS_TEXT_BASE=0x3010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -46,6 +48,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_nand_defconfig 
b/configs/ls2080aqds_nand_defconfig
index 30b506fafc..6340c19b08 100644
--- a/configs/ls2080aqds_nand_defconfig
+++ b/configs/ls2080aqds_nand_defconfig
@@ -6,6 +6,7 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -41,6 +42,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -53,6 +55,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_qspi_defconfig 
b/configs/ls2080aqds_qspi_defconfig
index 44a718e855..5c509f60be 100644
--- a/configs/ls2080aqds_qspi_defconfig
+++ b/configs/ls2080aqds_qspi_defconfig
@@ -1,6 +1,7 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS2080AQDS=y
 CONFIG_SYS_TEXT_BASE=0x2010
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT=y
 CONFIG_FIT_VERBOSE=y
@@ -32,6 +33,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080aqds_sdcard_defconfig 
b/configs/ls2080aqds_sdcard_defconfig
index d6ca28979f..9c85b8e9c0 100644
--- a/configs/ls2080aqds_sdcard_defconfig
+++ b/configs/ls2080aqds_sdcard_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
@@ -40,6 +41,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-qds"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls2080ardb_SECURE_BOOT_defconfig 
b/configs/ls2080ardb_SECURE_BOOT_defconfig
index 150693b387..647edeaed7 100644
--- a/configs/ls2080ardb_SECURE_BOOT_defconfig
+++ b/configs/ls2080ardb_SECURE_BOOT_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS2080ARDB=y
 CONFIG_SYS_TEXT_BASE=0x3010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls2080a-rdb"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -46,6 +48,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_CONS_INDEX=2
 CONFI

[U-Boot] [PATCH 4/7] configs: ls1088a: enable sata configs for all ls1088a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1088ardb
and ls1088aqds defconfigs that missing one of them or more.
Support sata for all ls1088a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls1088aqds_qspi_defconfig |  3 +++
 configs/ls1088aqds_sdcard_ifc_defconfig   |  3 +++
 configs/ls1088aqds_sdcard_qspi_defconfig  |  3 +++
 configs/ls1088aqds_tfa_defconfig  | 17 +++--
 configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |  3 +++
 configs/ls1088ardb_sdcard_qspi_defconfig  |  3 +++
 configs/ls1088ardb_tfa_SECURE_BOOT_defconfig  | 14 +++---
 configs/ls1088ardb_tfa_defconfig  | 12 ++--
 9 files changed, 38 insertions(+), 23 deletions(-)

diff --git a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig 
b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
index 731408c13e..0254a861d8 100644
--- a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x2010
 CONFIG_SECURE_BOOT=y
 CONFIG_FSL_LS_PPA=y
 CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,6 +30,7 @@ CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1088a-qds"
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -41,6 +43,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_qspi_defconfig 
b/configs/ls1088aqds_qspi_defconfig
index 1a3e74600c..9160de255d 100644
--- a/configs/ls1088aqds_qspi_defconfig
+++ b/configs/ls1088aqds_qspi_defconfig
@@ -3,6 +3,7 @@ CONFIG_TARGET_LS1088AQDS=y
 CONFIG_SYS_TEXT_BASE=0x2010
 CONFIG_FSL_LS_PPA=y
 CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -29,6 +30,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -41,6 +43,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig 
b/configs/ls1088aqds_sdcard_ifc_defconfig
index b34be2eaf9..868d6e7c87 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
 CONFIG_OF_BOARD_SETUP=y
@@ -38,6 +39,7 @@ CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig 
b/configs/ls1088aqds_sdcard_qspi_defconfig
index d0319a5b63..6a9577aba2 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -39,6 +40,7 @@ CONFIG_ENV_IS_IN_MMC=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DM=y
 CONFIG_SCSI_AHCI=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_DM_SPI_FLASH=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1088aqds_tfa_defconfig b/configs/ls1088aqds_tfa_defconfig
index 857362bb01..891810a583 100644
--- a/configs/ls1088aqds_tfa_defconfig
+++ b/configs/ls1088aqds_tfa_defconfig
@@ -1,10 +1,11 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LS1088AQDS=y
 CONFIG_SYS_TEXT_BASE=0x8200
+CONFIG_QSPI_AHB_INIT=y
 CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
 CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
-CONFIG_QSPI_AHB_INIT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 # CONFIG_SYS_MALLOC_F is not set
@@ -17,7 +18,6 @@ CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 
earlycon=uart8250,mmio,0x21
 # CONFIG_USE_BOOTCOMMAND is not set
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_DISPLAY_BOARDINFO_LATE=y
-CONFIG_HUSH_PARSER=y
 CONFIG_CMD_GREPENV=y
 CONFIG_CMD_MEMTEST=y
 CONFIG_CMD_I2C=y
@@ -25,18 +25,18 @@ CONFIG_CMD_MMC=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_USB=y
 # CONFIG_CMD_SETEXPR is not set
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_PING=y
 CONFIG_MP=y
 CONF

[U-Boot] [PATCH 3/7] configs: ls1046a: enable sata configs for all ls1046a defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1046ardb
and ls1046aqds defconfigs that missing one of them or more.
enable CONFIG_DM_MMC for some defconfigs to support CONFIG_BLK
Support sata for all ls1046a defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1046aqds_SECURE_BOOT_defconfig  | 3 +++
 configs/ls1046aqds_lpuart_defconfig   | 3 +++
 configs/ls1046aqds_nand_defconfig | 3 +++
 configs/ls1046aqds_qspi_defconfig | 3 +++
 configs/ls1046aqds_sdcard_ifc_defconfig   | 3 +++
 configs/ls1046aqds_sdcard_qspi_defconfig  | 3 +++
 configs/ls1046ardb_emmc_defconfig | 3 +++
 configs/ls1046ardb_qspi_SECURE_BOOT_defconfig | 3 +++
 configs/ls1046ardb_qspi_spl_defconfig | 4 
 configs/ls1046ardb_sdcard_defconfig   | 3 +++
 configs/ls1046ardb_tfa_SECURE_BOOT_defconfig  | 3 +++
 11 files changed, 34 insertions(+)

diff --git a/configs/ls1046aqds_SECURE_BOOT_defconfig 
b/configs/ls1046aqds_SECURE_BOOT_defconfig
index ae05dd150b..2a811ae627 100644
--- a/configs/ls1046aqds_SECURE_BOOT_defconfig
+++ b/configs/ls1046aqds_SECURE_BOOT_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_SECURE_BOOT=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT=y
@@ -30,6 +31,7 @@ 
CONFIG_MTDPARTS_DEFAULT="mtdparts=6000.nor:2m@0x10(nor_bank0_uboot),40m@
 CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
 CONFIG_MTD_NOR_FLASH=y
@@ -43,6 +45,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_lpuart_defconfig 
b/configs/ls1046aqds_lpuart_defconfig
index 0a8d51e43d..5b5800a9bf 100644
--- a/configs/ls1046aqds_lpuart_defconfig
+++ b/configs/ls1046aqds_lpuart_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -31,6 +32,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -45,6 +47,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_SPI=y
diff --git a/configs/ls1046aqds_nand_defconfig 
b/configs/ls1046aqds_nand_defconfig
index 9e11db7d7f..4b594d5a87 100644
--- a/configs/ls1046aqds_nand_defconfig
+++ b/configs/ls1046aqds_nand_defconfig
@@ -4,6 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x8200
 CONFIG_FSL_LS_PPA=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -37,6 +38,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -51,6 +53,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_qspi_defconfig 
b/configs/ls1046aqds_qspi_defconfig
index a6bbf106e1..16fc81a46d 100644
--- a/configs/ls1046aqds_qspi_defconfig
+++ b/configs/ls1046aqds_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1046AQDS=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -40,6 +42,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_sdcard_ifc_defconfig 
b/configs/ls1046aqds_sdcard_ifc_defconfig
index edf915fdd6..9da8fe0d4f 100644
--- a/configs/ls1046aqds_sdcard_ifc_defconfig
+++ b/configs/ls1046aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -46,6 +47,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1046a-qds-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -60,6 +62,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1046aqds_sdcard_qspi_defc

[U-Boot] [PATCH 2/7] configs: ls1043aqds: enable sata configs for all ls1043aqds defconfigs

2019-01-30 Thread Peng Ma
Add CONFIG_AHCI CONFIG_SATA_CEVA CONFIG_DM_SCSI for some ls1043aqds
defconfigs that missing one of them or more.
Support sata for all ls1043aqds defconfigs

Signed-off-by: Peng Ma 
---
 configs/ls1043aqds_lpuart_defconfig  | 3 +++
 configs/ls1043aqds_nand_defconfig| 3 +++
 configs/ls1043aqds_nor_ddr3_defconfig| 3 +++
 configs/ls1043aqds_qspi_defconfig| 3 +++
 configs/ls1043aqds_sdcard_ifc_defconfig  | 3 +++
 configs/ls1043aqds_sdcard_qspi_defconfig | 3 +++
 configs/ls1043aqds_tfa_SECURE_BOOT_defconfig | 2 ++
 configs/ls1043aqds_tfa_defconfig | 2 ++
 8 files changed, 22 insertions(+)

diff --git a/configs/ls1043aqds_lpuart_defconfig 
b/configs/ls1043aqds_lpuart_defconfig
index 79448129bd..c8ddbc28ab 100644
--- a/configs/ls1043aqds_lpuart_defconfig
+++ b/configs/ls1043aqds_lpuart_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -30,6 +31,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-lpuart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_DM_SERIAL=y
 CONFIG_FSL_LPUART=y
 CONFIG_SPI=y
diff --git a/configs/ls1043aqds_nand_defconfig 
b/configs/ls1043aqds_nand_defconfig
index ada225c3b6..c845b01831 100644
--- a/configs/ls1043aqds_nand_defconfig
+++ b/configs/ls1043aqds_nand_defconfig
@@ -7,6 +7,7 @@ CONFIG_FSL_LS_PPA=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -44,6 +45,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -58,6 +60,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_nor_ddr3_defconfig 
b/configs/ls1043aqds_nor_ddr3_defconfig
index e86d4196b5..3cabc68729 100644
--- a/configs/ls1043aqds_nor_ddr3_defconfig
+++ b/configs/ls1043aqds_nor_ddr3_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x6010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_SYS_FSL_DDR3=y
 CONFIG_DM_MMC=y
@@ -44,6 +46,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_qspi_defconfig 
b/configs/ls1043aqds_qspi_defconfig
index d948981080..434f69c289 100644
--- a/configs/ls1043aqds_qspi_defconfig
+++ b/configs/ls1043aqds_qspi_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
 CONFIG_TARGET_LS1043AQDS=y
 CONFIG_SYS_TEXT_BASE=0x4010
 CONFIG_FSL_LS_PPA=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -29,6 +30,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_SPI_FLASH=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -39,6 +41,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_sdcard_ifc_defconfig 
b/configs/ls1043aqds_sdcard_ifc_defconfig
index afa91e8b3a..bdbb12d302 100644
--- a/configs/ls1043aqds_sdcard_ifc_defconfig
+++ b/configs/ls1043aqds_sdcard_ifc_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_NR_DRAM_BANKS=2
 CONFIG_FIT_VERBOSE=y
@@ -44,6 +45,7 @@ CONFIG_OF_CONTROL=y
 CONFIG_DEFAULT_DEVICE_TREE="fsl-ls1043a-qds-duart"
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_DM=y
+CONFIG_SATA_CEVA=y
 CONFIG_FSL_CAAM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
@@ -58,6 +60,7 @@ CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LAYERSCAPE=y
+CONFIG_DM_SCSI=y
 CONFIG_SYS_NS16550=y
 CONFIG_SPI=y
 CONFIG_DM_SPI=y
diff --git a/configs/ls1043aqds_sdcard_qspi_defconfig 
b/configs/ls1043aqds_sdcard_qspi_defconfig
index 310cb2319a..3b16f3e84f 100644
--- a/configs/ls1043aqds_sdcard_qspi_defconfig
+++ b/configs/ls1043aqds_sdcard_qspi_defconfig
@@ -8,6 +8,7 @@ CONFIG_SPL_MMC_SUPPORT=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
 CONFIG_SPL=y
+CONFIG_AHCI=y

[U-Boot] [PATCH 1/7] armv8: fsl-layerscape: ls1043a: move SCSI_AHCI and SCSI form arch/arm/cpu/armv8/fsl-layerscape/Kconfig to arch/arm/Kconfig

2019-01-30 Thread Peng Ma
remove SCSI and SCSI_AHCI configs for ls1043ardb due to no sata interface
support.
this changed is to fixed the ls1043ardb compile warning as fallows:
= 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 
---
 arch/arm/Kconfig  | 2 +-
 arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index d6b1629a00..afc8a85602 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1221,6 +1221,7 @@ config TARGET_LS1043AQDS
select BOARD_LATE_INIT
select SUPPORT_SPL
imply SCSI
+   imply SCSI_AHCI
help
  Support for Freescale LS1043AQDS platform.
 
@@ -1232,7 +1233,6 @@ config TARGET_LS1043ARDB
select BOARD_EARLY_INIT_F
select BOARD_LATE_INIT
select SUPPORT_SPL
-   imply SCSI
help
  Support for Freescale LS1043ARDB platform.
 
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig 
b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
index 01c5068ab6..7d52ed20e2 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
@@ -49,8 +49,6 @@ config ARCH_LS1043A
select SYS_I2C_MXC_I2C2
select SYS_I2C_MXC_I2C3
select SYS_I2C_MXC_I2C4
-   imply SCSI
-   imply SCSI_AHCI
imply CMD_PCI
 
 config ARCH_LS1046A
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH] powerpc/t104xrdb: Add new module of DDR for T1040DRDB board

2019-01-24 Thread Peng Ma
This patch is to add a new udimm for T1040DRDB board

Signed-off-by: Peng Ma 
---
 board/freescale/t104xrdb/ddr.h |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/board/freescale/t104xrdb/ddr.h b/board/freescale/t104xrdb/ddr.h
index 319fc59..f9d667f 100644
--- a/board/freescale/t104xrdb/ddr.h
+++ b/board/freescale/t104xrdb/ddr.h
@@ -29,6 +29,7 @@ static const struct board_specific_parameters udimm0[] = {
 */
 #ifdef CONFIG_SYS_FSL_DDR4
{2,  1600, 4, 8, 6, 0x07090A0c, 0x0e0f100a},
+   {1,  1600, 4, 8, 5, 0x0607080B, 0x0C0C0D09},
 #elif defined(CONFIG_SYS_FSL_DDR3)
{2,  833,  4, 8, 6, 0x06060607, 0x08080807},
{2,  833,  0, 8, 6, 0x06060607, 0x08080807},
-- 
1.7.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [v2] arm64: lx2160ardb: enable DM support for sata

2018-12-27 Thread Peng Ma
Enable related configs to support sata DM feature.

Signed-off-by: Peng Ma 
---
Changed for v2:
- used moveconfig.py -s -d to sync lx2160ardb_tfa_SECURE_BOOT_defconfig

 configs/lx2160ardb_tfa_SECURE_BOOT_defconfig | 72 
 1 file changed, 27 insertions(+), 45 deletions(-)

diff --git a/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig 
b/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
index b7e3967ad9..fc92959080 100644
--- a/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/lx2160ardb_tfa_SECURE_BOOT_defconfig
@@ -1,16 +1,19 @@
 CONFIG_ARM=y
 CONFIG_TARGET_LX2160ARDB=y
 CONFIG_SYS_TEXT_BASE=0x8200
-CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_SYS_MALLOC_F_LEN=0x6000
 CONFIG_SECURE_BOOT=y
+CONFIG_EMC2305=y
+CONFIG_SYS_FSPI_AHB_INIT=y
+CONFIG_FSPI_AHB_EN_4BYTE=y
+CONFIG_TFABOOT=y
 CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y
-CONFIG_DEFAULT_DEVICE_TREE="fsl-lx2160a-rdb"
+CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y
+CONFIG_AHCI=y
 CONFIG_NR_DRAM_BANKS=3
-CONFIG_DM=y
 CONFIG_FIT_VERBOSE=y
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_OF_STDOUT_VIA_ALIAS=y
-CONFIG_TFABOOT=y
 CONFIG_USE_BOOTARGS=y
 CONFIG_BOOTARGS="console=ttyAMA0,115200 root=/dev/ram0 
earlycon=pl011,mmio32,0x21c ramdisk_size=0x200 default_hugepagesz=1024m 
hugepagesz=1024m hugepages=2 pci=pcie_bus_perf"
 # CONFIG_USE_BOOTCOMMAND is not set
@@ -24,63 +27,42 @@ CONFIG_CMD_USB=y
 CONFIG_CMD_CACHE=y
 CONFIG_MP=y
 CONFIG_OF_CONTROL=y
-CONFIG_ENV_IS_NOWHERE=y
+CONFIG_DEFAULT_DEVICE_TREE="fsl-lx2160a-rdb"
 CONFIG_NET_RANDOM_ETHADDR=y
-CONFIG_DM_SERIAL=y
-CONFIG_SERIAL_PROBE_ALL=y
-CONFIG_CONS_INDEX=0
-CONFIG_FSL_CAAM=y
+CONFIG_DM=y
+CONFIG_SATA_CEVA=y
+CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC=y
-CONFIG_SPI=y
-CONFIG_DM_SPI=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_STMICRO=y
-CONFIG_SPI_FLASH_MICRON=y
-CONFIG_SPI_FLASH_USE_4K_SECTORS=n
 CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_NXP_FSPI=y
-CONFIG_FSPI_AHB_EN_4BYTE=y
-CONFIG_SYS_FSPI_AHB_INIT=y
+CONFIG_SPI_FLASH_STMICRO=y
+# CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
 CONFIG_PHYLIB=y
-CONFIG_NETDEVICES=y
+CONFIG_PHYLIB_10G=y
+CONFIG_PHY_AQUANTIA=y
+CONFIG_PHY_ATHEROS=y
+CONFIG_PHY_CORTINA=y
+CONFIG_PHY_INPHI=y
+CONFIG_INPHI_25G=y
 CONFIG_PHY_GIGE=y
-CONFIG_CMD_NET=y
-CONFIG_CMD_PING=y
-CONFIG_CMD_PXE=y
-CONFIG_CMD_MII=y
-CONFIG_CMD_DHCP=y
-CONFIG_CMD_FAT=y
-CONFIG_CMD_EXT2=y
+CONFIG_E1000=y
 CONFIG_PCI=y
 CONFIG_DM_PCI=y
 CONFIG_DM_PCI_COMPAT=y
 CONFIG_PCIE_LX=y
-CONFIG_E1000=y
-CONFIG_NET=y
-CONFIG_DM_MMC=y
-CONFIG_DM_MMC_OPS=n
-CONFIG_BLK=n
+CONFIG_DM_SCSI=y
+CONFIG_DM_SERIAL=y
+CONFIG_SERIAL_PROBE_ALL=y
+CONFIG_SPI=y
+CONFIG_DM_SPI=y
+CONFIG_NXP_FSPI=y
 CONFIG_USB=y
 CONFIG_DM_USB=y
 CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_XHCI_DWC3=y
 CONFIG_USB_STORAGE=y
-CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
-CONFIG_SCSI_AHCI=y
-CONFIG_SCSI=y
-# CONFIG_SYS_FSL_DDR_PHY is not set
-CONFIG_SYS_GEN2_DDR_PHY=y
-CONFIG_SYS_MALLOC_F=y
-CONFIG_SYS_MALLOC_F_LEN=0x6000
-CONFIG_PHYLIB_10G=y
-CONFIG_PHY_AQUANTIA=y
-CONFIG_PHY_CORTINA=y
-CONFIG_PHY_ATHEROS=y
-CONFIG_PHY_INPHI=y
-CONFIG_INPHI_25G=y
-CONFIG_HUSH_PARSER=y
-CONFIG_EMC2305=y
 CONFIG_RSA=y
 CONFIG_SPL_RSA=y
 CONFIG_RSA_SOFTWARE_EXP=y
+CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
-- 
2.17.1

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


  1   2   >