Commit faaa30dd authored by Zhen Lei's avatar Zhen Lei Committed by Rob Herring

spi: dt-bindings: spi-controller: explicitly require #address-cells=<0> for slave mode

scripts/dtc/checks.c:
if (get_property(node, "spi-slave"))
	spi_addr_cells = 0;
if (node_addr_cells(node) != spi_addr_cells)
	FAIL(c, dti, node, "incorrect #address-cells for SPI bus");
if (node_size_cells(node) != 0)
	FAIL(c, dti, node, "incorrect #size-cells for SPI bus");

The above code in check_spi_bus_bridge() require that the number of address
cells must be 0. So we should explicitly declare "#address-cells = <0>".
Signed-off-by: default avatarZhen Lei <thunder.leizhen@huawei.com>
Link: https://lore.kernel.org/r/20201013160845.1772-4-thunder.leizhen@huawei.comSigned-off-by: default avatarRob Herring <robh@kernel.org>
parent 44184828
...@@ -20,7 +20,7 @@ properties: ...@@ -20,7 +20,7 @@ properties:
pattern: "^spi(@.*|-[0-9a-f])*$" pattern: "^spi(@.*|-[0-9a-f])*$"
"#address-cells": "#address-cells":
const: 1 enum: [0, 1]
"#size-cells": "#size-cells":
const: 0 const: 0
...@@ -52,11 +52,19 @@ properties: ...@@ -52,11 +52,19 @@ properties:
description: description:
The SPI controller acts as a slave, instead of a master. The SPI controller acts as a slave, instead of a master.
oneOf: allOf:
- required: - if:
- "#address-cells" not:
- required: required:
- spi-slave - spi-slave
then:
properties:
"#address-cells":
const: 1
else:
properties:
"#address-cells":
const: 0
patternProperties: patternProperties:
"^slave$": "^slave$":
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment