platform/kernel/linux-rpi.git
2 years agodt-bindings: vendor-prefixes: add F(x)tec
Stanislav Jakubek [Thu, 13 Jan 2022 10:29:26 +0000 (11:29 +0100)]
dt-bindings: vendor-prefixes: add F(x)tec

The vendor prefix for F(x)tec [1] is used in device tree [2], but was
not documented so far. Add it to the schema to document it.

[1] https://www.fxtec.com/
[2] arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts

Signed-off-by: Stanislav Jakubek <stano.jakubek@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220113102926.GA4388@standask-GA-A55M-S2HP
2 years agodt-bindings: vendor-prefixes: add 8devices
Stanislav Jakubek [Thu, 13 Jan 2022 10:28:42 +0000 (11:28 +0100)]
dt-bindings: vendor-prefixes: add 8devices

The vendor prefix for 8devices [1] is used in device tree [2], but was
not documented so far. Add it to the schema to document it.

[1] https://www.8devices.com/
[2] arch/arm/boot/dts/qcom-ipq4018-jalapeno.dts

Signed-off-by: Stanislav Jakubek <stano.jakubek@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220113102842.GA4357@standask-GA-A55M-S2HP
2 years agodt-bindings: power: reset: gpio-restart: Correct default priority
Sander Vanheule [Mon, 10 Jan 2022 21:44:56 +0000 (22:44 +0100)]
dt-bindings: power: reset: gpio-restart: Correct default priority

Commit bcd56fe1aa97 ("power: reset: gpio-restart: increase priority
slightly") changed the default restart priority 129, but did not update
the documentation. Correct this, so the driver and documentation have
the same default value.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220110214456.67087-1-sander@svanheule.net
2 years agoMerge branch 'dt/linus' into dt/next
Rob Herring [Wed, 12 Jan 2022 16:14:09 +0000 (10:14 -0600)]
Merge branch 'dt/linus' into dt/next

Pick a fix which didn't make it into v5.16.

2 years agodt-bindings: net: mdio: Drop resets/reset-names child properties
Rob Herring [Tue, 11 Jan 2022 17:02:47 +0000 (11:02 -0600)]
dt-bindings: net: mdio: Drop resets/reset-names child properties

resets/reset-names are device specific and don't belong in the MDIO bus
schema. For example, it doesn't match what is defined for the
"qca,ar9331-switch" binding which defines "reset-names" to be "switch"
rather than "phy". Neither name is that useful IMO.

Other child properties are also device specific, but those won't conflict
with device schemas.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220111170248.3160841-1-robh@kernel.org
2 years agodt-bindings: clock: samsung: convert S5Pv210 to dtschema
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:56 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: convert S5Pv210 to dtschema

Convert Samsung S5Pv210 SoC clock controller bindings to DT schema
format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-8-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: clock: samsung: convert Exynos5410 to dtschema
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:55 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: convert Exynos5410 to dtschema

Convert Samsung Exynos5410 SoC clock controller bindings to DT schema
format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-7-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: clock: samsung: convert Exynos5260 to dtschema
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:54 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: convert Exynos5260 to dtschema

Convert Samsung Exynos5260 SoC clock controller bindings to DT schema
format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-6-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: clock: samsung: extend Exynos7 bindings with UFS
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:53 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: extend Exynos7 bindings with UFS

The UFS for Exynos7 SoC clock controller requires additional input
clocks for the FSYS1 clock controller.  Update the bindings to reflect
this, at least in theory.  In practice, these input clocks are ignored,
so it is rather adjusting of bindings to existing DTS, without affecting
any real users.  I understand that is not how it should be done,
though...

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-5-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: clock: samsung: convert Exynos7 to dtschema
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:52 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: convert Exynos7 to dtschema

Convert Samsung Exynos7 SoC clock controller bindings to DT schema
format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-4-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: clock: samsung: convert Exynos5433 to dtschema
Krzysztof Kozlowski [Sun, 2 Jan 2022 11:53:51 +0000 (12:53 +0100)]
dt-bindings: clock: samsung: convert Exynos5433 to dtschema

Convert Samsung Exynos5433 SoC clock controller bindings to DT schema
format.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220102115356.75796-3-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: i2c: maxim,max96712: Add bindings for Maxim Integrated MAX96712
Niklas Söderlund [Thu, 30 Dec 2021 12:33:54 +0000 (13:33 +0100)]
dt-bindings: i2c: maxim,max96712: Add bindings for Maxim Integrated MAX96712

Add bindings for Maxim Integrated MAX96712 deserializer. The MAX96712
deserializer converts GMSL2 or GMSL1 serial inputs into MIPI CSI-2 D-PHY
or C-PHY formatted outputs.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211230123354.623876-1-niklas.soderlund+renesas@ragnatech.se
2 years agodt-bindings: iio: adi,ltc2983: Fix 64-bit property sizes
Rob Herring [Fri, 7 Jan 2022 03:20:26 +0000 (21:20 -0600)]
dt-bindings: iio: adi,ltc2983: Fix 64-bit property sizes

The '/bits/ 64' notation applies the next <> list of values. Another <> list
is encoded as 32-bits by default. IOW, each <> list needs to be preceeded
with '/bits/ 64'.

While the dts format allows this, as a rule we don't mix sizes for DT
properties since all size information is lost in the dtb file.

Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20220107032026.2408196-1-robh@kernel.org
2 years agodt-bindings: power: maxim,max17040: Fix incorrect type for 'maxim,rcomp'
Rob Herring [Fri, 7 Jan 2022 03:04:33 +0000 (21:04 -0600)]
dt-bindings: power: maxim,max17040: Fix incorrect type for 'maxim,rcomp'

The 'maxim,rcomp' is defined as a uint32, but the description and users all
say it is uint8-array with 1 or 2 elements. The tools missed checking this
case.

Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20220107030433.2381616-1-robh@kernel.org
2 years agodt-bindings: interrupt-controller: arm,gic-v3: Fix 'interrupts' cell size in example
Rob Herring [Thu, 6 Jan 2022 18:25:13 +0000 (12:25 -0600)]
dt-bindings: interrupt-controller: arm,gic-v3: Fix 'interrupts' cell size in example

The 2nd example has an interrupts cells size of 4, but the 'interrupts'
property has 3 cells. The example should also be separate since the cell
size differs in each example.

Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220106182518.1435497-5-robh@kernel.org
2 years agodt-bindings: iio/magnetometer: yamaha,yas530: Fix invalid 'interrupts' in example
Rob Herring [Thu, 6 Jan 2022 18:25:12 +0000 (12:25 -0600)]
dt-bindings: iio/magnetometer: yamaha,yas530: Fix invalid 'interrupts' in example

'interrupts' does not take a phandle, so remove it in the example.

Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20220106182518.1435497-4-robh@kernel.org
2 years agodt-bindings: clock: imx5: Drop clock consumer node from example
Rob Herring [Thu, 6 Jan 2022 18:25:09 +0000 (12:25 -0600)]
dt-bindings: clock: imx5: Drop clock consumer node from example

The example nodes have different sized interrupt cells which is not valid
given no interrupt-parent is specified. As provider examples don't need to
show the consumer side in the first place, just drop the consumer node.

Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20220106182518.1435497-1-robh@kernel.org
2 years agodt-bindings: Drop required 'interrupt-parent'
Rob Herring [Fri, 7 Jan 2022 03:19:04 +0000 (21:19 -0600)]
dt-bindings: Drop required 'interrupt-parent'

'interrupt-parent' is never required as it can be in a parent node or a
parent node itself can be an interrupt provider. Where exactly it lives is
outside the scope of a binding schema.

Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Bartosz Golaszewski <brgl@bgdev.pl>
Link: https://lore.kernel.org/r/20220107031905.2406176-1-robh@kernel.org
2 years agodt-bindings: net: ti,dp83869: Drop value on boolean 'ti,max-output-impedance'
Rob Herring [Fri, 7 Jan 2022 03:05:13 +0000 (21:05 -0600)]
dt-bindings: net: ti,dp83869: Drop value on boolean 'ti,max-output-impedance'

DT booleans don't have a value and 'ti,max-output-impedance' is defined and
used as a boolean. So drop the bogus value in the example.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220107030513.2385482-1-robh@kernel.org
2 years agodt-bindings: net: wireless: mt76: Fix 8-bit property sizes
Rob Herring [Fri, 7 Jan 2022 03:04:17 +0000 (21:04 -0600)]
dt-bindings: net: wireless: mt76: Fix 8-bit property sizes

The '/bits/ 8' notation applies the next <> list of values. Another <> list
is encoded as 32-bits by default. IOW, each <> list needs to be preceeded
with '/bits/ 8'.

While the dts format allows this, as a rule we don't mix sizes for DT
properties since all size information is lost in the dtb file.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220107030419.2380198-1-robh@kernel.org
2 years agodt-bindings: PCI: snps,dw-pcie-ep: Drop conflicting 'max-functions' schema
Rob Herring [Fri, 7 Jan 2022 03:03:57 +0000 (21:03 -0600)]
dt-bindings: PCI: snps,dw-pcie-ep: Drop conflicting 'max-functions' schema

'max-functions' is already defined in pci-ep.yaml schema as a uint8 and all
users of it expect an uint8. Drop the conflicting schema.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220107030358.2378221-1-robh@kernel.org
2 years agodt-bindings: i2c: st,stm32-i2c: Make each example a separate entry
Rob Herring [Thu, 6 Jan 2022 18:30:36 +0000 (12:30 -0600)]
dt-bindings: i2c: st,stm32-i2c: Make each example a separate entry

Each independent example should be a separate entry. This allows for
'interrupts' to have different cell sizes.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220106183037.1443931-1-robh@kernel.org
2 years agodt-bindings: net: stm32-dwmac: Make each example a separate entry
Rob Herring [Thu, 6 Jan 2022 18:25:16 +0000 (12:25 -0600)]
dt-bindings: net: stm32-dwmac: Make each example a separate entry

Each independent example should be a separate entry. This allows for
'interrupts' to have different cell sizes.

The first example also has a phandle in 'interrupts', so drop the phandle.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220106182518.1435497-8-robh@kernel.org
2 years agodt-bindings: net: Cleanup MDIO node schemas
Rob Herring [Wed, 5 Jan 2022 15:10:09 +0000 (09:10 -0600)]
dt-bindings: net: Cleanup MDIO node schemas

The schemas for MDIO bus nodes range from missing to duplicating
everything in mdio.yaml. The MDIO bus node schemas only need to
reference mdio.yaml, define any binding specific properties, and define
'unevaluatedProperties: false'. This ensures that MDIO nodes only
contain defined properties. With this, any duplicated properties can
be removed.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Vivien Didelot <vivien.didelot@gmail.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: Vladimir Oltean <olteanv@gmail.com>
Cc: Joakim Zhang <qiangqing.zhang@nxp.com>
Cc: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Cc: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
Cc: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
Cc: "Fernández Rojas" <noltari@gmail.com>
Cc: John Crispin <john@phrozen.org>
Cc: "G. Jaya Kumaran" <vineetha.g.jaya.kumaran@intel.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Cc: Oleksij Rempel <o.rempel@pengutronix.de>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Jose Abreu <joabreu@synopsys.com>
Cc: netdev@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20220105151009.3093506-1-robh@kernel.org
2 years agodt-bindings: net: Add missing properties used in examples
Rob Herring [Fri, 3 Dec 2021 22:45:23 +0000 (16:45 -0600)]
dt-bindings: net: Add missing properties used in examples

With 'unevaluatedProperties' support implemented, the following warnings
are generated in the net bindings:

Documentation/devicetree/bindings/net/qca,ar71xx.example.dt.yaml: ethernet@19000000: Unevaluated properties are not allowed ('qca,ethcfg' was unexpected)
Documentation/devicetree/bindings/net/stm32-dwmac.example.dt.yaml: ethernet@40028000: Unevaluated properties are not allowed ('reg-names', 'snps,pbl' were unexpected)
Documentation/devicetree/bindings/net/ti,cpsw-switch.example.dt.yaml: mdio@1000: Unevaluated properties are not allowed ('clocks', 'clock-names' were unexpected)
Documentation/devicetree/bindings/net/ti,k3-am654-cpsw-nuss.example.dt.yaml: mdio@f00: Unevaluated properties are not allowed ('clocks', 'clock-names' were unexpected)

Add the missing properties/nodes as necessary.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: "Andreas Färber" <afaerber@suse.de>
Cc: Manivannan Sadhasivam <mani@kernel.org>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
Cc: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
Cc: "G. Jaya Kumaran" <vineetha.g.jaya.kumaran@intel.com>
Cc: Oleksij Rempel <o.rempel@pengutronix.de>
Cc: Christophe Roullier <christophe.roullier@foss.st.com>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Cc: netdev@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-actions@lists.infradead.org
Cc: linux-stm32@st-md-mailman.stormreply.com
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211206174153.2296977-1-robh@kernel.org
2 years agodt-bindings: net: snps,dwmac: Enable burst length properties for more compatibles
Rob Herring [Mon, 6 Dec 2021 17:41:47 +0000 (11:41 -0600)]
dt-bindings: net: snps,dwmac: Enable burst length properties for more compatibles

With 'unevaluatedProperties' support implemented, the properties
'snps,pbl', 'snps,txpbl', and 'snps,rxpbl' are not allowed in the
examples for some of the DWMAC versions:

Documentation/devicetree/bindings/net/intel,dwmac-plat.example.dt.yaml: ethernet@3a000000: Unevaluated properties are not allowed ('snps,pbl', 'mdio0' were unexpected)
Documentation/devicetree/bindings/net/stm32-dwmac.example.dt.yaml: ethernet@5800a000: Unevaluated properties are not allowed ('reg-names', 'snps,pbl' were unexpected)
Documentation/devicetree/bindings/net/stm32-dwmac.example.dt.yaml: ethernet@40028000: Unevaluated properties are not allowed ('reg-names', 'snps,pbl' were unexpected)
Documentation/devicetree/bindings/net/stm32-dwmac.example.dt.yaml: ethernet@40027000: Unevaluated properties are not allowed ('reg-names', 'snps,pbl' were unexpected)
Documentation/devicetree/bindings/net/toshiba,visconti-dwmac.example.dt.yaml: ethernet@28000000: Unevaluated properties are not allowed ('snps,txpbl', 'snps,rxpbl', 'mdio0' were unexpected)

This appears to be an oversight, so fix it by allowing the properties
on the v3.50a, v4.10a, and v4.20a versions of the DWMAC.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Jose Abreu <joabreu@synopsys.com>
Cc: netdev@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211206174147.2296770-1-robh@kernel.org
2 years agodt-bindings: net: mdio: Allow any child node name
Rob Herring [Mon, 6 Dec 2021 17:41:39 +0000 (11:41 -0600)]
dt-bindings: net: mdio: Allow any child node name

An MDIO bus can have devices other than ethernet PHYs on it, so it
should allow for any node name rather than just 'ethernet-phy'.

Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: netdev@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211206174139.2296497-1-robh@kernel.org
2 years agodt-bindings: vendor-prefixes: Add Sunplus
Qin Jian [Wed, 22 Dec 2021 07:05:57 +0000 (15:05 +0800)]
dt-bindings: vendor-prefixes: Add Sunplus

Add vendor prefix for Sunplus Technology Co., Ltd. (http://www.sunplus.com)

Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Qin Jian <qinjian@cqplus1.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/2e74a1339a5ea54d92fdc4d1998a2b169e23b82b.1640154492.git.qinjian@cqplus1.com
2 years agoof/fdt: Don't worry about non-memory region overlap for no-map
Stephen Boyd [Fri, 7 Jan 2022 19:42:32 +0000 (11:42 -0800)]
of/fdt: Don't worry about non-memory region overlap for no-map

In commit 8a5a75e5e9e5 ("of/fdt: Make sure no-map does not remove
already reserved regions") we returned -EBUSY when trying to mark
regions as no-map when they intersect with reserved memory. The goal was
to find bad no-map reserved memory DT nodes that would unmap the kernel
text/data sections.

The problem is the reserved memory check will still trigger if the DT
has a /memreserve/ that completely subsumes the no-map memory carveouts
in the reserved memory node _and_ that region is also not part of the
memory reg property. For example in sc7180.dtsi we have the following
reserved-memory and memory node:

      memory@80000000 {
          /* We expect the bootloader to fill in the size */
          reg = <0 0x80000000 0 0>;
      };

      smem_mem: memory@80900000 {
              reg = <0x0 0x80900000 0x0 0x200000>;
              no-map;
      };

and the memreserve filled in by the bootloader is

      /memreserve/ 0x80800000 0x400000;

while the /memory node is transformed into

      memory@80000000 {
          /* The bootloader fills in the size, and adds another region */
          reg = <0 0x80000000 0 0x00800000>,
                <0 0x80c00000 0 0x7f200000>;
      };

The smem region is doubly reserved via /memreserve/ and by not being
part of the /memory reg property. This leads to the following warning
printed at boot.

 OF: fdt: Reserved memory: failed to reserve memory for node 'memory@80900000': base 0x0000000080900000, size 2 MiB

Otherwise nothing really goes wrong because the smem region is not going
to be mapped by the kernel's direct linear mapping given that it isn't
part of the memory node. Therefore, let's only consider this to be a
problem if we're trying to mark a region as no-map and it is actually
memory that we're intending to keep out of the kernel's direct mapping
but it's already been reserved.

Acked-by: Mike Rapoport <rppt@kernel.org>
Cc: Douglas Anderson <dianders@chromium.org>
Cc: Nicolas Boichat <drinkcat@chromium.org>
Cc: Quentin Perret <qperret@google.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Fixes: 8a5a75e5e9e5 ("of/fdt: Make sure no-map does not remove already reserved regions")
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220107194233.2793146-1-swboyd@chromium.org
2 years agoof: unittest: remove unneeded semicolon
Yang Li [Fri, 7 Jan 2022 00:28:26 +0000 (08:28 +0800)]
of: unittest: remove unneeded semicolon

Eliminate the following coccicheck warning:
./drivers/of/unittest.c:1961:2-3: Unneeded semicolon

Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220107002826.77939-1-yang.lee@linux.alibaba.com
2 years agoof: base: Improve argument length mismatch error
Baruch Siach [Thu, 30 Dec 2021 16:31:53 +0000 (18:31 +0200)]
of: base: Improve argument length mismatch error

The cells_name field of of_phandle_iterator might be NULL. Use the
phandle name instead. With this change instead of:

  OF: /soc/pinctrl@1000000: (null) = 3 found 2

We get:

  OF: /soc/pinctrl@1000000: phandle pinctrl@1000000 needs 3, found 2

Which is a more helpful messages making DT debugging easier.

In this particular example the phandle name looks like duplicate of the
same node name. But note that the first node is the parent node
(it->parent), while the second is the phandle target (it->node). They
happen to be the same in the case that triggered this improvement. See
commit 72cb4c48a46a ("arm64: dts: qcom: ipq6018: Fix gpio-ranges
property").

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/f6a68e0088a552ea9dfd4d8e3b5b586d92594738.1640881913.git.baruch@tkos.co.il
2 years agoof: base: Fix phandle argument length mismatch error message
Baruch Siach [Thu, 30 Dec 2021 16:31:52 +0000 (18:31 +0200)]
of: base: Fix phandle argument length mismatch error message

The cell_count field of of_phandle_iterator is the number of cells we
expect in the phandle arguments list when cells_name is missing. The
error message should show the number of cells we actually see.

Fixes: af3be70a3211 ("of: Improve of_phandle_iterator_next() error message")
Cc: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/96519ac55be90a63fa44afe01480c30d08535465.1640881913.git.baruch@tkos.co.il
2 years agodt-bindings: display: novatek,nt36672a: Fix unevaluated properties warning
Rob Herring [Tue, 21 Dec 2021 12:51:26 +0000 (08:51 -0400)]
dt-bindings: display: novatek,nt36672a: Fix unevaluated properties warning

With 'unevaluatedProperties' support enabled, the novatek,nt36672a
binding has a new warning:

Documentation/devicetree/bindings/display/panel/novatek,nt36672a.example.dt.yaml: panel@0: Unevaluated properties are not allowed ('vddi0-supply', '#address-cells', '#size-cells' were unexpected)

Based on dts files, 'vddi0-supply' does appear to be the correct name.
Drop '#address-cells' and '#size-cells' which aren't needed.

Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://lore.kernel.org/r/20211221125125.1194554-1-robh@kernel.org
2 years agodt-bindings: rng: timeriomem_rng: convert TimerIO RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:51 +0000 (19:32 +0100)]
dt-bindings: rng: timeriomem_rng: convert TimerIO RNG to dtschema

Convert the TimerIO RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-8-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: st,rng: convert ST RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:50 +0000 (19:32 +0100)]
dt-bindings: rng: st,rng: convert ST RNG to dtschema

Convert the ST RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-7-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: ti,omap-rom-rng: convert OMAP ROM RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:49 +0000 (19:32 +0100)]
dt-bindings: rng: ti,omap-rom-rng: convert OMAP ROM RNG to dtschema

Convert the OMAP ROM RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-6-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: nuvoton,npcm-rng: convert Nuvoton NPCM RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:48 +0000 (19:32 +0100)]
dt-bindings: rng: nuvoton,npcm-rng: convert Nuvoton NPCM RNG to dtschema

Convert the Nuvoton NPCM RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-5-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: ti,keystone-rng: convert TI Keystone RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:47 +0000 (19:32 +0100)]
dt-bindings: rng: ti,keystone-rng: convert TI Keystone RNG to dtschema

Convert the TI Keystone RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-4-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: atmel,at91-trng: document sama7g5 TRNG
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:46 +0000 (19:32 +0100)]
dt-bindings: rng: atmel,at91-trng: document sama7g5 TRNG

Add compatbile for Microchip sama7g5 TRNG.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-3-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: atmel,at91-trng: convert Atmel TRNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:45 +0000 (19:32 +0100)]
dt-bindings: rng: atmel,at91-trng: convert Atmel TRNG to dtschema

Convert the Atmel TRNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-2-krzysztof.kozlowski@canonical.com
2 years agodt-bindings: rng: apm,x-gene-rng: convert APM RNG to dtschema
Krzysztof Kozlowski [Mon, 27 Dec 2021 18:32:44 +0000 (19:32 +0100)]
dt-bindings: rng: apm,x-gene-rng: convert APM RNG to dtschema

Convert the APM X-Gene RNG bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211227183251.132525-1-krzysztof.kozlowski@canonical.com
2 years agoof: unittest: re-implement overlay tracking
Frank Rowand [Sat, 1 Jan 2022 03:33:29 +0000 (21:33 -0600)]
of: unittest: re-implement overlay tracking

Some overlays are tracked when they are applied.  The tracked overlays
are later removed after the overlay tests are completed.  The old
implementation makes assumptions about the expected values for
overlay changeset id created by the overlay apply which result
in fragile code.  The new code removes the assumptions.

A symptom that exposes a problem with the tracking code is a
warning "UBSAN: shift-out-of-bounds in drivers/of/unittest.c:1933:36",
Kernel Version: 5.15-rc7, PPC-64, Talos II.  This results from variable
"id" value of -1 in the final line of of_unittest_untrack_overlay().

Reported-by: erhard_f@mailbox.org
Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220101033329.1277779-3-frowand.list@gmail.com
2 years agoof: unittest: change references to obsolete overlay id
Frank Rowand [Sat, 1 Jan 2022 03:33:28 +0000 (21:33 -0600)]
of: unittest: change references to obsolete overlay id

Unittest inconsistently interchanges overlay changeset id and
overlay id.  Change variable names of overlay id to overlay
changeset id.

Do not fix variable names in the overlay tracking functions
of_unittest_overlay_tracked(), of_unittest_track_overlay(), and
of_unittest_destroy_tracked_overlays() which will be replaced in
a following commit.

Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220101033329.1277779-2-frowand.list@gmail.com
2 years agodt-bindings: display: enable port jdi,lt070me05000
David Heidelberg [Fri, 24 Dec 2021 19:53:54 +0000 (20:53 +0100)]
dt-bindings: display: enable port jdi,lt070me05000

Enable port inside panel bindings.

Fixes warnings generated by `make qcom-apq8064-asus-nexus7-flo.dtb` as:
arch/arm/boot/dts/qcom-apq8064-asus-nexus7-flo.dt.yaml: panel@0: 'port' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: Documentation/devicetree/bindings/display/panel/jdi,lt070me05000.yaml

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211224195354.78362-1-david@ixit.cz
2 years agodt-bindings: vendor-prefixes: add OnePlus
Stanislav Jakubek [Thu, 23 Dec 2021 14:10:02 +0000 (15:10 +0100)]
dt-bindings: vendor-prefixes: add OnePlus

