Skip to contentSkip to conversation

dt-bindings: Add Japan Display Inc vendor id

PATCH RESEND New Vinay Simha BN 2 participants 12 messages Jul 31, 2016 – Aug 24, 2016

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/4 dt-bindings: Add Japan Display Inc vendor id

Add vendor id for Japan Display Inc.

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>
---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index ecc8cf4..1b134f3 100644
@@ -138,6 +138,7 @@ invensense	InvenSense Inc.
 isee	ISEE 2007 S.L.
 isil	Intersil
 issi	Integrated Silicon Solutions Inc.
+jdi	Japan Display Inc.
 jedec	JEDEC Solid State Technology Association
 karo	Ka-Ro electronics GmbH
 keymile	Keymile GmbH
Signature · 1 line
2.1.2
#1 lore raw

PATCH RESEND v2 2/4 dt-bindings: Add jdi lt070me05000 panel bindings

Add documentation for lt070me05000 panel

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>

---
v2:
* incorporated rob herring and thierry reviews gpio to gpios, gpio to regulator using fixed regulators and pwm backlight is removed, since it is controlled by dcs commands

---
 .../bindings/display/panel/jdi,lt070me05000.txt    | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +57 -0
new file mode 100644
index 0000000..613b76f
@@ -0,0 +1,57 @@
+JDI model LT070ME05000 1200x1920 7" DSI Panel
+
+Required properties:
+- compatible: should be "jdi,lt070me05000"
+- vddp-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply (3-5V)
+- dcdc_en-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply enable, High active
+- vcc-supply: phandle of the regulator that provides the supply voltage
+  IOVCC , power supply for LCM (1.8V)
+- reset-gpios: phandle of gpio for reset line
+  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
+  XRES, Reset, Low active
+- enable-gpios: phandle of gpio for enable line
+  LED_EN, LED backlight enable, High active
+
+Example:
+
+	vcc_1p8v: regulator-fixed@2 {
+		compatible = "regulator-fixed";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		regulator-name = "vcc_1p8v";
+		regulator-type = "voltage";
+		startup-delay-us = <0>;
+		gpio = <&pm8921_gpio 23 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+		regulator-boot-on;
+	};
+
+	tlmm_pinmux: pinctrl@800000 {
+
+		dsi_panel_pinctrl: dsi-panel-pinctrl {
+			mux {
+				pins = "gpio54";
+				function = "gpio";
+				bias-pull-up;
+				drive-strength = <8>;
+			};
+		};
+	};
+
+	dsi0: qcom,mdss_dsi@4700000 {
+		panel@0 {
+			compatible = "jdi,lt070me05000";
+			reg = <0>;
+			pinctrl-names = "default";
+			pinctrl-0 = <&dsi_panel_pinctrl>;
+
+			vddp-supply = <&pm8921_l17>;
+			dcdc_en-supply = <&pm8921_lvs7>;
+			vcc-supply = <&vcc_1p8v>;
+
+			reset-gpios = <&tlmm_pinmux 54 0>;
+			enable-gpios = <&pm8921_gpio 36 GPIO_ACTIVE_HIGH>;
+		};
+	};
Signature · 1 line
2.1.2
#2 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

Quoted 26 lines · Vinay Simha BN

Add documentation for lt070me05000 panel

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>

---
v2:
* incorporated rob herring and thierry reviews gpio to gpios, gpio to regulator using fixed regulators and pwm backlight is removed, since it is controlled by dcs commands

---
 .../bindings/display/panel/jdi,lt070me05000.txt    | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +0 -0
new file mode 100644
index 0000000..613b76f

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 10

Quoted 10 lines
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +10 -0
@@ -0,0 +1,57 @@
+JDI model LT070ME05000 1200x1920 7" DSI Panel
+
+Required properties:
+- compatible: should be "jdi,lt070me05000"
+- vddp-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply (3-5V)
+- dcdc_en-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply enable, High active
+- vcc-supply: phandle of the regulator that provides the supply voltage
+  IOVCC , power supply for LCM (1.8V)

I was just going to apply this and wanted to add some information about how many lanes the panel uses, so I looked at the datasheet linked to in patch 4/4:

	http://panelone.net/en/7-0-inch/JDI_LT070ME05000_7.0_inch-datasheet

and noticed that the power supplies in the binding here don't match the ones listed in the datasheet. Granted, the datasheet is somewhat meager, but it lists the following three input voltages:

- IOVCC at 1.8 V
- VDD at 3.0 V
- VDDP at 3.0 V

This matches in part what the above binding describes, but it's not quite right, so I'm wondering if the name for dcdc_en-supply came from the board schematics and reflects the name of the rail on the board design that provides this rather than the input voltage on the panel.

I think we should follow the names in the panel datasheet so that people can more easily reference the correct regulators when using this panel on a different board. I'd suggest:

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)
- vdd-supply: phandle of the regulator that supplies power to the VDD voltage input (3.0 V)
- vddp-supply: phandle of the regulator that supplies power to the VDDP voltage input (3.0 V)

Any objections?

Thierry

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

#3 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

thierry,

this is the reference pinouts of the panel
http://www.tonylabs.com/wp-content/uploads/LT070ME05000-pinouts.jpg

as you suggest , i will change the vcc-supply,

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)

will keep the other two(vddp-supply, dcdc_en-supply) remaining same.

Quoted 71 lines · Thierry Reding
Quoted 26 lines · Vinay Simha BN

Add documentation for lt070me05000 panel

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>

---
v2:
* incorporated rob herring and thierry reviews gpio to gpios, gpio to regulator using fixed regulators and pwm backlight is removed, since it is controlled by dcs commands

---
 .../bindings/display/panel/jdi,lt070me05000.txt    | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +0 -0
new file mode 100644
index 0000000..613b76f

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 10

Quoted 10 lines
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +10 -0
@@ -0,0 +1,57 @@
+JDI model LT070ME05000 1200x1920 7" DSI Panel
+
+Required properties:
+- compatible: should be "jdi,lt070me05000"
+- vddp-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply (3-5V)
+- dcdc_en-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply enable, High active
+- vcc-supply: phandle of the regulator that provides the supply voltage
+  IOVCC , power supply for LCM (1.8V)

I was just going to apply this and wanted to add some information about how many lanes the panel uses, so I looked at the datasheet linked to in patch 4/4:

        http://panelone.net/en/7-0-inch/JDI_LT070ME05000_7.0_inch-datasheet

and noticed that the power supplies in the binding here don't match the ones listed in the datasheet. Granted, the datasheet is somewhat meager, but it lists the following three input voltages:

- IOVCC at 1.8 V
- VDD at 3.0 V
- VDDP at 3.0 V

This matches in part what the above binding describes, but it's not quite right, so I'm wondering if the name for dcdc_en-supply came from the board schematics and reflects the name of the rail on the board design that provides this rather than the input voltage on the panel.

I think we should follow the names in the panel datasheet so that people can more easily reference the correct regulators when using this panel on a different board. I'd suggest:

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)
- vdd-supply: phandle of the regulator that supplies power to the VDD voltage input (3.0 V)
- vddp-supply: phandle of the regulator that supplies power to the VDDP voltage input (3.0 V)

Any objections?

Thierry

Signature · 6 lines
regards,
vinaysimha
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#4 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

Quoted 4 lines · Vinay Simha

thierry,

this is the reference pinouts of the panel
http://www.tonylabs.com/wp-content/uploads/LT070ME05000-pinouts.jpg

I can't open that file.

Quoted 6 lines

as you suggest , i will change the vcc-supply,

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)

will keep the other two(vddp-supply, dcdc_en-supply) remaining same.

"dcdc_en" sounds to me like it should be a GPIO rather than a regulator.

According to this datasheet:

	http://kb.52solution.com/data/uploads/2016/04/07/3172846545705cc22d050e.pdf

