[U-Boot] [PATCH v5 01/15] arm64: dts: k3: Sync sdhci0 node from kernel and change driver name

Faiz Abbas faiz_abbas at ti.com
Tue Jun 4 13:12:24 UTC 2019


Hi Lokesh,

On 04/06/19 10:58 AM, Lokesh Vutla wrote:
> 
> 
> On 29/05/19 3:15 PM, Faiz Abbas wrote:
>> Sync the sdhci0 node from kernel. This changes the compatible that is
>> required to be there in the driver. Change the same for the SD card node
>> which is not yet supported in kernel. This also syncs the main_pmx0 node
>> as a side effect.
>>
>> Also change the name of the driver to match the compatible in kernel.
>>
>> Signed-off-by: Faiz Abbas <faiz_abbas at ti.com>
>> Reviewed-by: Tom Rini <trini at konsulko.com>
>> ---
>>  arch/arm/dts/k3-am65-main.dtsi                | 22 ++++++++++++
>>  arch/arm/dts/k3-am654-base-board-u-boot.dtsi  | 27 ++------------
>>  arch/arm/dts/k3-am654-base-board.dts          | 28 +++++++++++++++
>>  arch/arm/dts/k3-am654-r5-base-board.dts       | 31 ++++++++++++++++
>>  configs/am65x_evm_a53_defconfig               |  2 +-
>>  configs/am65x_evm_r5_defconfig                |  2 +-
>>  drivers/mmc/Kconfig                           |  8 ++---
>>  drivers/mmc/Makefile                          |  2 +-
>>  .../mmc/{k3_arsan_sdhci.c => am654_sdhci.c}   | 36 +++++++++----------
>>  9 files changed, 109 insertions(+), 49 deletions(-)
>>  rename drivers/mmc/{k3_arsan_sdhci.c => am654_sdhci.c} (67%)
>>
>> diff --git a/arch/arm/dts/k3-am65-main.dtsi b/arch/arm/dts/k3-am65-main.dtsi
>> index adcd6341e4..84fed12fbd 100644
>> --- a/arch/arm/dts/k3-am65-main.dtsi
>> +++ b/arch/arm/dts/k3-am65-main.dtsi
>> @@ -69,4 +69,26 @@
>>  		clock-frequency = <48000000>;
>>  		current-speed = <115200>;
>>  	};
>> +
>> +	main_pmx0: pinmux at 11c000 {
>> +		compatible = "pinctrl-single";
>> +		reg = <0x0 0x11c000 0x0 0x2e4>;
>> +		#pinctrl-cells = <1>;
>> +		pinctrl-single,register-width = <32>;
>> +		pinctrl-single,function-mask = <0xffffffff>;
>> +	};
>> +
>> +	sdhci0: sdhci at 4f80000 {
>> +		compatible = "ti,am654-sdhci-5.1";
>> +		reg = <0x0 0x4f80000 0x0 0x260>, <0x0 0x4f90000 0x0 0x134>;
>> +		power-domains = <&k3_pds 47>;
>> +		clocks = <&k3_clks 47 0>, <&k3_clks 47 1>;
>> +		clock-names = "clk_ahb", "clk_xin";
>> +		interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
>> +		mmc-ddr-1_8v;
>> +		mmc-hs200-1_8v;
>> +		ti,otap-del-sel = <0x2>;
>> +		ti,trm-icp = <0x8>;
>> +		dma-coherent;
>> +	};
>>  };
>> diff --git a/arch/arm/dts/k3-am654-base-board-u-boot.dtsi b/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
>> index f5c8253831..589a90f9f9 100644
>> --- a/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
>> +++ b/arch/arm/dts/k3-am654-base-board-u-boot.dtsi
>> @@ -19,14 +19,6 @@
>>  &cbass_main{
>>  	u-boot,dm-spl;
>>  
>> -	main_pmx0: pinmux at 11c000 {
>> -		compatible = "pinctrl-single";
>> -		reg = <0x0 0x11c000 0x0 0x2e4>;
>> -		#pinctrl-cells = <1>;
>> -		pinctrl-single,register-width = <32>;
>> -		pinctrl-single,function-mask = <0xffffffff>;
>> -	};
>> -
>>  	main_pmx1: pinmux at 11c2e8 {
>>  		compatible = "pinctrl-single";
>>  		reg = <0x0 0x11c2e8 0x0 0x24>;
>> @@ -35,17 +27,8 @@
>>  		pinctrl-single,function-mask = <0xffffffff>;
>>  	};
>>  
>> -	sdhci0: sdhci at 04F80000 {
>> -		compatible = "arasan,sdhci-5.1";
>> -		reg = <0x0 0x4F80000 0x0 0x1000>,
>> -		      <0x0 0x4F90000 0x0 0x400>;
>> -		clocks = <&k3_clks 47 1>;
>> -		power-domains = <&k3_pds 47>;
>> -		max-frequency = <25000000>;
>> -	};
>> -
>>  	sdhci1: sdhci at 04FA0000 {
>> -		compatible = "arasan,sdhci-5.1";
>> +		compatible = "ti,am654-sdhci-5.1";
>>  		reg = <0x0 0x4FA0000 0x0 0x1000>,
>>  		      <0x0 0x4FB0000 0x0 0x400>;
>>  		clocks = <&k3_clks 48 1>;
>> @@ -164,7 +147,8 @@
>>  			AM65X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0)	/* (A24) MMC0_DAT5 */
>>  			AM65X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0)	/* (B26) MMC0_DAT6 */
>>  			AM65X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0)	/* (D25) MMC0_DAT7 */
>> -			AM65X_IOPAD(0x01b0, PIN_INPUT, 0)			/* (C25) MMC0_DS */
>> +			AM65X_IOPAD(0x01b4, PIN_INPUT_PULLUP, 0)	/* (A23) MMC0_SDCD */
>> +			AM65X_IOPAD(0x01b0, PIN_INPUT, 0)		/* (C25) MMC0_DS */
>>  		>;
>>  		u-boot,dm-spl;
>>  	};
>> @@ -198,11 +182,6 @@
>>  
>>  &sdhci0 {
>>  	u-boot,dm-spl;
>> -	status = "okay";
>> -	non-removable;
>> -	bus-width = <8>;
>> -	pinctrl-names = "default";
>> -	pinctrl-0 = <&main_mmc0_pins_default>;
>>  };
>>  
>>  &sdhci1 {
>> diff --git a/arch/arm/dts/k3-am654-base-board.dts b/arch/arm/dts/k3-am654-base-board.dts
>> index af6956fdc1..ab233916c6 100644
>> --- a/arch/arm/dts/k3-am654-base-board.dts
>> +++ b/arch/arm/dts/k3-am654-base-board.dts
>> @@ -6,6 +6,7 @@
>>  /dts-v1/;
>>  
>>  #include "k3-am654.dtsi"
>> +#include <dt-bindings/pinctrl/k3.h>
>>  
>>  / {
>>  	compatible =  "ti,am654-evm", "ti,am654";
>> @@ -34,3 +35,30 @@
>>  		};
>>  	};
>>  };
>> +
>> +&main_pmx0 {
>> +	main_mmc0_pins_default: main_mmc0_pins_default {
>> +		pinctrl-single,pins = <
>> +			AM65X_IOPAD(0x01a8, PIN_INPUT_PULLDOWN, 0)	/* (B25) MMC0_CLK */
>> +			AM65X_IOPAD(0x01aC, PIN_INPUT_PULLUP, 0)	/* (B27) MMC0_CMD */
>> +			AM65X_IOPAD(0x01a4, PIN_INPUT_PULLUP, 0)	/* (A26) MMC0_DAT0 */
>> +			AM65X_IOPAD(0x01a0, PIN_INPUT_PULLUP, 0)	/* (E25) MMC0_DAT1 */
>> +			AM65X_IOPAD(0x019c, PIN_INPUT_PULLUP, 0)	/* (C26) MMC0_DAT2 */
>> +			AM65X_IOPAD(0x0198, PIN_INPUT_PULLUP, 0)	/* (A25) MMC0_DAT3 */
>> +			AM65X_IOPAD(0x0194, PIN_INPUT_PULLUP, 0)	/* (E24) MMC0_DAT4 */
>> +			AM65X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0)	/* (A24) MMC0_DAT5 */
>> +			AM65X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0)	/* (B26) MMC0_DAT6 */
>> +			AM65X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0)	/* (D25) MMC0_DAT7 */
>> +			AM65X_IOPAD(0x01b4, PIN_INPUT_PULLUP, 0)	/* (A23) MMC0_SDCD */
>> +			AM65X_IOPAD(0x01b0, PIN_INPUT, 0)		/* (C25) MMC0_DS */
>> +		>;
>> +	};
>> +};
>> +
>> +&sdhci0 {
>> +	pinctrl-names = "default";
>> +	pinctrl-0 = <&main_mmc0_pins_default>;
>> +	bus-width = <8>;
>> +	non-removable;
>> +	ti,driver-strength-ohm = <50>;
>> +};
>> diff --git a/arch/arm/dts/k3-am654-r5-base-board.dts b/arch/arm/dts/k3-am654-r5-base-board.dts
>> index a07038be70..47cbfa5a3c 100644
>> --- a/arch/arm/dts/k3-am654-r5-base-board.dts
>> +++ b/arch/arm/dts/k3-am654-r5-base-board.dts
>> @@ -132,8 +132,39 @@
>>  	};
>>  };
>>  
>> +&main_pmx0 {
>> +	u-boot,dm-spl;
>> +	main_mmc0_pins_default: main_mmc0_pins_default {
>> +		pinctrl-single,pins = <
>> +			AM65X_IOPAD(0x01a8, PIN_INPUT_PULLDOWN, 0)	/* (B25) MMC0_CLK */
>> +			AM65X_IOPAD(0x01aC, PIN_INPUT_PULLUP, 0)	/* (B27) MMC0_CMD */
>> +			AM65X_IOPAD(0x01a4, PIN_INPUT_PULLUP, 0)	/* (A26) MMC0_DAT0 */
>> +			AM65X_IOPAD(0x01a0, PIN_INPUT_PULLUP, 0)	/* (E25) MMC0_DAT1 */
>> +			AM65X_IOPAD(0x019c, PIN_INPUT_PULLUP, 0)	/* (C26) MMC0_DAT2 */
>> +			AM65X_IOPAD(0x0198, PIN_INPUT_PULLUP, 0)	/* (A25) MMC0_DAT3 */
>> +			AM65X_IOPAD(0x0194, PIN_INPUT_PULLUP, 0)	/* (E24) MMC0_DAT4 */
>> +			AM65X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0)	/* (A24) MMC0_DAT5 */
>> +			AM65X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0)	/* (B26) MMC0_DAT6 */
>> +			AM65X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0)	/* (D25) MMC0_DAT7 */
>> +			AM65X_IOPAD(0x01b0, PIN_INPUT, 0)		/* (C25) MMC0_DS */
>> +		>;
>> +	};
>> +};
>> +
>>  &memorycontroller {
>>  	vtt-supply = <&vtt_supply>;
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&wkup_vtt_pins_default>;
>>  };
>> +
>> +&sdhci0 {
>> +	clock-names = "clk_xin";
>> +	clocks = <&clk_200mhz>;
>> +	/delete-property/ power-domains;
>> +};
>> +
>> +&sdhci1 {
>> +	clock-names = "clk_xin";
>> +	clocks = <&clk_200mhz>;
> 
> I guess you missed adding clk_200mhz node in DT. This is giving a build error.
> Can you please add back the node and repost the series?
> 

Yeah that was part of Andreas's patches. Will squash that patch into
this series and repost.

Thanks,
Faiz


More information about the U-Boot mailing list