Add vendor prefix for OnePlus (https://www.oneplus.com/)

Signed-off-by: Stanislav Jakubek <stano.jakubek@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211223141002.GA5979@standask-GA-A55M-S2HP
2 years agodt-bindings: display: st,stm32-dsi: Fix panel node name in example
Rob Herring [Tue, 21 Dec 2021 12:51:45 +0000 (08:51 -0400)]
dt-bindings: display: st,stm32-dsi: Fix panel node name in example

With 'unevaluatedProperties' support enabled, the st,stm32-dsi binding
has a new warning:

Documentation/devicetree/bindings/display/st,stm32-dsi.example.dt.yaml: dsi@5a000000: Unevaluated properties are not allowed ('panel-dsi@0' was unexpected)

The documented child node name is 'panel', so update the example.

Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211221125145.1195234-1-robh@kernel.org
2 years agodt-bindings: memory: Document Tegra210 EMC table
Thierry Reding [Fri, 17 Dec 2021 16:59:15 +0000 (17:59 +0100)]
dt-bindings: memory: Document Tegra210 EMC table

Add device tree bindings for the Tegra210 EMC table that is passed via a
reserved-memory device tree node.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217165919.2700920-1-thierry.reding@gmail.com
2 years agodt-bindings: crypto: convert Qualcomm PRNG to yaml
David Heidelberg [Mon, 20 Dec 2021 18:43:55 +0000 (19:43 +0100)]
dt-bindings: crypto: convert Qualcomm PRNG to yaml

Convert Qualcomm PRNG documentation to yaml format.

Signed-off-by: David Heidelberg <david@ixit.cz>
Acked-By: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211220184355.86582-1-david@ixit.cz
2 years agodt-bindings: msm: disp: remove bus from dpu bindings
David Heidelberg [Mon, 20 Dec 2021 18:42:20 +0000 (19:42 +0100)]
dt-bindings: msm: disp: remove bus from dpu bindings

Driver and dts has been already adjusted and bus moved out of dpu, let's
update also dt-bindings.

Fixes warnings as:
arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml: mdss
@ae00000: clock-names: ['iface', 'core'] is too short
        From schema: Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml

Ref: https://lore.kernel.org/all/20210803101657.1072358-1-dmitry.baryshkov@linaro.org/

Signed-off-by: David Heidelberg <david@ixit.cz>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211220184220.86328-1-david@ixit.cz
2 years agodt-binding: soc: qcom: convert Qualcomm Command DB documentation to yaml
David Heidelberg [Sat, 18 Dec 2021 18:46:16 +0000 (19:46 +0100)]
dt-binding: soc: qcom: convert Qualcomm Command DB documentation to yaml

Convert Qualcomm Command DB documentation into yaml format.

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211218184617.19923-1-david@ixit.cz
2 years agodt-binding: soc: qcom: convert rmtfs documentation to yaml
David Heidelberg [Sat, 18 Dec 2021 18:28:16 +0000 (19:28 +0100)]
dt-binding: soc: qcom: convert rmtfs documentation to yaml

Convert Qualcomm Remote File System Memory binding to the yaml format.

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211218182816.17151-1-david@ixit.cz
2 years agoefi: apply memblock cap after memblock_add()
Pingfan Liu [Wed, 15 Dec 2021 02:13:48 +0000 (10:13 +0800)]
efi: apply memblock cap after memblock_add()

On arm64, during kdump kernel saves vmcore, it runs into the following bug:
...
[   15.148919] usercopy: Kernel memory exposure attempt detected from SLUB object 'kmem_cache_node' (offset 0, size 4096)!
[   15.159707] ------------[ cut here ]------------
[   15.164311] kernel BUG at mm/usercopy.c:99!
[   15.168482] Internal error: Oops - BUG: 0 [#1] SMP
[   15.173261] Modules linked in: xfs libcrc32c crct10dif_ce ghash_ce sha2_ce sha256_arm64 sha1_ce sbsa_gwdt ast i2c_algo_bit drm_vram_helper drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops cec drm_ttm_helper ttm drm nvme nvme_core xgene_hwmon i2c_designware_platform i2c_designware_core dm_mirror dm_region_hash dm_log dm_mod overlay squashfs zstd_decompress loop
[   15.206186] CPU: 0 PID: 542 Comm: cp Not tainted 5.16.0-rc4 #1
[   15.212006] Hardware name: GIGABYTE R272-P30-JG/MP32-AR0-JG, BIOS F12 (SCP: 1.5.20210426) 05/13/2021
[   15.221125] pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   15.228073] pc : usercopy_abort+0x9c/0xa0
[   15.232074] lr : usercopy_abort+0x9c/0xa0
[   15.236070] sp : ffff8000121abba0
[   15.239371] x29: ffff8000121abbb0 x28: 0000000000003000 x27: 0000000000000000
[   15.246494] x26: 0000000080000400 x25: 0000ffff885c7000 x24: 0000000000000000
[   15.253617] x23: 000007ff80400000 x22: ffff07ff80401000 x21: 0000000000000001
[   15.260739] x20: 0000000000001000 x19: ffff07ff80400000 x18: ffffffffffffffff
[   15.267861] x17: 656a626f2042554c x16: 53206d6f72662064 x15: 6574636574656420
[   15.274983] x14: 74706d6574746120 x13: 2129363930342065 x12: 7a6973202c302074
[   15.282105] x11: ffffc8b041d1b148 x10: 00000000ffff8000 x9 : ffffc8b04012812c
[   15.289228] x8 : 00000000ffff7fff x7 : ffffc8b041d1b148 x6 : 0000000000000000
[   15.296349] x5 : 0000000000000000 x4 : 0000000000007fff x3 : 0000000000000000
[   15.303471] x2 : 0000000000000000 x1 : ffff07ff8c064800 x0 : 000000000000006b
[   15.310593] Call trace:
[   15.313027]  usercopy_abort+0x9c/0xa0
[   15.316677]  __check_heap_object+0xd4/0xf0
[   15.320762]  __check_object_size.part.0+0x160/0x1e0
[   15.325628]  __check_object_size+0x2c/0x40
[   15.329711]  copy_oldmem_page+0x7c/0x140
[   15.333623]  read_from_oldmem.part.0+0xfc/0x1c0
[   15.338142]  __read_vmcore.constprop.0+0x23c/0x350
[   15.342920]  read_vmcore+0x28/0x34
[   15.346309]  proc_reg_read+0xb4/0xf0
[   15.349871]  vfs_read+0xb8/0x1f0
[   15.353088]  ksys_read+0x74/0x100
[   15.356390]  __arm64_sys_read+0x28/0x34
...

This bug introduced by commit b261dba2fdb2 ("arm64: kdump: Remove custom
linux,usable-memory-range handling"), which moves
memblock_cap_memory_range() to fdt, but it breaches the rules that
memblock_cap_memory_range() should come after memblock_add() etc as said
in commit e888fa7bb882 ("memblock: Check memory add/cap ordering").

As a consequence, the virtual address set up by copy_oldmem_page() does
not bail out from the test of virt_addr_valid() in check_heap_object(),
and finally hits the BUG_ON().

Since memblock allocator has no idea about when the memblock is fully
populated, while efi_init() is aware, so tackling this issue by calling the
interface early_init_dt_check_for_usable_mem_range() exposed by of/fdt.

Fixes: b261dba2fdb2 ("arm64: kdump: Remove custom linux,usable-memory-range handling")
Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Zhen Lei <thunder.leizhen@huawei.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Nick Terrell <terrelln@fb.com>
Cc: linux-arm-kernel@lists.infradead.org
To: devicetree@vger.kernel.org
To: linux-efi@vger.kernel.org
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211215021348.8766-1-kernelfans@gmail.com
2 years agoof: fdt: Aggregate the processing of "linux,usable-memory-range"
Zhen Lei [Tue, 14 Dec 2021 04:01:56 +0000 (12:01 +0800)]
of: fdt: Aggregate the processing of "linux,usable-memory-range"

Currently, we parse the "linux,usable-memory-range" property in
early_init_dt_scan_chosen(), to obtain the specified memory range of the
crash kernel. We then reserve the required memory after
early_init_dt_scan_memory() has identified all available physical memory.
Because the two pieces of code are separated far, the readability and
maintainability are reduced. So bring them together.

Suggested-by: Rob Herring <robh@kernel.org>
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
(change the prototype of early_init_dt_check_for_usable_mem_range(), in
order to use it outside)
Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
Tested-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Acked-by: John Donnelly <john.p.donnelly@oracle.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
To: devicetree@vger.kernel.org
To: linux-efi@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: arm,cci-400: Drop the PL330 from example
Rob Herring [Fri, 17 Dec 2021 16:54:18 +0000 (10:54 -0600)]
dt-bindings: arm,cci-400: Drop the PL330 from example

The PL330 was commented out because its binding wasn't converted to a
schema. With the binding converted, the example now needs several updates.
However, while it's possible that the PL330 has a 'cci-control-port', there
aren't any platforms upstream which do. So rather than allowing
'cci-control-port' in the PL330 binding, let's just drop the example.

Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: arm: ux500: Document missing compatibles
Stanislav Jakubek [Sat, 18 Dec 2021 14:49:27 +0000 (15:49 +0100)]
dt-bindings: arm: ux500: Document missing compatibles

These compatibles are used in Ux500 device trees, but were not documented so
far. Add them to the schema to document them.

Signed-off-by: Stanislav Jakubek <stano.jakubek@gmail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211218144927.GA6388@standask-GA-A55M-S2HP
2 years agodt-bindings: power: reset: gpio-restart: Convert to json-schema
Thierry Reding [Fri, 17 Dec 2021 17:00:42 +0000 (18:00 +0100)]
dt-bindings: power: reset: gpio-restart: Convert to json-schema

Convert the GPIO restart bindings from the free-form text format to
json-schema.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217170042.2740058-1-thierry.reding@gmail.com
2 years agodt-bindings: i2c: i2c-mux-gpio: Convert to json-schema
Thierry Reding [Fri, 17 Dec 2021 16:56:58 +0000 (17:56 +0100)]
dt-bindings: i2c: i2c-mux-gpio: Convert to json-schema

Convert the GPIO-based I2C mux bindings from the free-form text format
to json-schema.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217165658.2650677-4-thierry.reding@gmail.com
2 years agodt-bindings: i2c: i2c-mux-pinctrl: Convert to json-schema
Thierry Reding [Fri, 17 Dec 2021 16:56:56 +0000 (17:56 +0100)]
dt-bindings: i2c: i2c-mux-pinctrl: Convert to json-schema

Convert the pinctrl-based I2C mux bindings from the free-form text
format to json-schema.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217165658.2650677-2-thierry.reding@gmail.com
2 years agodt-bindings: i2c: tegra: Convert to json-schema
Thierry Reding [Fri, 17 Dec 2021 16:56:55 +0000 (17:56 +0100)]
dt-bindings: i2c: tegra: Convert to json-schema

Convert the Tegra I2C controller bindings from plain text to json-schema
format.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217165658.2650677-1-thierry.reding@gmail.com
2 years agodt-bindings: interrupt-controller: Merge BCM3380 with BCM7120
Florian Fainelli [Fri, 17 Dec 2021 16:05:46 +0000 (08:05 -0800)]
dt-bindings: interrupt-controller: Merge BCM3380 with BCM7120

The two bindings are very similar and should be covered by the same
document, do that so we can get rid of an additional binding file.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217160546.497012-3-f.fainelli@gmail.com
2 years agodt-bindings: interrupt-controller: Convert BCM7120 L2 to YAML
Florian Fainelli [Fri, 17 Dec 2021 16:05:45 +0000 (08:05 -0800)]
dt-bindings: interrupt-controller: Convert BCM7120 L2 to YAML

Convert the Broadcom BCM7120 Level 2 interrupt controller Device Tree
binding to YAML to help with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217160546.497012-2-f.fainelli@gmail.com
2 years agodt-bindings: usb: Convert BDC to YAML
Florian Fainelli [Fri, 17 Dec 2021 04:20:01 +0000 (20:20 -0800)]
dt-bindings: usb: Convert BDC to YAML

Convert the Broadcom BDC device controller Device Tree binding to YAML
to help with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217042001.479577-7-f.fainelli@gmail.com
2 years agodt-bindings: bus: Convert GISB arbiter to YAML
Florian Fainelli [Fri, 17 Dec 2021 04:20:00 +0000 (20:20 -0800)]
dt-bindings: bus: Convert GISB arbiter to YAML

Convert the Broadcom STB GISB bus arbiter to YAML to help with
validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217042001.479577-6-f.fainelli@gmail.com
2 years agodt-bindings: ata: Convert Broadcom SATA to YAML
Florian Fainelli [Fri, 17 Dec 2021 04:19:59 +0000 (20:19 -0800)]
dt-bindings: ata: Convert Broadcom SATA to YAML

Convert the Broadcom SATA3 AHCI controller Device Tree binding to YAML
to help with validation.

Acked-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211217042001.479577-5-f.fainelli@gmail.com
2 years agoof/fdt: Rework early_init_dt_scan_memory() to call directly
Rob Herring [Wed, 15 Dec 2021 15:01:02 +0000 (09:01 -0600)]
of/fdt: Rework early_init_dt_scan_memory() to call directly

Use of the of_scan_flat_dt() function predates libfdt and is discouraged
as libfdt provides a nicer set of APIs. Rework
early_init_dt_scan_memory() to be called directly and use libfdt.

Cc: John Crispin <john@phrozen.org>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: linux-mips@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Tested-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20211215150102.1303588-1-robh@kernel.org
2 years agoof/fdt: Rework early_init_dt_scan_root() to call directly
Rob Herring [Thu, 18 Nov 2021 18:12:11 +0000 (12:12 -0600)]
of/fdt: Rework early_init_dt_scan_root() to call directly

Use of the of_scan_flat_dt() function predates libfdt and is discouraged
as libfdt provides a nicer set of APIs. Rework early_init_dt_scan_root()
to be called directly and use libfdt.

Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Link: https://lore.kernel.org/r/20211118181213.1433346-3-robh@kernel.org
2 years agoof/fdt: Rework early_init_dt_scan_chosen() to call directly
Rob Herring [Thu, 18 Nov 2021 18:12:10 +0000 (12:12 -0600)]
of/fdt: Rework early_init_dt_scan_chosen() to call directly

Use of the of_scan_flat_dt() function predates libfdt and is discouraged
as libfdt provides a nicer set of APIs. Rework
early_init_dt_scan_chosen() to be called directly and use libfdt.

Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Frank Rowand <frowand.list@gmail.com>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Link: https://lore.kernel.org/r/20211118181213.1433346-2-robh@kernel.org
2 years agoof: unittest: 64 bit dma address test requires arch support
Frank Rowand [Sun, 12 Dec 2021 22:18:52 +0000 (16:18 -0600)]
of: unittest: 64 bit dma address test requires arch support

If an architecture does not support 64 bit dma addresses then testing
for an expected dma address >= 0x100000000 will fail.

Fixes: e0d072782c73 ("dma-mapping: introduce DMA range map, supplanting dma_pfn_offset")
Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211212221852.233295-1-frowand.list@gmail.com
2 years agoof: unittest: fix warning on PowerPC frame size warning
Jim Quinlan [Fri, 10 Dec 2021 18:46:35 +0000 (13:46 -0500)]
of: unittest: fix warning on PowerPC frame size warning

The struct device variable "dev_bogus" was triggering this warning
on a PowerPC build:

    drivers/of/unittest.c: In function 'of_unittest_dma_ranges_one.constprop':
    [...] >> The frame size of 1424 bytes is larger than 1024 bytes
             [-Wframe-larger-than=]

This variable is now dynamically allocated.

Fixes: e0d072782c734 ("dma-mapping: introduce DMA range map, supplanting dma_pfn_offset")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Jim Quinlan <jim2101024@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211210184636.7273-2-jim2101024@gmail.com
2 years agodt-bindings: input: pwm-vibrator: Convert txt bindings to yaml
David Heidelberg [Wed, 8 Dec 2021 18:34:34 +0000 (19:34 +0100)]
dt-bindings: input: pwm-vibrator: Convert txt bindings to yaml

Converts txt binding to new YAML format and simplify example.

Reviewed-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211208183434.98087-1-david@ixit.cz
2 years agodt-bindings: PCI: designware: Fix 'unevaluatedProperties' warnings
Rob Herring [Mon, 6 Dec 2021 19:44:25 +0000 (13:44 -0600)]
dt-bindings: PCI: designware: Fix 'unevaluatedProperties' warnings

With 'unevaluatedProperties' support implemented, there's a number of
warnings from the Designware PCIe based bindings:

Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dt.yaml: pcie@1ffc000: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'device_type', 'bus-range', 'ranges', '#interrupt-cells', 'interrupt-map-mask', 'interrupt-map' were unexpected)
Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dt.yaml: pcie@1ffc000: Unevaluated properties are not allowed ('clock-names' was unexpected)
Documentation/devicetree/bindings/pci/hisilicon,kirin-pcie.example.dt.yaml: pcie@f4000000: Unevaluated properties are not allowed ('bus-range', '#address-cells', '#size-cells', 'device_type', 'ranges', 'num-lanes', '#interrupt-cells', 'interrupts', 'interrupt-names', 'interrupt-map-mask', 'interrupt-map', 'clocks', 'clock-names' were unexpected)
Documentation/devicetree/bindings/pci/hisilicon,kirin-pcie.example.dt.yaml: pcie@f4000000: Unevaluated properties are not allowed ('clock-names' was unexpected)
Documentation/devicetree/bindings/pci/hisilicon,kirin-pcie.example.dt.yaml: pcie@f5000000: Unevaluated properties are not allowed ('bus-range', '#address-cells', '#size-cells', 'device_type', 'phys', 'ranges', 'num-lanes', '#interrupt-cells', 'interrupts', 'interrupt-names', 'interrupt-map-mask', 'interrupt-map', 'reset-gpios', 'pcie@0,0' were unexpected)
Documentation/devicetree/bindings/pci/hisilicon,kirin-pcie.example.dt.yaml: pcie@f5000000: Unevaluated properties are not allowed ('phys', 'hisilicon,clken-gpios' were unexpected)
Documentation/devicetree/bindings/pci/intel-gw-pcie.example.dt.yaml: pcie@d0e00000: Unevaluated properties are not allowed ('device_type', '#address-cells', '#size-cells', 'linux,pci-domain', 'bus-range', '#interrupt-cells', 'interrupt-map-mask', 'interrupt-map' were unexpected)
Documentation/devicetree/bindings/pci/intel-gw-pcie.example.dt.yaml: pcie@d0e00000: Unevaluated properties are not allowed ('resets', 'phys', 'phy-names', 'reset-assert-ms' were unexpected)
Documentation/devicetree/bindings/pci/rockchip-dw-pcie.example.dt.yaml: pcie@fe280000: Unevaluated properties are not allowed ('clock-names', 'msi-map', 'phys', 'phy-names', 'power-domains', 'resets', 'reset-names' were unexpected)
Documentation/devicetree/bindings/pci/samsung,exynos-pcie.example.dt.yaml: pcie@15700000: Unevaluated properties are not allowed ('#address-cells', '#size-cells', '#interrupt-cells', 'device_type', 'bus-range', 'ranges', 'interrupt-map-mask', 'interrupt-map' were unexpected)
Documentation/devicetree/bindings/pci/samsung,exynos-pcie.example.dt.yaml: pcie@15700000: Unevaluated properties are not allowed ('clock-names', 'phys', 'vdd10-supply', 'vdd18-supply' were unexpected)
Documentation/devicetree/bindings/pci/sifive,fu740-pcie.example.dt.yaml: pcie@e00000000: Unevaluated properties are not allowed ('#address-cells', '#size-cells', '#interrupt-cells', 'device_type', 'dma-coherent', 'bus-range', 'ranges', 'interrupts', 'interrupt-parent', 'interrupt-map-mask', 'interrupt-map', 'clock-names', 'clocks' were unexpected)
Documentation/devicetree/bindings/pci/sifive,fu740-pcie.example.dt.yaml: pcie@e00000000: Unevaluated properties are not allowed ('dma-coherent', 'clock-names', 'resets', 'pwren-gpios' were unexpected)
Documentation/devicetree/bindings/pci/socionext,uniphier-pcie-ep.example.dt.yaml: pcie-ep@66000000: Unevaluated properties are not allowed ('clock-names', 'clocks', 'reset-names', 'resets', 'phy-names', 'phys' were unexpected)
Documentation/devicetree/bindings/pci/toshiba,visconti-pcie.example.dt.yaml: pcie@28400000: Unevaluated properties are not allowed ('clock-names' was unexpected)
Documentation/devicetree/bindings/pci/toshiba,visconti-pcie.example.dt.yaml: pcie@28400000: Unevaluated properties are not allowed ('device_type', 'bus-range', 'num-viewport', '#address-cells', '#size-cells', '#interrupt-cells', 'ranges', 'interrupt-names', 'interrupt-map-mask', 'interrupt-map', 'max-link-speed' were unexpected)

The main problem is that snps,dw-pcie.yaml and snps,dw-pcie-ep.yaml
shouldn't set 'unevaluatedProperties: false'. Otherwise, bindings that
reference them cannot add additional properties. With that addressed,
there's a handful of other undocumented properties to add.

Cc: Xiaowei Song <songxiaowei@hisilicon.com>
Cc: Binghui Wang <wangbinghui@hisilicon.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Greentime Hu <greentime.hu@sifive.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
Cc: linux-pci@vger.kernel.org
Cc: linux-riscv@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211206194426.2470080-1-robh@kernel.org
2 years agodt-bindings: PCI: cdns-ep: Fix 'unevaluatedProperties' warnings
Rob Herring [Mon, 6 Dec 2021 19:44:13 +0000 (13:44 -0600)]
dt-bindings: PCI: cdns-ep: Fix 'unevaluatedProperties' warnings

With 'unevaluatedProperties' support implemented, the TI j721e endpoint
binding example has a warning:

Documentation/devicetree/bindings/pci/ti,j721e-pci-ep.example.dt.yaml: pcie-ep@d000000: Unevaluated properties are not allowed ('max-link-speed', 'num-lanes', 'max-functions' were unexpected)

Adjust where pci-ep.yaml is referenced so that ti,j721e-pci-ep.yaml will
include it.

Cc: Tom Joseph <tjoseph@cadence.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20211206194413.2469643-1-robh@kernel.org
2 years agodt-bindings: PCI: Fix 'unevaluatedProperties' warnings
Rob Herring [Mon, 6 Dec 2021 19:44:05 +0000 (13:44 -0600)]
dt-bindings: PCI: Fix 'unevaluatedProperties' warnings

With 'unevaluatedProperties' support implemented, there's several
warnings due to undocumented properties:

Documentation/devicetree/bindings/pci/mediatek,mt7621-pcie.example.dt.yaml: pcie@1e140000: pcie@0,0: Unevaluated properties are not allowed ('phy-names' was unexpected)
Documentation/devicetree/bindings/pci/mediatek,mt7621-pcie.example.dt.yaml: pcie@1e140000: pcie@1,0: Unevaluated properties are not allowed ('phy-names' was unexpected)
Documentation/devicetree/bindings/pci/mediatek,mt7621-pcie.example.dt.yaml: pcie@1e140000: pcie@2,0: Unevaluated properties are not allowed ('phy-names' was unexpected)
Documentation/devicetree/bindings/pci/mediatek-pcie-gen3.example.dt.yaml: pcie@11230000: Unevaluated properties are not allowed ('phy-names' was unexpected)
Documentation/devicetree/bindings/pci/microchip,pcie-host.example.dt.yaml: pcie@2030000000: Unevaluated properties are not allowed ('interrupt-controller' was unexpected)
Documentation/devicetree/bindings/pci/ti,am65-pci-ep.example.dt.yaml: pcie-ep@5500000: Unevaluated properties are not allowed ('num-ib-windows', 'num-ob-windows' were unexpected)
Documentation/devicetree/bindings/pci/ti,am65-pci-host.example.dt.yaml: pcie@5500000: Unevaluated properties are not allowed ('num-viewport', 'interrupts' were unexpected)
Documentation/devicetree/bindings/pci/ti,j721e-pci-host.example.dt.yaml: pcie@2900000: Unevaluated properties are not allowed ('dma-coherent' was unexpected)

Add the necessary property definitions or remove the properties from the
examples to fix these warnings.

Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Abraham I <kishon@ti.com>
Cc: linux-pci@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Link: https://lore.kernel.org/r/20211206194406.2469361-1-robh@kernel.org
2 years agodt-bindings: memory-controllers: ti,gpmc: Drop incorrect unevaluatedProperties
Rob Herring [Mon, 6 Dec 2021 17:42:15 +0000 (11:42 -0600)]
dt-bindings: memory-controllers: ti,gpmc: Drop incorrect unevaluatedProperties

With 'unevaluatedProperties' support implemented, the TI GPMC example
has a warning:

Documentation/devicetree/bindings/mtd/ti,gpmc-onenand.example.dt.yaml: memory-controller@6e000000: onenand@0,0: Unevaluated properties are not allowed ('compatible', '#address-cells', '#size-cells', 'partition@0', 'partition@100000' were unexpected)

The child node definition for GPMC is not a complete binding, so specifying
'unevaluatedProperties: false' for it is not correct and should be
dropped.

Fixup the unnecessary 'allOf' while we're here.

Cc: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20211206174215.2297796-1-robh@kernel.org
2 years agodt-bindings: usb: Add missing properties used in examples
Rob Herring [Mon, 6 Dec 2021 17:41:12 +0000 (11:41 -0600)]
dt-bindings: usb: Add missing properties used in examples

With 'unevaluatedProperties' support implemented, the following warnings
are generated in the usb examples:

Documentation/devicetree/bindings/usb/intel,keembay-dwc3.example.dt.yaml: usb: usb@34000000: Unevaluated properties are not allowed ('reg' was unexpected)
Documentation/devicetree/bindings/usb/snps,dwc3.example.dt.yaml: usb@4a030000: Unevaluated properties are not allowed ('reg' was unexpected)

Add the missing property definitions.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@intel.com>
Cc: Felipe Balbi <balbi@kernel.org>
Cc: linux-usb@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211206174113.2295616-1-robh@kernel.org
2 years agodt-bindings: watchdog: atmel: Add missing 'interrupts' property
Rob Herring [Mon, 6 Dec 2021 17:40:45 +0000 (11:40 -0600)]
dt-bindings: watchdog: atmel: Add missing 'interrupts' property

With 'unevaluatedProperties' support implemented, the atmel,sama5d4-wdt
example has the following warning:

/home/rob/proj/git/linux-dt/.build-arm64/Documentation/devicetree/bindings/watchdog/atmel,sama5d4-wdt.example.dt.yaml: watchdog@fc068640: Unevaluated properties are not allowed ('interrupts' was unexpected)

Document the missing 'interrupts' property.

Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Ludovic Desroches <ludovic.desroches@microchip.com>
Cc: Eugen Hristev <eugen.hristev@microchip.com>
Cc: linux-watchdog@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/r/20211206174045.2294873-1-robh@kernel.org
2 years agodt-bindings: watchdog: ti,rti-wdt: Fix assigned-clock-parents
Rob Herring [Mon, 6 Dec 2021 17:40:28 +0000 (11:40 -0600)]
dt-bindings: watchdog: ti,rti-wdt: Fix assigned-clock-parents

With 'unevaluatedProperties' support implemented, the ti,rti-wdt example
has the following warning:

/home/rob/proj/git/linux-dt/.build-arm64/Documentation/devicetree/bindings/watchdog/ti,rti-wdt.example.dt.yaml: watchdog@2200000: Unevaluated properties are not allowed ('assigned-clock-parents' was unexpected)

The problem is the schema has a typo in 'assigned-clocks-parents'. As
it is not required to list assigned clocks in bindings, just drop the
property definitions to fix this.

Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Tero Kristo <t-kristo@ti.com>
Cc: linux-watchdog@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20211206174028.2294330-1-robh@kernel.org
2 years agodt-bindings: i2c: aspeed: Drop stray '#interrupt-cells'
Rob Herring [Mon, 6 Dec 2021 17:42:37 +0000 (11:42 -0600)]
dt-bindings: i2c: aspeed: Drop stray '#interrupt-cells'

'#interrupt-cells' is not documented which causes a warning when
'unevaluatedProperties' is implemented. Unless the I2C controller is
also an interrupt controller, '#interrupt-cells' is not valid. This
doesn't appear to be the case from the driver, so just remove it from
the example.

Cc: Brendan Higgins <brendanhiggins@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Andrew Jeffery <andrew@aj.id.au>
Cc: Rayn Chen <rayn_chen@aspeedtech.com>
Cc: linux-i2c@vger.kernel.org
Cc: openbmc@lists.ozlabs.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-aspeed@lists.ozlabs.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211206174237.2298580-1-robh@kernel.org
2 years agodt-bindings: perf: Add compatible for Arm DSU-110
Robin Murphy [Tue, 14 Dec 2021 14:16:17 +0000 (14:16 +0000)]
dt-bindings: perf: Add compatible for Arm DSU-110

DSU-110 is the newest and shiniest for Armv9. Its programmer's model is
largely identical to the previous generation of DSUs, so we can treat it
as compatible, but it does have a a handful of extra IMP-DEF PMU events
to call its own. Thanks to the new notion of core complexes, the maximum
number of supported CPUs goes up as well.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/51a8060493e1220886dcd468fad9a2b603607297.1639490264.git.robin.murphy@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: perf: Convert Arm DSU to schema
Robin Murphy [Tue, 14 Dec 2021 14:16:16 +0000 (14:16 +0000)]
dt-bindings: perf: Convert Arm DSU to schema

Convert the DSU binding to schema, as one does.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/9fde2e11b0d11285c26d0e9d261034a1628c7901.1639490264.git.robin.murphy@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: gpu: mali-bifrost: Document RZ/G2L support
Biju Das [Wed, 8 Dec 2021 10:40:24 +0000 (10:40 +0000)]
dt-bindings: gpu: mali-bifrost: Document RZ/G2L support

The Renesas RZ/G2{L, LC} SoC (a.k.a R9A07G044) has a Bifrost Mali-G31 GPU,
add a compatible string for it.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Link: https://lore.kernel.org/r/20211208104026.421-2-biju.das.jz@bp.renesas.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: thermal: Convert Broadcom TMON to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:22 +0000 (16:37 -0800)]
dt-bindings: thermal: Convert Broadcom TMON to YAML

Convert the Broadcom AVS TMON Device Tree binding to YAML to help with
validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-12-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: rng: Convert iProc RNG200 to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:21 +0000 (16:37 -0800)]
dt-bindings: rng: Convert iProc RNG200 to YAML