the input voltages are indeed VDD, VDDp and IOVCC, though with slightly larger tolerances than the previous datasheet. VDD and VDDp can both go from 3.0 V to 5.0 V. DCDC_EN is indeed an additional GPIO to enable the VDDp supply.

I think you'd need something along these lines:

- vdd-supply: LED power supply (3.0-5.0 V)
- vddp-supply: power IC supply (3.0-5.0 V)
- iovcc-supply: LCM power supply (1.8 V)
- dcdc-en-gpios: power IC supply enable
- led-en-gpios: LED backlight enable

Or perhaps your vddp-supply should be a regulator that's controlled by the GPIO that you'd put in dcdc-en-gpios. That might work better. That would leave only led-en-gpios as the only enable GPIOs property, so it would be okay to keep the name "enable-gpios", I guess.

Thierry

Quoted 79 lines
Quoted 71 lines · Thierry Reding
Quoted 26 lines · Vinay Simha BN

Add documentation for lt070me05000 panel

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>

---
v2:
* incorporated rob herring and thierry reviews gpio to gpios, gpio to regulator using fixed regulators and pwm backlight is removed, since it is controlled by dcs commands

---
 .../bindings/display/panel/jdi,lt070me05000.txt    | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +0 -0
new file mode 100644
index 0000000..613b76f

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 10

Quoted 10 lines
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +10 -0
@@ -0,0 +1,57 @@
+JDI model LT070ME05000 1200x1920 7" DSI Panel
+
+Required properties:
+- compatible: should be "jdi,lt070me05000"
+- vddp-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply (3-5V)
+- dcdc_en-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply enable, High active
+- vcc-supply: phandle of the regulator that provides the supply voltage
+  IOVCC , power supply for LCM (1.8V)

I was just going to apply this and wanted to add some information about how many lanes the panel uses, so I looked at the datasheet linked to in patch 4/4:

        http://panelone.net/en/7-0-inch/JDI_LT070ME05000_7.0_inch-datasheet

and noticed that the power supplies in the binding here don't match the ones listed in the datasheet. Granted, the datasheet is somewhat meager, but it lists the following three input voltages:

- IOVCC at 1.8 V
- VDD at 3.0 V
- VDDP at 3.0 V

This matches in part what the above binding describes, but it's not quite right, so I'm wondering if the name for dcdc_en-supply came from the board schematics and reflects the name of the rail on the board design that provides this rather than the input voltage on the panel.

I think we should follow the names in the panel datasheet so that people can more easily reference the correct regulators when using this panel on a different board. I'd suggest:

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)
- vdd-supply: phandle of the regulator that supplies power to the VDD voltage input (3.0 V)
- vddp-supply: phandle of the regulator that supplies power to the VDDP voltage input (3.0 V)

Any objections?

Thierry

Signature · 2 lines
regards,
vinaysimha
#5 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

- dcdc-en-gpios: power IC supply enable

i cannot make this as gpios, since pm8921_lvs7 is a regulator. We can make gpio as regulator, but not regulator as gpio.

other option i have to map pm8921_lvs7 to iovcc-supply and pm8921_gpio 23 to dcdc-en-gpios.

Since we do not have nx7 schematic not sure which pins are mapped in hardware, other than the src code reference. Even in the 3.4 source code gpio/pin/regulator mappings and naming are not proper in board-flo-display.c

What is your suggestion?

Quoted 120 lines · Thierry Reding
Quoted 4 lines · Vinay Simha

thierry,

this is the reference pinouts of the panel
http://www.tonylabs.com/wp-content/uploads/LT070ME05000-pinouts.jpg

I can't open that file.

Quoted 6 lines

as you suggest , i will change the vcc-supply,

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)

will keep the other two(vddp-supply, dcdc_en-supply) remaining same.

"dcdc_en" sounds to me like it should be a GPIO rather than a regulator.

According to this datasheet:

        http://kb.52solution.com/data/uploads/2016/04/07/3172846545705cc22d050e.pdf

