Improve the bindings and make them more usable:
- Pick in spi-cpha and spi-cpol from the SPI node parent,
this will specify that we are "type 3" in the device tree
rather than hardcoding it in the operating system.
- Drop the u32 ref from the SPI frequency: comes in from
the SPI host bindings.
- Make spi-cpha, spi-cpol and port compulsory.
- Update the example with a real-world SPI controller,
spi-gpio.
Cc: Douglas Anderson
Cc: Noralf Trønnes
Cc: devicet...@vger.kernel.org
Signed-off-by: Linus Walleij
---
.../display/panel/samsung,lms397kf04.yaml | 18 --
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git
a/Documentation/devicetree/bindings/display/panel/samsung,lms397kf04.yaml
b/Documentation/devicetree/bindings/display/panel/samsung,lms397kf04.yaml
index 4cb75a5f2e3a..cd62968426fb 100644
--- a/Documentation/devicetree/bindings/display/panel/samsung,lms397kf04.yaml
+++ b/Documentation/devicetree/bindings/display/panel/samsung,lms397kf04.yaml
@@ -33,8 +33,11 @@ properties:
backlight: true
+ spi-cpha: true
+
+ spi-cpol: true
+
spi-max-frequency:
-$ref: /schemas/types.yaml#/definitions/uint32
description: inherited as a SPI client node, the datasheet specifies
maximum 300 ns minimum cycle which gives around 3 MHz max frequency
maximum: 300
@@ -44,6 +47,9 @@ properties:
required:
- compatible
- reg
+ - spi-cpha
+ - spi-cpol
+ - port
additionalProperties: false
@@ -52,15 +58,23 @@ examples:
#include
spi {
+ compatible = "spi-gpio";
+ sck-gpios = < 0 GPIO_ACTIVE_HIGH>;
+ miso-gpios = < 1 GPIO_ACTIVE_HIGH>;
+ mosi-gpios = < 2 GPIO_ACTIVE_HIGH>;
+ cs-gpios = < 3 GPIO_ACTIVE_HIGH>;
+ num-chipselects = <1>;
#address-cells = <1>;
#size-cells = <0>;
panel@0 {
compatible = "samsung,lms397kf04";
spi-max-frequency = <300>;
+spi-cpha;
+spi-cpol;
reg = <0>;
vci-supply = <_3v0_reg>;
vccio-supply = <_1v8_reg>;
-reset-gpios = < 1 GPIO_ACTIVE_LOW>;
+reset-gpios = < 4 GPIO_ACTIVE_LOW>;
backlight = <>;
port {
--
2.31.1