Convert the Broadcom iProc RNG200 HWRNG Device Tree binding to YAML to
help with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-11-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: interrupt-controller: Convert Broadcom STB L2 to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:20 +0000 (16:37 -0800)]
dt-bindings: interrupt-controller: Convert Broadcom STB L2 to YAML

Convert the Broadcom STB L2 generic Level 2 interrupt controller Device
Tree binding to YAML to help with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-10-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-binding: interrupt-controller: Convert BCM7038 L1 intc to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:17 +0000 (16:37 -0800)]
dt-binding: interrupt-controller: Convert BCM7038 L1 intc to YAML

Convert the Broadcom STB BCM7038 Level 1 interrupt controller Device
Tree binding to YAML to help with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-7-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: gpio: Convert Broadcom STB GPIO to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:16 +0000 (16:37 -0800)]
dt-bindings: gpio: Convert Broadcom STB GPIO to YAML

Convert the Broadcom STB GPIO Device Tree binding to YAML to help with
validation.

Acked-by: Gregory Fong <gregory.0xf0@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Bartosz Golaszewski <brgl@bgdev.pl>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20211208003727.3596577-6-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: rtc: Convert Broadcom STB waketimer to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:15 +0000 (16:37 -0800)]
dt-bindings: rtc: Convert Broadcom STB waketimer to YAML