the input voltages are indeed VDD, VDDp and IOVCC, though with slightly larger tolerances than the previous datasheet. VDD and VDDp can both go from 3.0 V to 5.0 V. DCDC_EN is indeed an additional GPIO to enable the VDDp supply.

I think you'd need something along these lines:

- vdd-supply: LED power supply (3.0-5.0 V)
- vddp-supply: power IC supply (3.0-5.0 V)
- iovcc-supply: LCM power supply (1.8 V)
- dcdc-en-gpios: power IC supply enable
- led-en-gpios: LED backlight enable

Or perhaps your vddp-supply should be a regulator that's controlled by the GPIO that you'd put in dcdc-en-gpios. That might work better. That would leave only led-en-gpios as the only enable GPIOs property, so it would be okay to keep the name "enable-gpios", I guess.

Thierry

Quoted 79 lines
Quoted 68 lines · Thierry Reding
Quoted 26 lines · Vinay Simha BN

Add documentation for lt070me05000 panel

Cc Archit Taneja <[email protected]>
Cc John Stultz <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Sumit Semwal <[email protected]>

---
v2:
* incorporated rob herring and thierry reviews gpio to gpios, gpio to regulator using fixed regulators and pwm backlight is removed, since it is controlled by dcs commands

---
 .../bindings/display/panel/jdi,lt070me05000.txt    | 57 ++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +0 -0
new file mode 100644
index 0000000..613b76f

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 10

Quoted 10 lines
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt new file +10 -0
@@ -0,0 +1,57 @@
+JDI model LT070ME05000 1200x1920 7" DSI Panel
+
+Required properties:
+- compatible: should be "jdi,lt070me05000"
+- vddp-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply (3-5V)
+- dcdc_en-supply: phandle of the regulator that provides the supply voltage
+  Power IC supply enable, High active
+- vcc-supply: phandle of the regulator that provides the supply voltage
+  IOVCC , power supply for LCM (1.8V)

I was just going to apply this and wanted to add some information about how many lanes the panel uses, so I looked at the datasheet linked to in patch 4/4:

        http://panelone.net/en/7-0-inch/JDI_LT070ME05000_7.0_inch-datasheet

and noticed that the power supplies in the binding here don't match the ones listed in the datasheet. Granted, the datasheet is somewhat meager, but it lists the following three input voltages:

- IOVCC at 1.8 V
- VDD at 3.0 V
- VDDP at 3.0 V

This matches in part what the above binding describes, but it's not quite right, so I'm wondering if the name for dcdc_en-supply came from the board schematics and reflects the name of the rail on the board design that provides this rather than the input voltage on the panel.

I think we should follow the names in the panel datasheet so that people can more easily reference the correct regulators when using this panel on a different board. I'd suggest:

- iovcc-supply: phandle of the regulator that supplies power to the IOVCC voltage input (1.8 V)
- vdd-supply: phandle of the regulator that supplies power to the VDD voltage input (3.0 V)
- vddp-supply: phandle of the regulator that supplies power to the VDDP voltage input (3.0 V)

Quoted 3 lines

Any objections?

Thierry

--
regards,
vinaysimha

Signature · 2 lines
regards,
vinaysimha
#6 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

In reply to Vinay Simha BN

On Sun, Jul 31, 2016 at 08:45:21PM +0530, Vinay Simha BN wrote:
[...]

Quoted 1 line
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt +0 -0

[...]

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 15

Quoted 5 lines

+- reset-gpios: phandle of gpio for reset line

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt +4 -0
+  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
+  XRES, Reset, Low active
+- enable-gpios: phandle of gpio for enable line
+  LED_EN, LED backlight enable, High active

This is a little confusing. Shouldn't we rather completely omit any mention of the polarity of these and let the board design handle this?

If the reset is low active, then I'd expect that to be reflected in the GPIO specifier of the reset-gpios property, like so:

	panel@0 {
		...
		reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>;
		...
	};

