Add support for i2c2 and i2c6 interfaces, wrap up SDC pins into pmx_sdc groups (following msm8916). Signed-off-by: Konrad Dybcio <konradybcio@xxxxxxxxx> --- arch/arm64/boot/dts/qcom/msm8992-pins.dtsi | 149 ++++++++++++++++----- 1 file changed, 118 insertions(+), 31 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/msm8992-pins.dtsi b/arch/arm64/boot/dts/qcom/msm8992-pins.dtsi index c543c718c22d..17c9e048e414 100644 --- a/arch/arm64/boot/dts/qcom/msm8992-pins.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8992-pins.dtsi @@ -32,59 +32,146 @@ pinconf { /* Order of pins */ /* SDC1: CLK -> 0, CMD -> 1, DATA -> 2, RCLK -> 3 */ /* SDC2: CLK -> 4, CMD -> 5, DATA -> 6 */ - sdc1_clk_on: clk-on { - pinconf { - pins = "sdc1_clk"; - bias-disable = <0>; /* No pull */ - drive-strength = <16>; /* 16mA */ + + pmx_sdc1_clk { + sdc1_clk_on: clk-on { + pinmux { + pins = "sdc1_clk"; + }; + pinconf { + pins = "sdc1_clk"; + bias-disable; /* No pull */ + drive-strength = <6>; + }; + }; + + sdc1_clk_off: clk-off { + pinmux { + pins = "sdc1_clk"; + }; + pinconf { + pins = "sdc1_clk"; + bias-disable; /* No pull */ + drive-strength = <2>; + }; }; }; - sdc1_clk_off: clk-off { - pinconf { - pins = "sdc1_clk"; - bias-disable = <0>; /* No pull */ - drive-strength = <2>; /* 2mA */ + pmx_sdc1_cmd { + sdc1_cmd_on: cmd-on { + pinmux { + pins = "sdc1_cmd"; + }; + pinconf { + pins = "sdc1_cmd"; + bias-pull-up; + drive-strength = <6>; + }; + }; + + sdc1_cmd_off: cmd-off { + pinmux { + pins = "sdc1_cmd"; + }; + pinconf { + pins = "sdc1_cmd"; + bias-pull-up; + drive-strength = <2>; + }; }; }; - sdc1_cmd_on: cmd-on { - pinconf { - pins = "sdc1_cmd"; - bias-pull-up; - drive-strength = <8>; + pmx_sdc1_data { + sdc1_data_on: data-on { + pinmux { + pins = "sdc1_data"; + }; + pinconf { + pins = "sdc1_data"; + bias-pull-up; + drive-strength = <6>; + }; + }; + + sdc1_data_off: data-off { + pinmux { + pins = "sdc1_data"; + }; + pinconf { + pins = "sdc1_data"; + bias-pull-up; + drive-strength = <2>; + }; }; }; - sdc1_cmd_off: cmd-off { - pinconf { - pins = "sdc1_cmd"; - bias-pull-up = <0x3>; /* same as 3.10 ?? */ - drive-strength = <2>; /* 2mA */ + pmx_sdc1_rclk { + sdc1_rclk_on: rclk-on { + pinmux { + pins = "sdc1_rclk"; + }; + pinconf { + pins = "sdc1_rclk"; + bias-pull-down; /* pull down */ + }; + }; + + sdc1_rclk_off: rclk-off { + pinmux { + pins = "sdc1_rclk"; + }; + pinconf { + pins = "sdc1_rclk"; + bias-pull-down; /* pull down */ + }; }; }; - sdc1_data_on: data-on { + i2c2_default: i2c2_default { + pinmux { + function = "blsp_i2c2"; + pins = "gpio6", "gpio7"; + }; pinconf { - pins = "sdc1_data"; - bias-pull-up; - drive-strength = <8>; /* 8mA */ + pins = "gpio6", "gpio7"; + drive-strength = <2>; + bias-disable; }; }; - sdc1_data_off: data-off { + i2c2_sleep: i2c2_sleep { + pinmux { + function = "gpio"; + pins = "gpio6", "gpio7"; + }; pinconf { - pins = "sdc1_data"; - bias-pull-up; + pins = "gpio6", "gpio7"; drive-strength = <2>; + bias-disable; }; }; - sdc1_rclk_on: rclk-on { - bias-pull-down; /* pull down */ + i2c6_default: i2c6_default { + pinmux { + function = "blsp_i2c6"; + pins = "gpio28", "gpio27"; + }; + pinconf { + pins = "gpio28", "gpio27"; + drive-strength = <2>; + bias-disable; + }; }; - sdc1_rclk_off: rclk-off { - bias-pull-down; /* pull down */ + i2c6_sleep: i2c6_sleep { + pinmux { + function = "gpio"; + pins = "gpio28", "gpio27"; + }; + pinconf { + pins = "gpio28", "gpio27"; + drive-strength = <2>; + bias-disable; + }; }; }; -- 2.26.2