Convert the Broadcom STB waketimer Device Tree binding to YAML to help
with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-5-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: pwm: Convert BCM7038 PWM binding to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:14 +0000 (16:37 -0800)]
dt-bindings: pwm: Convert BCM7038 PWM binding to YAML

Convert the Broadcom STB BCM7038 PWM Device Tree binding to YAML to help
with validation.

Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208003727.3596577-4-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: reset: Convert Broadcom STB reset to YAML
Florian Fainelli [Wed, 8 Dec 2021 00:37:13 +0000 (16:37 -0800)]
dt-bindings: reset: Convert Broadcom STB reset to YAML

Convert the Broadcom STB SW_INIT style reset controller binding to YAML.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Link: https://lore.kernel.org/r/20211208003727.3596577-3-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: pci: Convert iProc PCIe to YAML
Florian Fainelli [Tue, 14 Dec 2021 03:58:20 +0000 (19:58 -0800)]
dt-bindings: pci: Convert iProc PCIe to YAML

Conver the iProc PCIe controller Device Tree binding to YAML now that
all DTS in arch/arm and arch/arm64 have been fixed to be compliant.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211214035820.2984289-7-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: phy: Convert Cygnus PCIe PHY to YAML
Florian Fainelli [Tue, 14 Dec 2021 03:58:19 +0000 (19:58 -0800)]
dt-bindings: phy: Convert Cygnus PCIe PHY to YAML