With that a driver can simply deal with a high active reset, which it currently doesn't. The problem with the current description is that it is unclear who's to deal with the polarity. In order for this to work properly with the current driver you'll have to specify the GPIO as GPIO_ACTIVE_HIGH, which is not what the binding says it should be.

Thierry

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

#7 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

if we do not set the polarity to 8mA, panel will have gibberish display. (information to set 8mA is available only in nexus7-msm-flo-3.4-lollipop-release_dsi kernel nx7 release)

i will add this
reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>;

Quoted 29 lines · Thierry Reding

On Sun, Jul 31, 2016 at 08:45:21PM +0530, Vinay Simha BN wrote:
[...]

Quoted 1 line
Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt +0 -0

[...]

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt line 15

Quoted 5 lines

+- reset-gpios: phandle of gpio for reset line

Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.txt +4 -0
+  This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names
+  XRES, Reset, Low active
+- enable-gpios: phandle of gpio for enable line
+  LED_EN, LED backlight enable, High active

This is a little confusing. Shouldn't we rather completely omit any mention of the polarity of these and let the board design handle this?

If the reset is low active, then I'd expect that to be reflected in the GPIO specifier of the reset-gpios property, like so:

        panel@0 {
                ...
                reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>;
                ...
        };

With that a driver can simply deal with a high active reset, which it currently doesn't. The problem with the current description is that it is unclear who's to deal with the polarity. In order for this to work properly with the current driver you'll have to specify the GPIO as GPIO_ACTIVE_HIGH, which is not what the binding says it should be.

Thierry

Signature · 2 lines
regards,
vinaysimha
#8 lore raw

Re: [RESEND] [PATCH v2 2/4] dt-bindings: Add jdi lt070me05000 panel bindings

Quoted 6 lines · Vinay Simha

if we do not set the polarity to 8mA, panel will have gibberish display. (information to set 8mA is available only in nexus7-msm-flo-3.4-lollipop-release_dsi kernel nx7 release)

i will add this
reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>;

I don't think that will work with the current driver, because the GPIO subsystem will automatically invert the value for you. Currently the panel driver sets the GPIO value to 0 to assert the reset. With the GPIO_ACTIVE_LOW flag you'd end up setting the actual level of the GPIO to high, which is going to deassert. So I think if you make the above change (which I think is the right thing to do), you'll also have to update the driver to use high-active logic.

Thierry

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

#9 lore raw

PATCH RESEND v3 3/4 drm/dsi: Implement dcs set/get display brightness

In reply to Vinay Simha BN

Provide a small convenience wrapper that set/get the display brightness value

Cc John Stultz <[email protected]>
Cc Sumit Semwal <[email protected]>
Cc Archit Taneja <[email protected]>
Cc Rob Clark <[email protected]>
Cc Jani Nikula <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Emil Velikov <[email protected]>

---
v1:
*tested in nexus7 2nd gen.

v2:
* implemented jani review comments
-functions name mapped accordingly
-bl value increased from 0xff to 0xffff -backlight interface will be handled in panel driver,
so it is moved from the mipi_dsi helper function

v3:
* emil review comments
(err < 0) supposed to be (err <= 0)

---
 drivers/gpu/drm/drm_mipi_dsi.c | 49 ++++++++++++++++++++++++++++++++++++++++++
 include/drm/drm_mipi_dsi.h     |  4 ++++
 2 files changed, 53 insertions(+)
drivers/gpu/drm/drm_mipi_dsi.c +49 -0
index af0d471..43aa743 100644
@@ -1041,6 +1041,55 @@ int mipi_dsi_dcs_set_pixel_format(struct mipi_dsi_device *dsi, u8 format)
 }
 EXPORT_SYMBOL(mipi_dsi_dcs_set_pixel_format);
 
