Loading Documentation/devicetree/bindings/fb/mdss-dsi.txt +3 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,8 @@ Optional properties: - qcom,platform-bklight-en-gpio: Specifies the gpio used to enable display back-light - qcom,platform-mode-gpio: Select video/command mode of panel through gpio when it supports both modes. - qcom,platform-intf-mux-gpio: Select dsi/external(hdmi) interface through gpio when it supports either dsi or external interface. - pinctrl-names: List of names to assign mdss pin states defined in pinctrl device node Refer to pinctrl-bindings.txt - pinctrl-<0..n>: Lists phandles each pointing to the pin configuration node within a pin Loading Loading @@ -246,6 +248,7 @@ Example: qcom,platform-enable-gpio = <&msmgpio 58 1>; qcom,platform-bklight-en-gpio = <&msmgpio 86 0>; qcom,platform-mode-gpio = <&msmgpio 7 0>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; qcom,dsi-irq-line; qcom,lane-map = "lane_map_3012"; qcom,display-id = "primary"; Loading arch/arm/boot/dts/qcom/apq8017-no-pmi-wcd-rome-cdp.dts +36 −1 Original line number Diff line number Diff line /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -45,3 +45,38 @@ status = "disabled"; }; }; &i2c_2 { /* DSI_TO_HDMI I2C configuration */ adv7533@39 { compatible = "adv7533"; reg = <0x39>; instance_id = <0>; adi,video-mode = <3>; /* 3 = 1080p */ adi,main-addr = <0x39>; adi,cec-dsi-addr = <0x3C>; adi,enable-audio; adi,irq-gpio = <&tlmm 0x7E 0x2002>; adi,power-down-gpio = <&tlmm 0x7D 0x0>; adi,switch-gpio = <&pm8937_gpios 0x8 0x1>; pinctrl-names = "pmx_adv7533_active", "pmx_adv7533_suspend"; pinctrl-0 = <&adv7533_int_active>; pinctrl-1 = <&adv7533_int_suspend>; }; }; &mdss_dsi { hw-config = "single_dsi"; }; &mdss_dsi0 { qcom,dsi-pref-prim-pan = <&dsi_adv7533_720p>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; status = "ok"; qcom,bridge-index = <0>; }; &dsi_adv7533_720p { qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; }; arch/arm/boot/dts/qcom/apq8017-pmi8950-mtp.dts +35 −0 Original line number Diff line number Diff line Loading @@ -26,3 +26,38 @@ &blsp1_uart1 { status = "ok"; }; &i2c_2 { /* DSI_TO_HDMI I2C configuration */ adv7533@39 { compatible = "adv7533"; reg = <0x39>; instance_id = <0>; adi,video-mode = <3>; /* 3 = 1080p */ adi,main-addr = <0x39>; adi,cec-dsi-addr = <0x3C>; adi,enable-audio; adi,irq-gpio = <&tlmm 0x7E 0x2002>; adi,power-down-gpio = <&tlmm 0x7D 0x0>; adi,switch-gpio = <&pm8937_gpios 0x8 0x1>; pinctrl-names = "pmx_adv7533_active", "pmx_adv7533_suspend"; pinctrl-0 = <&adv7533_int_active>; pinctrl-1 = <&adv7533_int_suspend>; }; }; &mdss_dsi { hw-config = "single_dsi"; }; &mdss_dsi0 { qcom,dsi-pref-prim-pan = <&dsi_adv7533_720p>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; status = "ok"; qcom,bridge-index = <0>; }; &dsi_adv7533_720p { qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; }; arch/arm/boot/dts/qcom/apq8017.dtsi +59 −1 Original line number Diff line number Diff line /* * Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -17,3 +17,61 @@ compatible = "qcom,apq8017"; qcom,msm-id = <307 0x0>; }; &tlmm { pmx_adv7533_int: pmx_adv7533_int { adv7533_int_active: adv7533_int_active { mux { pins = "gpio125", "gpio126"; function = "gpio"; }; config { pins = "gpio125", "gpio126"; function = "gpio"; drive-strength = <16>; bias-pull-up; /* pull up */ }; }; adv7533_int_suspend: adv7533_int_suspend { mux { pins = "gpio125", "gpio126"; function = "gpio"; }; config { pins = "gpio125", "gpio126"; drive-strength = <16>; bias-disable; }; }; }; }; &mdss_dsi_active { mux { pins = "gpio60", "gpio98", "gpio115", "gpio133"; function = "gpio"; }; config { pins = "gpio60", "gpio98", "gpio115", "gpio133"; drive-strength = <8>; /* 8 mA */ bias-disable = <0>; /* no pull */ output-high; }; }; &mdss_dsi_suspend { mux { pins = "gpio60", "gpio98", "gpio115", "gpio133"; function = "gpio"; }; config { pins = "gpio60", "gpio98", "gpio115", "gpio133"; drive-strength = <2>; /* 2 mA */ bias-pull-down; /* pull down */ }; }; drivers/video/msm/mdss/mdss_dsi.c +6 −0 Original line number Diff line number Diff line Loading @@ -3953,6 +3953,12 @@ static int mdss_dsi_parse_gpio_params(struct platform_device *ctrl_pdev, ctrl_pdata->mode_gpio = -EINVAL; } ctrl_pdata->intf_mux_gpio = of_get_named_gpio(ctrl_pdev->dev.of_node, "qcom,platform-intf-mux-gpio", 0); if (!gpio_is_valid(ctrl_pdata->intf_mux_gpio)) pr_debug("%s:%d, intf mux gpio not specified\n", __func__, __LINE__); return 0; } Loading Loading
Documentation/devicetree/bindings/fb/mdss-dsi.txt +3 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,8 @@ Optional properties: - qcom,platform-bklight-en-gpio: Specifies the gpio used to enable display back-light - qcom,platform-mode-gpio: Select video/command mode of panel through gpio when it supports both modes. - qcom,platform-intf-mux-gpio: Select dsi/external(hdmi) interface through gpio when it supports either dsi or external interface. - pinctrl-names: List of names to assign mdss pin states defined in pinctrl device node Refer to pinctrl-bindings.txt - pinctrl-<0..n>: Lists phandles each pointing to the pin configuration node within a pin Loading Loading @@ -246,6 +248,7 @@ Example: qcom,platform-enable-gpio = <&msmgpio 58 1>; qcom,platform-bklight-en-gpio = <&msmgpio 86 0>; qcom,platform-mode-gpio = <&msmgpio 7 0>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; qcom,dsi-irq-line; qcom,lane-map = "lane_map_3012"; qcom,display-id = "primary"; Loading
arch/arm/boot/dts/qcom/apq8017-no-pmi-wcd-rome-cdp.dts +36 −1 Original line number Diff line number Diff line /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -45,3 +45,38 @@ status = "disabled"; }; }; &i2c_2 { /* DSI_TO_HDMI I2C configuration */ adv7533@39 { compatible = "adv7533"; reg = <0x39>; instance_id = <0>; adi,video-mode = <3>; /* 3 = 1080p */ adi,main-addr = <0x39>; adi,cec-dsi-addr = <0x3C>; adi,enable-audio; adi,irq-gpio = <&tlmm 0x7E 0x2002>; adi,power-down-gpio = <&tlmm 0x7D 0x0>; adi,switch-gpio = <&pm8937_gpios 0x8 0x1>; pinctrl-names = "pmx_adv7533_active", "pmx_adv7533_suspend"; pinctrl-0 = <&adv7533_int_active>; pinctrl-1 = <&adv7533_int_suspend>; }; }; &mdss_dsi { hw-config = "single_dsi"; }; &mdss_dsi0 { qcom,dsi-pref-prim-pan = <&dsi_adv7533_720p>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; status = "ok"; qcom,bridge-index = <0>; }; &dsi_adv7533_720p { qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; };
arch/arm/boot/dts/qcom/apq8017-pmi8950-mtp.dts +35 −0 Original line number Diff line number Diff line Loading @@ -26,3 +26,38 @@ &blsp1_uart1 { status = "ok"; }; &i2c_2 { /* DSI_TO_HDMI I2C configuration */ adv7533@39 { compatible = "adv7533"; reg = <0x39>; instance_id = <0>; adi,video-mode = <3>; /* 3 = 1080p */ adi,main-addr = <0x39>; adi,cec-dsi-addr = <0x3C>; adi,enable-audio; adi,irq-gpio = <&tlmm 0x7E 0x2002>; adi,power-down-gpio = <&tlmm 0x7D 0x0>; adi,switch-gpio = <&pm8937_gpios 0x8 0x1>; pinctrl-names = "pmx_adv7533_active", "pmx_adv7533_suspend"; pinctrl-0 = <&adv7533_int_active>; pinctrl-1 = <&adv7533_int_suspend>; }; }; &mdss_dsi { hw-config = "single_dsi"; }; &mdss_dsi0 { qcom,dsi-pref-prim-pan = <&dsi_adv7533_720p>; qcom,platform-intf-mux-gpio = <&tlmm 115 0>; status = "ok"; qcom,bridge-index = <0>; }; &dsi_adv7533_720p { qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; };
arch/arm/boot/dts/qcom/apq8017.dtsi +59 −1 Original line number Diff line number Diff line /* * Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -17,3 +17,61 @@ compatible = "qcom,apq8017"; qcom,msm-id = <307 0x0>; }; &tlmm { pmx_adv7533_int: pmx_adv7533_int { adv7533_int_active: adv7533_int_active { mux { pins = "gpio125", "gpio126"; function = "gpio"; }; config { pins = "gpio125", "gpio126"; function = "gpio"; drive-strength = <16>; bias-pull-up; /* pull up */ }; }; adv7533_int_suspend: adv7533_int_suspend { mux { pins = "gpio125", "gpio126"; function = "gpio"; }; config { pins = "gpio125", "gpio126"; drive-strength = <16>; bias-disable; }; }; }; }; &mdss_dsi_active { mux { pins = "gpio60", "gpio98", "gpio115", "gpio133"; function = "gpio"; }; config { pins = "gpio60", "gpio98", "gpio115", "gpio133"; drive-strength = <8>; /* 8 mA */ bias-disable = <0>; /* no pull */ output-high; }; }; &mdss_dsi_suspend { mux { pins = "gpio60", "gpio98", "gpio115", "gpio133"; function = "gpio"; }; config { pins = "gpio60", "gpio98", "gpio115", "gpio133"; drive-strength = <2>; /* 2 mA */ bias-pull-down; /* pull down */ }; };
drivers/video/msm/mdss/mdss_dsi.c +6 −0 Original line number Diff line number Diff line Loading @@ -3953,6 +3953,12 @@ static int mdss_dsi_parse_gpio_params(struct platform_device *ctrl_pdev, ctrl_pdata->mode_gpio = -EINVAL; } ctrl_pdata->intf_mux_gpio = of_get_named_gpio(ctrl_pdev->dev.of_node, "qcom,platform-intf-mux-gpio", 0); if (!gpio_is_valid(ctrl_pdata->intf_mux_gpio)) pr_debug("%s:%d, intf mux gpio not specified\n", __func__, __LINE__); return 0; } Loading