Convert the Broadcom Cygnus PCIe PHY Device Tree binding t YAML to help
with validation.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211214035820.2984289-6-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: i2c: tegra-bpmp: Convert to json-schema
Thierry Reding [Wed, 8 Dec 2021 14:33:06 +0000 (15:33 +0100)]
dt-bindings: i2c: tegra-bpmp: Convert to json-schema

Convert the NVIDIA Tegra186 (and later) BPMP I2C bindings from the
free-form text format to json-schema.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211208143306.534700-1-thierry.reding@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: arm: pmu: Document Denver and Carmel PMUs
Thierry Reding [Tue, 7 Dec 2021 15:07:44 +0000 (16:07 +0100)]
dt-bindings: arm: pmu: Document Denver and Carmel PMUs

Add compatible strings for the NVIDIA Denver and Carmel PMUs.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/r/20211207150746.444478-1-thierry.reding@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: arm: Catch up with Cortex/Neoverse CPUs again
Robin Murphy [Tue, 7 Dec 2021 18:20:39 +0000 (18:20 +0000)]
dt-bindings: arm: Catch up with Cortex/Neoverse CPUs again

Add bindings for the 2020 and 2021 cohorts of Cortex-A and Neoverse
CPUs, now featuring their Cortex-X cousins as well.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/a36014d06d308c73d3fa1ed55e8967fb8adadf0d.1638900542.git.robin.murphy@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: net: Convert SYSTEMPORT to YAML
Florian Fainelli [Wed, 8 Dec 2021 20:28:01 +0000 (12:28 -0800)]
dt-bindings: net: Convert SYSTEMPORT to YAML

Convert the Broadcom SYSTEMPORT Ethernet controller Device Tree binding
to YAML.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208202801.3706929-3-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: net: Convert AMAC to YAML
Florian Fainelli [Wed, 8 Dec 2021 20:28:00 +0000 (12:28 -0800)]
dt-bindings: net: Convert AMAC to YAML

Convert the Broadcom AMAC Device Tree binding to YAML to help with
schema and dtbs checking.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211208202801.3706929-2-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agoRevert "kbuild: Enable DT schema checks for %.dtb targets"
Rob Herring [Wed, 8 Dec 2021 21:39:16 +0000 (15:39 -0600)]
Revert "kbuild: Enable DT schema checks for %.dtb targets"

This reverts commit 53182e81f47d4ea0c727c49ad23cb782173ab849.

This added tool dependencies on various build systems using %.dtb
targets. Validation will need to be controlled by a kconfig or make
variable instead, but for now let's just revert it.

Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: net: Convert iProc MDIO mux to YAML
Florian Fainelli [Mon, 6 Dec 2021 18:00:49 +0000 (10:00 -0800)]
dt-bindings: net: Convert iProc MDIO mux to YAML

Conver the Broadcom iProc MDIO mux Device Tree binding to YAML.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211206180049.2086907-9-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: phy: Convert Northstar 2 PCIe PHY to YAML
Florian Fainelli [Mon, 6 Dec 2021 18:00:48 +0000 (10:00 -0800)]
dt-bindings: phy: Convert Northstar 2 PCIe PHY to YAML

Convert the Broadcom Northstar 2 PCIe PHY Device Tree binding to YAML
and rename it accordingly in the process since it had nothing to do with
a MDIO mux on the PCI(e) bus. This is a pre-requisite to updating
another binding file to YAML.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211206180049.2086907-8-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
2 years agodt-bindings: net: Convert GENET binding to YAML
Florian Fainelli [Mon, 6 Dec 2021 18:00:45 +0000 (10:00 -0800)]
dt-bindings: net: Convert GENET binding to YAML

Convert the GENET binding to YAML, leveraging brcm,unimac-mdio.yaml and
the standard ethernet-controller.yaml files.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20211206180049.2086907-5-f.fainelli@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>