+/**
+ * mipi_dsi_dcs_get_display_brightness() - gets the current brightness value
+ * of the display
+ * @dsi: DSI peripheral device
+ * @brightness: brightness value
+ *
+ * Return: 0 on success or a negative error code on failure.
+ */
+int mipi_dsi_dcs_get_display_brightness(struct mipi_dsi_device *dsi,
+					u16 *brightness)
+{
+	ssize_t err;
+
+	err = mipi_dsi_dcs_read(dsi, MIPI_DCS_GET_DISPLAY_BRIGHTNESS,
+				brightness, sizeof(*brightness));
+	if (err <= 0) {
+		if (err == 0)
+			err = -ENODATA;
+
+		return err;
+	}
+
+	return 0;
+}
+EXPORT_SYMBOL(mipi_dsi_dcs_get_display_brightness);
+
+/**
+ * mipi_dsi_dcs_set_display_brightness() - sets the brightness value of
+ * the display
+ * @dsi: DSI peripheral device
+ * @brightness: brightness value
+ *
+ * Return: 0 on success or a negative error code on failure.
+ */
+int mipi_dsi_dcs_set_display_brightness(struct mipi_dsi_device *dsi,
+					u16 brightness)
+{
+	ssize_t err;
+	u8 bl_value[2] = { brightness & 0xff, brightness >> 8 };
+
+	err = mipi_dsi_dcs_write(dsi, MIPI_DCS_SET_DISPLAY_BRIGHTNESS,
+				 bl_value, sizeof(bl_value));
+	if (err < 0)
+		return err;
+
+	return 0;
+}
+EXPORT_SYMBOL(mipi_dsi_dcs_set_display_brightness);
+
 static int mipi_dsi_drv_probe(struct device *dev)
 {
 	struct mipi_dsi_driver *drv = to_mipi_dsi_driver(dev->driver);
include/drm/drm_mipi_dsi.h +4 -0
index 47ac925..404c373 100644
@@ -270,6 +270,10 @@ int mipi_dsi_dcs_set_tear_off(struct mipi_dsi_device *dsi);
 int mipi_dsi_dcs_set_tear_on(struct mipi_dsi_device *dsi,
 			     enum mipi_dsi_dcs_tear_mode mode);
 int mipi_dsi_dcs_set_pixel_format(struct mipi_dsi_device *dsi, u8 format);
+int mipi_dsi_dcs_get_display_brightness(struct mipi_dsi_device *dsi,
+					u16 *brightness);
+int mipi_dsi_dcs_set_display_brightness(struct mipi_dsi_device *dsi,
+					u16 brightness);
 
 /**
  * struct mipi_dsi_driver - DSI driver
Signature · 1 line
2.1.2
#10 lore raw

Re: [RESEND] [PATCH v3 3/4] drm/dsi: Implement dcs set/get display brightness

Quoted 24 lines · Vinay Simha BN

Provide a small convenience wrapper that set/get the display brightness value

Cc John Stultz <[email protected]>
Cc Sumit Semwal <[email protected]>
Cc Archit Taneja <[email protected]>
Cc Rob Clark <[email protected]>
Cc Jani Nikula <[email protected]>
Cc Thierry Reding <[email protected]>
Cc Emil Velikov <[email protected]>

---
v1:
*tested in nexus7 2nd gen.

v2:
* implemented jani review comments
-functions name mapped accordingly
-bl value increased from 0xff to 0xffff -backlight interface will be handled in panel driver,
so it is moved from the mipi_dsi helper function

Quoted 7 lines

v3:
* emil review comments
(err < 0) supposed to be (err <= 0)

---
 drivers/gpu/drm/drm_mipi_dsi.c | 49 ++++++++++++++++++++++++++++++++++++++++++
 include/drm/drm_mipi_dsi.h     |  4 ++++
 2 files changed, 53 insertions(+)

Applied, thanks.

Thierry

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

#11 lore raw

PATCH RESEND v9 4/4 drm/panel: Add JDI LT070ME05000 WUXGA DSI Panel

In reply to Vinay Simha BN

Add support for the JDI LT070ME05000 WUXGA DSI panel used in Nexus 7 2013 devices.

Programming sequence for the panel is was originally found in the android-msm-flo-3.4-lollipop-release branch from:
https://android.googlesource.com/kernel/msm.git

And video mode setting is from dsi-panel-jdi-dualmipi1-video.dtsi file in:

    git://codeaurora.org/kernel/msm-3.10.git  LNX.LA.3.6_rb1.27

---
v1:
* sumit ported to drm/panel framework, john cherry-picked to mainline, folded down other fixes from Vinay and Archit, vinay removed interface setting cmd mode, video mode panel selected

v2:
* incorporated code reviews from theiry, archit
code style, alphabetical soring in Makefile, Kconfig, regulator_bulk, arrays of u8, generic helper function, documentation bindings,

v3:
* dcs backlight support added
* tested this panel driver in nexus7 2013 device

v4:
* backlight interface added in the panel driver
* incorporated width_mm and height_mm suggested by rob herring

v5:
* theirry review comments incorporated
panel model naming consistent, alphabetical soring in Kconfig Makefile, MAX_BRIGHTNESS dropped, regulator_names, parameterize panel width and height, descprition for control display, cabc and interface setting, temporary variable removed, consistent error reporting and commit message
* removed tear on/off, scanline, since these are required only for command mode panels

v6:
* emil review comments incorporated PANEL_NUM_REGULATORS dropped, return ret added at necessary places, if checks dropped for backlight and gpios

v7:
* emil review comments incorporated
added ARRAY_SIZE in struct, regulator_bulk_disable in poweroff, gpios checks dropped.
some returns cannot be dropped, since drm panel framework return type required.

v8:
* emil review commnets incorporated for jdi_panel_unprepare, dropped the returns (ref: panel-sharp-lq101r1sx01.c) and for jdi_panel_prepare(panel_on) it does not return prematurely and goes to poweroff if not success
* few dev_err's for panel_init

v9:
* function drm_panel_create_dsi_backlight made as static

---
 drivers/gpu/drm/panel/Kconfig                  |  11 +
 drivers/gpu/drm/panel/Makefile                 |   1 +
 drivers/gpu/drm/panel/panel-jdi-lt070me05000.c | 518 +++++++++++++++++++++++++
 3 files changed, 530 insertions(+)
 create mode 100644 drivers/gpu/drm/panel/panel-jdi-lt070me05000.c
drivers/gpu/drm/panel/Kconfig +11 -0
index 1500ab9..62aba97 100644
@@ -18,6 +18,17 @@ config DRM_PANEL_SIMPLE
 	  that it can be automatically turned off when the panel goes into a
 	  low power state.
 
+config DRM_PANEL_JDI_LT070ME05000
+	tristate "JDI LT070ME05000 WUXGA DSI panel"
+	depends on OF
+	depends on DRM_MIPI_DSI
+	depends on BACKLIGHT_CLASS_DEVICE
+	help
+	  Say Y here if you want to enable support for JDI DSI video mode
+	  panel as found in Google Nexus 7 (2013) devices.
+	  The panel has a 1200(RGB)×1920 (WUXGA) resolution and uses
+	  24 bit per pixel.
+
 config DRM_PANEL_SAMSUNG_LD9040
 	tristate "Samsung LD9040 RGB/SPI panel"
 	depends on OF && SPI
drivers/gpu/drm/panel/Makefile +1 -0
index f277eed..a5c7ec0 100644
@@ -1,4 +1,5 @@
 obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o
+obj-$(CONFIG_DRM_PANEL_JDI_LT070ME05000) += panel-jdi-lt070me05000.o
 obj-$(CONFIG_DRM_PANEL_LG_LG4573) += panel-lg-lg4573.o
 obj-$(CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00) += panel-panasonic-vvx10f034n00.o
 obj-$(CONFIG_DRM_PANEL_SAMSUNG_LD9040) += panel-samsung-ld9040.o
drivers/gpu/drm/panel/panel-jdi-lt070me05000.c new file +518 -0

518 lines not on this page · raw message

Signature · 1 line
2.1.2