platform/kernel/linux-starfive.git
3 years agodt-bindings: fpga: zynq: convert bindings to YAML
Nobuhiro Iwamatsu [Sun, 13 Jun 2021 21:28:56 +0000 (06:28 +0900)]
dt-bindings: fpga: zynq: convert bindings to YAML

Convert FPGA for Xilinx Zynq SoC bindings documentation to YAML.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Link: https://lore.kernel.org/r/20210613212856.296153-1-iwamatsu@nigauri.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: rtc: zynqmp: convert bindings to YAML
Nobuhiro Iwamatsu [Sun, 13 Jun 2021 20:50:22 +0000 (05:50 +0900)]
dt-bindings: rtc: zynqmp: convert bindings to YAML

Convert Real Time Clock for Xilinx Zynq MPSoC SoC bindings documentation
to YAML schemas.
And this renamed the file to compatible string of DT.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Link: https://lore.kernel.org/r/20210613205022.292575-1-iwamatsu@nigauri.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: interrupt-controller: Convert ARM VIC to json-schema
Sudeep Holla [Thu, 17 Jun 2021 20:53:17 +0000 (21:53 +0100)]
dt-bindings: interrupt-controller: Convert ARM VIC to json-schema

Convert the ARM VIC binding document to DT schema format using
json-schema.

Cc: Rob Herring <robh@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210617205317.3060163-1-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoof: of_reserved_mem: mark nomap memory instead of removing
Dong Aisheng [Fri, 11 Jun 2021 13:11:53 +0000 (21:11 +0800)]
of: of_reserved_mem: mark nomap memory instead of removing

Since commit 86588296acbf ("fdt: Properly handle "no-map" field in the memory region"),
nomap memory is changed to call memblock_mark_nomap() instead of
memblock_remove(). But it only changed the reserved memory with fixed
addr and size case in early_init_dt_reserve_memory_arch(), not
including the dynamical allocation by size case in
early_init_dt_alloc_reserved_memory_arch().

Cc: Rob Herring <robh+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Reviewed-by: Quentin Perret <qperret@google.com>
Link: https://lore.kernel.org/r/20210611131153.3731147-2-aisheng.dong@nxp.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoof: of_reserved_mem: only call memblock_free for normal reserved memory
Dong Aisheng [Fri, 11 Jun 2021 13:11:52 +0000 (21:11 +0800)]
of: of_reserved_mem: only call memblock_free for normal reserved memory

For nomap case, the memory block will be removed by memblock_remove()
in early_init_dt_alloc_reserved_memory_arch(). So it's meaningless to
call memblock_free() on error path.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Link: https://lore.kernel.org/r/20210611131153.3731147-1-aisheng.dong@nxp.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: Drop redundant minItems/maxItems
Rob Herring [Tue, 15 Jun 2021 19:15:43 +0000 (13:15 -0600)]
dt-bindings: Drop redundant minItems/maxItems

If a property has an 'items' list, then a 'minItems' or 'maxItems' with the
same size as the list is redundant and can be dropped. Note that is DT
schema specific behavior and not standard json-schema behavior. The tooling
will fixup the final schema adding any unspecified minItems/maxItems.

This condition is partially checked with the meta-schema already, but
only if both 'minItems' and 'maxItems' are equal to the 'items' length.
An improved meta-schema is pending.

Cc: Jens Axboe <axboe@kernel.dk>
Cc: Stephen Boyd <sboyd@kernel.org>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: David Airlie <airlied@linux.ie>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Cc: Kamal Dasu <kdasu.kdev@gmail.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Vivien Didelot <vivien.didelot@gmail.com>
Cc: Vladimir Oltean <olteanv@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Ohad Ben-Cohen <ohad@wizery.com>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org> # for MMC
Acked-by: Jassi Brar <jassisinghbrar@gmail.com>
Acked-By: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Acked-by: Mark Brown <broonie@kernel.org>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Wolfram Sang <wsa@kernel.org> # for I2C
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/20210615191543.1043414-1-robh@kernel.org
3 years agodt-bindings: spmi: Correct 'reg' schema
Rob Herring [Tue, 15 Jun 2021 17:20:24 +0000 (11:20 -0600)]
dt-bindings: spmi: Correct 'reg' schema

'reg' is defined to be N address entries of M cells each. For SPMI, N is 1
and M is 1 or 2. The schema fails to define the number of entries as it
only specifies the inner cell(s). To fix, add an outer items list with 1
entry.

Cc: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210615172024.856360-1-robh@kernel.org
3 years agoof: reserved-memory: Add stub for RESERVEDMEM_OF_DECLARE()
Dmitry Osipenko [Thu, 10 Jun 2021 16:23:13 +0000 (19:23 +0300)]
of: reserved-memory: Add stub for RESERVEDMEM_OF_DECLARE()

The reserved-memory Kconfig could be disabled when drivers are
compile-tested. In this case RESERVEDMEM_OF_DECLARE() produces a
noisy warning about the orphaned __reservedmem_of_table section.
Add the missing stub that fixes the warning. In particular this is
needed for compile-testing of NVIDIA Tegra210 memory driver which
uses reserved-memory.

Reported-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210610162313.20942-1-digetx@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: clk: vc5: Fix example
Sean Anderson [Mon, 7 Jun 2021 19:05:46 +0000 (15:05 -0400)]
dt-bindings: clk: vc5: Fix example

The example properties do not match the binding. Fix them, and prohibit
undocumented properties in clock nodes to prevent this from happening in
the future.

Fixes: 45c940184b50 ("dt-bindings: clk: versaclock5: convert to yaml")
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
Link: https://lore.kernel.org/r/20210607190546.2616259-1-sean.anderson@seco.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: timer: renesas,tmu: add r8a779a0 TMU support
Wolfram Sang [Mon, 7 Jun 2021 12:48:28 +0000 (14:48 +0200)]
dt-bindings: timer: renesas,tmu: add r8a779a0 TMU support

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20210607124828.1984-1-wsa+renesas@sang-engineering.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: drm: bridge: adi,adv7511.txt: convert to yaml
Ricardo Cañuelo [Tue, 15 Jun 2021 13:13:33 +0000 (15:13 +0200)]
dt-bindings: drm: bridge: adi,adv7511.txt: convert to yaml

Convert the ADV7511/11w/13/33/35 DT bindings to json-schema. The
original binding has been split into two files: adi,adv7511.yaml for
ADV7511/11W/13 and adi,adv7533.yaml for ADV7533/35.

Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@collabora.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210615131333.2272473-4-ricardo.canuelo@collabora.com
3 years agodt-bindings: PCI: ti,am65: Convert PCIe host/endpoint mode dt-bindings to YAML
Kishon Vijay Abraham I [Thu, 3 Jun 2021 13:34:50 +0000 (19:04 +0530)]
dt-bindings: PCI: ti,am65: Convert PCIe host/endpoint mode dt-bindings to YAML

Convert PCIe host/endpoint mode dt-bindings for TI's AM65/Keystone SoC
to YAML binding.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Link: https://lore.kernel.org/r/20210603133450.24710-1-kishon@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoof: Remove superfluous casts when printing u64 values
Geert Uytterhoeven [Wed, 16 Jun 2021 09:27:45 +0000 (11:27 +0200)]
of: Remove superfluous casts when printing u64 values

"u64" is "unsigned long long" on all architectures now.  Hence there is
no longer a need to use casts when formatting using the "ll" length
modifier.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/ef3f4f78385b43230695ba0855d078290c958192.1623835273.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoof: Fix truncation of memory sizes on 32-bit platforms
Geert Uytterhoeven [Wed, 16 Jun 2021 09:27:44 +0000 (11:27 +0200)]
of: Fix truncation of memory sizes on 32-bit platforms

Variable "size" has type "phys_addr_t", which can be either 32-bit or
64-bit on 32-bit systems, while "unsigned long" is always 32-bit on
32-bit systems.  Hence the cast in

    (unsigned long)size / SZ_1M

may truncate a 64-bit size to 32-bit, as casts have a higher operator
precedence than divisions.

Fix this by inverting the order of the cast and division, which should
be safe for memory blocks smaller than 4 PiB.  Note that the division is
actually a shift, as SZ_1M is a power-of-two constant, hence there is no
need to use div_u64().

While at it, use "%lu" to format "unsigned long".

Fixes: e8d9d1f5485b52ec ("drivers: of: add initialization code for static reserved memory")
Fixes: 3f0c8206644836e4 ("drivers: of: add initialization code for dynamic reserved memory")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/4a1117e72d13d26126f57be034c20dac02f1e915.1623835273.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: rtc: nxp,pcf8563: Absorb pcf85263/pcf85363 bindings
Geert Uytterhoeven [Fri, 11 Jun 2021 13:01:45 +0000 (15:01 +0200)]
dt-bindings: rtc: nxp,pcf8563: Absorb pcf85263/pcf85363 bindings

The NXP PCF85263/PCF85363 Real Time Clock is very similar to the NXP
PCF8563.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/e4f48d97f0e16d78a796f02b77ea3a0018904185.1623416431.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: pwm: Use examples with documented/matching schema
Sudeep Holla [Tue, 8 Jun 2021 21:58:34 +0000 (22:58 +0100)]
dt-bindings: pwm: Use examples with documented/matching schema

'nvidia,tegra20-pwm' is not yet documented in the YAML schema. Use
'allwinner,sun7i-a20-pwm' instead to get rid of the following warning
with 'make DT_CHECKER_FLAGS=-m dt_binding_check':

pwm/pwm.example.dt.yaml:0:0: /example-0/pwm@7000a000: failed to match
any schema with compatible: ['nvidia,tegra20-pwm']

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210608215834.2236920-1-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: interrupt-controller: Fix compatible used in ti,pruss-intc
Sudeep Holla [Mon, 7 Jun 2021 18:42:57 +0000 (19:42 +0100)]
dt-bindings: interrupt-controller: Fix compatible used in ti,pruss-intc

As per soc/ti/ti,pruss.yaml schema, only ti,am4376-pruss0 and
ti,am4376-pruss1 are valid compatibles. Replace ti,am4376-pruss with
ti,am4376-pruss1 based on example in soc/ti/ti,pruss.yaml

This fixes the below warning with 'make DT_CHECKER_FLAGS=-m dt_binding_check':

    interrupt-controller/ti,pruss-intc.example.dt.yaml:0:0: /example-1/pruss@0:
    failed to match any schema with compatible: ['ti,am4376-pruss']

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Suman Anna <s-anna@ti.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Suman Anna <s-anna@ti.com>
Link: https://lore.kernel.org/r/20210607184257.2010276-1-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: aspeed-i2c: Convert txt to yaml format
Jamin Lin [Thu, 3 Jun 2021 02:48:19 +0000 (10:48 +0800)]
dt-bindings: aspeed-i2c: Convert txt to yaml format

Convert aspeed i2c to yaml.

Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/r/20210603024839.27976-2-jamin_lin@aspeedtech.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: watchdog: Convert arm,sbsa-gwdt to DT schema
Rob Herring [Mon, 7 Jun 2021 19:40:22 +0000 (14:40 -0500)]
dt-bindings: watchdog: Convert arm,sbsa-gwdt to DT schema

Convert the arm,sbsa-gwdt binding to DT schema format.

Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Fu Wei <fu.wei@linaro.org>
Cc: linux-watchdog@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20210607194022.3095736-1-robh@kernel.org
3 years agodt-bindings: mtd: Convert mtd-physmap to DT schema
Rob Herring [Mon, 7 Jun 2021 19:35:00 +0000 (14:35 -0500)]
dt-bindings: mtd: Convert mtd-physmap to DT schema

Convert the mtd-physmap binding to DT schema format. The arm-versatile,
cypress,hyperflash and intel,ixp4xx-flash are all just an additional
compatible string, so they are all merged into the main schema.

There doesn't appear to be any users nor support for 'vendor-id' and
'device-id', so these have been dropped.

Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Richard Weinberger <richard@nod.at>
Cc: Vignesh Raghavendra <vigneshr@ti.com>
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/r/20210607193500.3085920-1-robh@kernel.org
3 years agodt-bindings: virtio: Convert virtio-mmio to DT schema
Rob Herring [Mon, 7 Jun 2021 14:48:11 +0000 (09:48 -0500)]
dt-bindings: virtio: Convert virtio-mmio to DT schema

Convert the virtio-mmio binding to DT schema format.

Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Jean-Philippe Brucker <jean-philippe@linaro.org>
Cc: virtualization@lists.linux-foundation.org
Acked-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210607193928.3092186-1-robh@kernel.org/
3 years agodt-bindings: rtc: Add Arm PL031 schema
Rob Herring [Mon, 7 Jun 2021 13:49:17 +0000 (08:49 -0500)]
dt-bindings: rtc: Add Arm PL031 schema

The PL031 RTC binding has been in use for a long time, but never got
documented. Fortunately, it's simple and existing users are consistent.

Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: linux-rtc@vger.kernel.org
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210607193718.3090202-1-robh@kernel.org/
3 years agoof: unittest: Use DEFINE_RES_MEM() to simplify code
Zhen Lei [Tue, 1 Jun 2021 06:22:23 +0000 (14:22 +0800)]
of: unittest: Use DEFINE_RES_MEM() to simplify code

No functional change.

Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Link: https://lore.kernel.org/r/20210601062223.9724-1-thunder.leizhen@huawei.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: usb: cdns,usb3: Fix interrupts order
Geert Uytterhoeven [Thu, 27 May 2021 19:39:52 +0000 (21:39 +0200)]
dt-bindings: usb: cdns,usb3: Fix interrupts order

Correct the order of the descriptions for the "interrupts" property to
match the order of the "interrupt-names" property.

Fixes: 68989fe1c39d9b32 ("dt-bindings: usb: Convert cdns-usb3.txt to YAML schema")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Peter Chen <peter.chen@kernel.org>
Acked-by: Peter Chen <peter.chen@nxp.com>
Link: https://lore.kernel.org/r/20210527193952.1705127-1-geert@linux-m68k.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: hisilicon: use the correct HiSilicon copyright
Hao Fang [Sat, 22 May 2021 10:23:17 +0000 (18:23 +0800)]
dt-bindings: hisilicon: use the correct HiSilicon copyright

s/Hisilicon/HiSilicon/.
It should use capital S, according to the official website
https://www.hisilicon.com/en.

Signed-off-by: Hao Fang <fanghao11@huawei.com>
Link: https://lore.kernel.org/r/1621678997-15240-1-git-send-email-fanghao11@huawei.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: mailbox : arm,mhuv2: Use example with matching schema
Sudeep Holla [Fri, 4 Jun 2021 20:57:10 +0000 (21:57 +0100)]
dt-bindings: mailbox : arm,mhuv2: Use example with matching schema

Currently the example provided in arm,mhuv2 schema complains as below:

    Documentation/devicetree/bindings/mailbox/arm,mhuv2.example.dt.yaml :0:0:
    /example-0/soc/scb@2e000000: failed to match any schema with compatible:
    ['fujitsu,mb86s70-scb-1.0']

Fix it by using an example with a matching schema that makes use of 4
mailboxes that is well suited to demonstrate Rx and Tx channels with both
doorbell and data transfer protocols.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-7-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: mailbox : arm,mhu: Use examples with matching schema
Sudeep Holla [Fri, 4 Jun 2021 20:57:09 +0000 (21:57 +0100)]
dt-bindings: mailbox : arm,mhu: Use examples with matching schema

Currently the example provided in arm,mhu schema complains as below:

    Documentation/devicetree/bindings/mailbox/arm,mhu.example.dt.yaml :0:0:
    /example-0/soc/scb@2e000000: failed to match any schema with compatible:
    ['fujitsu,mb86s70-scb-1.0']

Fix the same using examples based on Juno platform. The old SCPI firmware
used MHU with standard 32-bit data transfer protocol while the new SCMI
firmware uses MHU and expects to be used in doorbell mode. Update example
with SCPI and SCMI firmware nodes to demonstrate both 32-bit data transfer
and doorbell mode of MHU operations

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-6-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: arm,scmi: Convert to json schema
Sudeep Holla [Fri, 4 Jun 2021 20:57:08 +0000 (21:57 +0100)]
dt-bindings: firmware: arm,scmi: Convert to json schema

Convert the old text format binding for System Control and Management Interface
(SCMI) Message Protocol into the new and shiny YAML format.

Cc: Cristian Marussi <cristian.marussi@arm.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Etienne Carriere <etienne.carriere@linaro.org>
Cc: Peter Hilber <peter.hilber@opensynergy.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-5-sudeep.holla@arm.com
[robh: Rework interrupts schema and if/then]
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: amlogic,scpi: Convert to json schema
Sudeep Holla [Fri, 4 Jun 2021 20:57:07 +0000 (21:57 +0100)]
dt-bindings: firmware: amlogic,scpi: Convert to json schema

Convert/merge the existing text format SCPI binding additions for
amlogic,scpi into the common arm,scpi json scheme.

Couple of things to note:
"amlogic,meson-gxbb-scpi" is always used with "arm,scpi-pre-1.0" and
"amlogic,meson-gxbb-scpi-sensors" is used always with "arm,scpi-sensors"

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-4-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: arm,scpi: Convert to json schema
Sudeep Holla [Fri, 4 Jun 2021 20:57:06 +0000 (21:57 +0100)]
dt-bindings: firmware: arm,scpi: Convert to json schema

Convert the old text format binding for System Control and Power Interface
(SCPI) Message Protocol into the new and shiny YAML format.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-3-sudeep.holla@arm.com
[robh: Move fixed strings to 'properties', drop some literal block notations]
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: mailbox : arm,mhu: Fix arm,scpi example used here
Sudeep Holla [Fri, 4 Jun 2021 20:57:05 +0000 (21:57 +0100)]
dt-bindings: mailbox : arm,mhu: Fix arm,scpi example used here

Once the arm,scpi binding is converted to YAML format, the following
errors will be seen when doing `make DT_CHECKER_FLAGS=-m dt_binding_check`

From schema: Documentation/devicetree/bindings/firmware/arm,scpi.yaml
Documentation/devicetree/bindings/mailbox/arm,mhu.example.dt.yaml:
scpi@2f000000: $nodename:0: 'scpi' was expected
Documentation/devicetree/bindings/mailbox/arm,mhu.example.dt.yaml:
scpi@2f000000: reg: [[0, 788529152, 0, 512]] is not of type 'object'
Documentation/devicetree/bindings/mailbox/arm,mhu.example.dt.yaml:
scpi@2f000000: 'shmem' is a required property

Fix those error following the SCPI bindings.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210604205710.1944363-2-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoof: Merge of_address_to_resource() and of_pci_address_to_resource() implementations
Rob Herring [Thu, 27 May 2021 19:45:47 +0000 (14:45 -0500)]
of: Merge of_address_to_resource() and of_pci_address_to_resource() implementations

of_address_to_resource() and of_pci_address_to_resource() are almost the
same except the former takes an index and the latter takes a BAR number.
Now that __of_get_address() can take either one, refactor the functions
to use a common implementation.

Cc: Frank Rowand <frowand.list@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210527194547.1287934-5-robh@kernel.org
3 years agoof: address: Use IS_ENABLED() for !CONFIG_PCI
Rob Herring [Thu, 27 May 2021 19:45:46 +0000 (14:45 -0500)]
of: address: Use IS_ENABLED() for !CONFIG_PCI

Convert address.c to use IS_ENABLED() instead of ifdefs for the
public PCI functions. This simplifies the ifdefs in of_address.h.

Cc: Frank Rowand <frowand.list@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210527194547.1287934-4-robh@kernel.org
3 years agoof: Merge of_get_address() and of_get_pci_address() implementations
Rob Herring [Thu, 27 May 2021 19:45:45 +0000 (14:45 -0500)]
of: Merge of_get_address() and of_get_pci_address() implementations

of_get_address() and of_get_pci_address() are the same implementation
except of_get_pci_address() takes the PCI BAR number rather than an
index. Modify the of_get_address() implementation to work on either
index or BAR and provide wrapper functions for the existing functions.

Cc: Frank Rowand <frowand.list@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210527194547.1287934-3-robh@kernel.org
3 years agoPCI: Add empty stub for pci_register_io_range()
Rob Herring [Thu, 27 May 2021 19:45:44 +0000 (14:45 -0500)]
PCI: Add empty stub for pci_register_io_range()

Add an empty stub for pci_register_io_range() when !CONFIG_PCI. It's needed
to convert of_pci_range_to_resource() to use IS_ENABLED(CONFIG_PCI).

Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://lore.kernel.org/r/20210527194547.1287934-2-robh@kernel.org
3 years agoof: Move reserved memory private function declarations
Rob Herring [Thu, 27 May 2021 19:38:41 +0000 (14:38 -0500)]
of: Move reserved memory private function declarations

fdt_init_reserved_mem() and fdt_reserved_mem_save_node() are private to
the DT code, so move there declarations to of_private.h. There's no need
for the dummy functions as CONFIG_OF_RESERVED_MEM is always enabled for
CONFIG_OF_EARLY_FLATTREE.

Cc: Frank Rowand <frowand.list@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210527193841.1284169-1-robh@kernel.org
3 years agoof: Drop reserved mem dependency on DMA_DECLARE_COHERENT and DMA_CMA
Rob Herring [Thu, 27 May 2021 22:32:17 +0000 (17:32 -0500)]
of: Drop reserved mem dependency on DMA_DECLARE_COHERENT and DMA_CMA

Reserved memory regions can be used for more than just DMA regions, so
only enabling on DMA_DECLARE_COHERENT (via HAS_DMA) or DMA_CMA is wrong.
This effectively doesn't matter except for the few cases arches select
NO_DMA.

At least, these users of RESERVEDMEM_OF_DECLARE depend on reserved memory
support:

arch/riscv/mm/init.c:RESERVEDMEM_OF_DECLARE(elfcorehdr, "linux,elfcorehdr", elfcore_hdr_setup);
drivers/memory/tegra/tegra210-emc-table.c:RESERVEDMEM_OF_DECLARE(tegra210_emc_table, "nvidia,tegra210-emc-table",
drivers/soc/fsl/qbman/bman_ccsr.c:RESERVEDMEM_OF_DECLARE(bman_fbpr, "fsl,bman-fbpr", bman_fbpr);
drivers/soc/fsl/qbman/qman_ccsr.c:RESERVEDMEM_OF_DECLARE(qman_fqd, "fsl,qman-fqd", qman_fqd);
drivers/soc/fsl/qbman/qman_ccsr.c:RESERVEDMEM_OF_DECLARE(qman_pfdr, "fsl,qman-pfdr", qman_pfdr);

Let's simplify things and enable OF_RESERVED_MEM when OF_EARLY_FLATTREE is
enabled.

Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210527223217.1572631-1-robh@kernel.org
3 years agodt-bindings: reset: update ti,sci-reset.yaml references
Mauro Carvalho Chehab [Wed, 2 Jun 2021 15:43:11 +0000 (17:43 +0200)]
dt-bindings: reset: update ti,sci-reset.yaml references

Changeset 9a81b8cbc245 ("dt-bindings: reset: Convert ti,sci-reset to json schema")
renamed: Documentation/devicetree/bindings/reset/ti,sci-reset.txt
to: Documentation/devicetree/bindings/reset/ti,sci-reset.yaml.

Update the cross-references accordingly.

Fixes: 9a81b8cbc245 ("dt-bindings: reset: Convert ti,sci-reset to json schema")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/e9b505d900d898c0d030deb168ab291206c203ee.1622648507.git.mchehab+huawei@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: clock: update ti,sci-clk.yaml references
Mauro Carvalho Chehab [Wed, 2 Jun 2021 15:43:10 +0000 (17:43 +0200)]
dt-bindings: clock: update ti,sci-clk.yaml references

Changeset a7dbfa6f3877 ("dt-bindings: clock: Convert ti,sci-clk to json schema")
renamed: Documentation/devicetree/bindings/clock/ti,sci-clk.txt
to: Documentation/devicetree/bindings/clock/ti,sci-clk.yaml.

Update the cross-references accordingly.

Fixes: a7dbfa6f3877 ("dt-bindings: clock: Convert ti,sci-clk to json schema")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/0fae687366c09dfb510425b3c88316a727b27d6d.1622648507.git.mchehab+huawei@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: soc: ti: update sci-pm-domain.yaml references
Mauro Carvalho Chehab [Wed, 2 Jun 2021 15:43:09 +0000 (17:43 +0200)]
dt-bindings: soc: ti: update sci-pm-domain.yaml references

Changeset fda55c7256fe ("dt-bindings: soc: ti: Convert ti,sci-pm-domain to json schema")
renamed: Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
to: Documentation/devicetree/bindings/soc/ti/sci-pm-domain.yaml.

Update the cross-references accordingly.

Fixes: fda55c7256fe ("dt-bindings: soc: ti: Convert ti,sci-pm-domain to json schema")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/c03020ff281054c3bd2527c510659e05fec6f181.1622648507.git.mchehab+huawei@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: power: supply: cpcap-charger: update cpcap-charger.yaml reference
Mauro Carvalho Chehab [Wed, 2 Jun 2021 15:43:08 +0000 (17:43 +0200)]
dt-bindings: power: supply: cpcap-charger: update cpcap-charger.yaml reference

Changeset ce49e4282200 ("dt-bindings: power: supply: cpcap-charger: Convert to DT schema format")
renamed: Documentation/devicetree/bindings/power/supply/cpcap-charger.txt
to: Documentation/devicetree/bindings/power/supply/cpcap-charger.yaml.

Update its cross-reference accordingly.

Fixes: ce49e4282200 ("dt-bindings: power: supply: cpcap-charger: Convert to DT schema format")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/e9ce216362b7b9dcf84d707a3854247123440bf7.1622648507.git.mchehab+huawei@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: power: supply: cpcap-battery: update cpcap-battery.yaml reference
Mauro Carvalho Chehab [Wed, 2 Jun 2021 15:43:07 +0000 (17:43 +0200)]
dt-bindings: power: supply: cpcap-battery: update cpcap-battery.yaml reference

Changeset 3c5be0454972 ("dt-bindings: power: supply: cpcap-battery: Convert to DT schema format")
renamed: Documentation/devicetree/bindings/power/supply/cpcap-battery.txt
to: Documentation/devicetree/bindings/power/supply/cpcap-battery.yaml.

Update its cross-reference accordingly.

Fixes: 3c5be0454972 ("dt-bindings: power: supply: cpcap-battery: Convert to DT schema format")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/1d0c8d50db22d9e5540a42be874fcd39fb7fc2a7.1622648507.git.mchehab+huawei@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: amlogic,scpi: Move arm,scpi-shmem to json schema
Sudeep Holla [Tue, 1 Jun 2021 22:49:00 +0000 (23:49 +0100)]
dt-bindings: firmware: amlogic,scpi: Move arm,scpi-shmem to json schema

"amlogic,meson-gxbb-scp-shmem" is already in the Generic on-chip SRAM
binding though "amlogic,meson-gxbb-scpi" is missing which is now added.
Also remove the whole old text format binding for the same.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210601224904.917990-5-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: juno,scpi: Move to sram.yaml json schema
Sudeep Holla [Tue, 1 Jun 2021 22:48:59 +0000 (23:48 +0100)]
dt-bindings: firmware: juno,scpi: Move to sram.yaml json schema

Commit a90b15e0ad72 ("Documentation: bindings: decouple juno specific
details from generic binding") moved the juno specific bindings into
separate file. Though there was no need for juno specific binding, it
has been used unfortunately for whatever stupid reason I added it for.

Let us move the same to the generic sram.yaml schema and remove the
old text format binding.

Cc: Rob Herring <robh+dt@kernel.org>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210601224904.917990-4-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: arm,scmi: Move arm,scmi-shmem to json schema
Sudeep Holla [Tue, 1 Jun 2021 22:48:58 +0000 (23:48 +0100)]
dt-bindings: firmware: arm,scmi: Move arm,scmi-shmem to json schema

Move the SRAM and shared memory binding for SCMI into the existing
Generic on-chip SRAM. We just need to update the compatible list and
there-by remove the whole old text format binding for the same.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Cristian Marussi <cristian.marussi@arm.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210601224904.917990-3-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: firmware: arm,scpi: Move arm,scp-shmem to json schema
Sudeep Holla [Tue, 1 Jun 2021 22:48:57 +0000 (23:48 +0100)]
dt-bindings: firmware: arm,scpi: Move arm,scp-shmem to json schema

Move the SRAM and shared memory binding for SCPI into the existing
Generic on-chip SRAM. We just need to update the compatible list and
there-by remove the whole old text format binding for the same.

Cc: Rob Herring <robh+dt@kernel.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20210601224904.917990-2-sudeep.holla@arm.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: mailbox: Convert omap-mailbox.txt binding to YAML
Suman Anna [Thu, 20 May 2021 23:43:48 +0000 (18:43 -0500)]
dt-bindings: mailbox: Convert omap-mailbox.txt binding to YAML

Convert the current OMAP Mailbox binding from text format to YAML
format/DT schema, and delete the legacy text binding file.

The new YAML binding conversion is an updated version compared to
the original. The descriptions for certain properties have been
improved to provide more clarity. Constraints are added to the
properties 'ti,mbox-num-users', 'ti,mbox-num-fifos' and 'interrupts'.
The 'ti,hwmods' is a legacy property and is retained only to reflect
the existing usage on some older OMAP2 and OMAP3 platforms.

All the existing examples have also been updated to reflect the
latest dts nodes (ti,hwmods removed from OMAP4 and AM33xx examples,
and interrupts value updated for AM65x SoCs).

Signed-off-by: Suman Anna <s-anna@ti.com>
[robh: Update ref in ti,omap-remoteproc.yaml]
Link: https://lore.kernel.org/r/20210520234348.4479-1-s-anna@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: add StarFive Technology Co. Ltd.
Drew Fustini [Mon, 31 May 2021 07:04:18 +0000 (00:04 -0700)]
dt-bindings: add StarFive Technology Co. Ltd.

Add vendor prefix for StarFive Technology Co. Ltd [1]. StarFive was
formed in 2018 and has now produced their first SoC, the JH7100, which
contains 64-bit RISC-V cores [2]. It used in the BeagleV Starlight [3].

[1] https://starfivetech.com/site/company
[2] https://github.com/starfive-tech/beaglev_doc
[3] https://github.com/beagleboard/beaglev-starlight

Signed-off-by: Drew Fustini <drew@beagleboard.org>
Link: https://lore.kernel.org/r/20210531070415.269667-1-drew@beagleboard.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: arm: intel,keembay: limit the dtschema to root node
Krzysztof Kozlowski [Wed, 26 May 2021 16:27:50 +0000 (12:27 -0400)]
dt-bindings: arm: intel,keembay: limit the dtschema to root node

The check for the board compatible should be limited only to the root
node.  Any other nodes with such compatible are not part of this schema
and should not match.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Acked-by: Daniele Alessandrelli <daniele.alessandrelli@intel.com>
Link: https://lore.kernel.org/r/20210526162750.135139-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: net: Convert MDIO mux bindings to DT schema
Rob Herring [Wed, 26 May 2021 18:14:11 +0000 (13:14 -0500)]
dt-bindings: net: Convert MDIO mux bindings to DT schema

Convert the common MDIO mux bindings to DT schema.

Drop the example from mdio-mux.yaml as mdio-mux-gpio.yaml has the same one.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Ray Jui <rjui@broadcom.com>
Cc: Scott Branden <sbranden@broadcom.com>
Cc: bcm-kernel-feedback-list@broadcom.com
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: netdev@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20210526181411.2888516-1-robh@kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: iio: multiplexer: Convert io-channel-mux bindings to DT schema
Jonathan Cameron [Sat, 22 May 2021 11:29:08 +0000 (12:29 +0100)]
dt-bindings: iio: multiplexer: Convert io-channel-mux bindings to DT schema

Straight conversion of the txt file using the mux-consumer.yaml
binding now that is available.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Peter Rosin <peda@axentia.se>
[robh: Drop quotes and $ref for mux-controls]
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210522112908.1611389-3-jic23@kernel.org
3 years agodt-bindings: i2c: maxim,max9286: Use the i2c-mux.yaml schema
Rob Herring [Wed, 26 May 2021 18:48:39 +0000 (13:48 -0500)]
dt-bindings: i2c: maxim,max9286: Use the i2c-mux.yaml schema

Use the i2c-mux.yaml schema in the maxim,max9286 binding schema. With this,
several properties can be dropped as they are defined in i2c-mux.yaml
already.

Cc: Jacopo Mondi <jacopo+renesas@jmondi.org>
Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Cc: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-7-robh@kernel.org
3 years agodt-bindings: i2c: i2c-mux-pca954x: Convert to DT schema
Rob Herring [Wed, 26 May 2021 18:48:38 +0000 (13:48 -0500)]
dt-bindings: i2c: i2c-mux-pca954x: Convert to DT schema

Convert the i2c-mux-pca954x binding to DT schema format.

Add the missing compatible for 'nxp,pca9645' which is already in use.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Wolfram Sang <wsa@kernel.org>
Acked-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-6-robh@kernel.org
3 years agodt-bindings: i2c: Convert i2c-mux bindings to DT schema
Rob Herring [Wed, 26 May 2021 18:48:37 +0000 (13:48 -0500)]
dt-bindings: i2c: Convert i2c-mux bindings to DT schema

As some of the example I2C devices don't have schemas yet, change them to
ones that do.

Cc: Peter Rosin <peda@axentia.se>
Acked-by: Wolfram Sang <wsa@kernel.org>
Acked-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-5-robh@kernel.org
3 years agodt-bindings: mux: Convert mux controller bindings to schema
Rob Herring [Wed, 26 May 2021 18:48:36 +0000 (13:48 -0500)]
dt-bindings: mux: Convert mux controller bindings to schema

Convert the mux controller bindings to DT schema.

Cc: Peter Rosin <peda@axentia.se>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Wolfram Sang <wsa@kernel.org>
Acked-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-4-robh@kernel.org
3 years agodt-bindings: rtc: nxp,pcf8563: Convert to DT schema
Rob Herring [Wed, 26 May 2021 18:48:35 +0000 (13:48 -0500)]
dt-bindings: rtc: nxp,pcf8563: Convert to DT schema

Convert the Philips PCF8563/Epson RTC8564 binding to DT schema format.

Add 'interrupts' and 'wakeup-source' as this device has an interrupt
which was not documented, but in use. Add 'start-year' as well.

Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-3-robh@kernel.org
3 years agodt-bindings: mfd: ti,j721e-system-controller: Fix mux node errors
Rob Herring [Wed, 26 May 2021 18:48:34 +0000 (13:48 -0500)]
dt-bindings: mfd: ti,j721e-system-controller: Fix mux node errors

The ti,j721e-system-controller binding does not follow the standard mux
controller node name 'mux-controller' and the example is incomplete. Fix
these to avoid schema errors before the mux controller binding is
converted to schema.

Cc: Lee Jones <lee.jones@linaro.org>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210526184839.2937899-2-robh@kernel.org
3 years agodt-bindings: rng: mediatek: add mt8365 to mtk rng binding
Fabien Parent [Thu, 20 May 2021 11:16:56 +0000 (13:16 +0200)]
dt-bindings: rng: mediatek: add mt8365 to mtk rng binding

Add RNG binding for MT8365 SoC.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Link: https://lore.kernel.org/r/20210520111656.66017-2-fparent@baylibre.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: rng: mediatek: convert to yaml schema
Fabien Parent [Thu, 20 May 2021 11:16:55 +0000 (13:16 +0200)]
dt-bindings: rng: mediatek: convert to yaml schema

Convert the RNG binding for MediaTek to use YAML schema.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Link: https://lore.kernel.org/r/20210520111656.66017-1-fparent@baylibre.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: arm: scu: Convert to json-schema
Geert Uytterhoeven [Thu, 20 May 2021 15:03:40 +0000 (17:03 +0200)]
dt-bindings: arm: scu: Convert to json-schema

Convert the ARM Snoop Control Unit (SCU) Device Tree binding
documentation to json-schema.

Document required properties.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/c5c36fb952675df4b9c9834d53a21fb58f391e86.1621522979.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: timer: arm,twd: Convert to json-schema
Geert Uytterhoeven [Thu, 20 May 2021 14:45:23 +0000 (16:45 +0200)]
dt-bindings: timer: arm,twd: Convert to json-schema

Convert the ARM Timer-Watchdog Device Tree binding documentation to
json-schema.  As the old binding document actually contained two
bindings, it is split in two document: one for the timer part, and one
for the watchdog part.

Document missing properties.
Update examples to match reality.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/3ccc0cf5319f56e230ee3b8a009f8d63afb114c1.1621521847.git.geert+renesas@glider.be
[robh: Fix up node names]
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: display: Fix spacing in lvds.yaml
Marek Vasut [Mon, 17 May 2021 22:43:36 +0000 (00:43 +0200)]
dt-bindings: display: Fix spacing in lvds.yaml

Add missing spaces to make the diagrams readable, no functional change.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: devicetree@vger.kernel.org
To: dri-devel@lists.freedesktop.org
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://lore.kernel.org/r/20210517224336.409301-1-marex@denx.de
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: pwm: brcm,iproc-pwm: convert to the json-schema
Rafał Miłecki [Wed, 12 May 2021 16:02:53 +0000 (18:02 +0200)]
dt-bindings: pwm: brcm,iproc-pwm: convert to the json-schema

This helps validating DTS files.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Link: https://lore.kernel.org/r/20210512160253.15000-1-zajec5@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodocs: dt: remove stale property-units.txt, link to current schema
Luca Ceresoli [Wed, 12 May 2021 15:23:11 +0000 (17:23 +0200)]
docs: dt: remove stale property-units.txt, link to current schema

property-units.txt is not maintained anymore. New suffixes are now
supported that have not been added here.

To avoid people incorrectly think a given suffix is not in the list remove
the file entirely and point to the authoritative place where the
recommended suffixes are maintained.

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Link: https://lore.kernel.org/r/20210512152311.7399-1-luca@lucaceresoli.net
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: timer: renesas,tpu: Convert to json-schema
Geert Uytterhoeven [Mon, 10 May 2021 12:18:35 +0000 (14:18 +0200)]
dt-bindings: timer: renesas,tpu: Convert to json-schema

Convert the Renesas H8/300 Timer Pulse Unit Device Tree binding
documentation to json-schema.

Correct clock-names, as "peripheral_clk" is the name of the supplier,
and all users use "fck".

Note that there are two different bindings for the TPU, both using
"renesas,tpu": this one for using the TPU as a clock source (used on
H8/300), and a second use for using the TPU as a PWM controller (used on
ARM).  To avoid conflicts, both bindings are marked with the appropriate
"select" logic, to check for the absence respectively presence of the
"#pwm-cells" property.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Link: https://lore.kernel.org/r/1c33e62c3a74979c3ca9580176e6cf89384caea9.1620648868.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: pwm: renesas,tpu-pwm: Improve json-schema
Geert Uytterhoeven [Mon, 10 May 2021 12:18:34 +0000 (14:18 +0200)]
dt-bindings: pwm: renesas,tpu-pwm: Improve json-schema

  - Include the general PWM controller schema,
  - Make clocks, power-domains, and resets properties required.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Link: https://lore.kernel.org/r/d36e3690ce8c5a1e53d054552e4fd8b90d6a5478.1620648868.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: memory: tegra20: emc: Convert to schema
Dmitry Osipenko [Mon, 10 May 2021 21:23:20 +0000 (00:23 +0300)]
dt-bindings: memory: tegra20: emc: Convert to schema

Convert Tegra20 External Memory Controller binding to schema.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/20210510212320.3255-1-digetx@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: net: Convert mdio-gpio to yaml
Corentin Labbe [Wed, 5 May 2021 20:28:15 +0000 (20:28 +0000)]
dt-bindings: net: Convert mdio-gpio to yaml

Converts net/mdio-gpio.txt to yaml

Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
Link: https://lore.kernel.org/r/20210505202815.2665920-1-clabbe@baylibre.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: add vendor prefix for Insignal Ltd
Krzysztof Kozlowski [Tue, 4 May 2021 12:07:42 +0000 (08:07 -0400)]
dt-bindings: add vendor prefix for Insignal Ltd

Add vendor prefix for Insignal Ltd (http://www.insignal.co.kr).

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210504120742.12922-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: clock: renesas,r9a06g032-sysctrl: Convert to json-schema
Geert Uytterhoeven [Tue, 4 May 2021 09:12:31 +0000 (11:12 +0200)]
dt-bindings: clock: renesas,r9a06g032-sysctrl: Convert to json-schema

Convert the Renesas RZ/N1D (R9A06G032) System Controller (SYSCTRL)
Device Tree binding documentation to json-schema.

Drop the consumer example, as it doesn't belong here.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/24d1bd7c4c46747f4e2828974c2e2e48e778bff8.1620119439.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: clk: emev2: Convert to json-schema
Geert Uytterhoeven [Tue, 4 May 2021 09:10:20 +0000 (11:10 +0200)]
dt-bindings: clk: emev2: Convert to json-schema

Convert the Renesas EMMA Mobile EV2 System Management Unit (SMU) Device
Tree binding documentation to json-schema.

Drop the separate provider examples, as they mostly duplicate the global
example.  Drop the consumer example, as it doesn't belong here.
Update the global example to match reality.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/526e1a412145a0fcc5a43dcf6de5c580301017cb.1620119350.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: power: sysc-rmobile: Convert to json-schema
Geert Uytterhoeven [Tue, 4 May 2021 09:09:00 +0000 (11:09 +0200)]
dt-bindings: power: sysc-rmobile: Convert to json-schema

Convert the Renesas R-Mobile System Controller (SYSC) Device Tree
binding documentation to json-schema.

Document missing properties.
Drop consumer example, as it does not belong here.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/22150cfd2ef9d57e84eb53a5dfed8379627a9423.1620119210.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: pwm: renesas,pwm-rcar: Make power-domains and resets required
Geert Uytterhoeven [Thu, 29 Apr 2021 12:46:45 +0000 (14:46 +0200)]
dt-bindings: pwm: renesas,pwm-rcar: Make power-domains and resets required

The "power-domains" property is present on all supported platforms.
The "resets" property is present on all but R-Car Gen1.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/16e82b5019b913f9a63e312166a37ef67266d425.1619700364.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: ata: renesas,rcar-sata: Make power-domains and resets required
Geert Uytterhoeven [Thu, 29 Apr 2021 12:45:03 +0000 (14:45 +0200)]
dt-bindings: ata: renesas,rcar-sata: Make power-domains and resets required

The "power-domains" property is present on all supported platforms.
The "resets" property is present on all but R-Car H1.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/ca35d7d837b155c69232a1c25060737b4c87720f.1619700260.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: arm: firmware: Convert linaro,optee-tz to json schema
Nishanth Menon [Mon, 26 Apr 2021 16:40:08 +0000 (11:40 -0500)]
dt-bindings: arm: firmware: Convert linaro,optee-tz to json schema

Convert linaro,optee-tz to json schema format for better documentation
and error checks.

NOTE: This change does introduce a stricter naming convention for
optee nodes.

Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20210426164008.20000-1-nm@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: arm: keystone: Convert ti,sci to json schema
Nishanth Menon [Mon, 26 Apr 2021 15:54:57 +0000 (10:54 -0500)]
dt-bindings: arm: keystone: Convert ti,sci to json schema

Convert the ti,sci to json schema for better checks and documentation.

NOTE: This change does introduce a stricter naming convention for
TI-SCI controller nodes.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tero Kristo <kristo@kernel.org>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20210426155457.21221-5-nm@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: soc: ti: Convert ti,sci-pm-domain to json schema
Nishanth Menon [Mon, 26 Apr 2021 15:54:56 +0000 (10:54 -0500)]
dt-bindings: soc: ti: Convert ti,sci-pm-domain to json schema

Convert the ti,sci-pm-domain to json schema for better checks and
documentation.

Differences being:
 - Drop consumer example as they are documented in the corresponding
   bindings themselves.
 - Drop phandle description for reset consumer or cell definition as it
   is redundant.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Tero Kristo <kristo@kernel.org>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20210426155457.21221-4-nm@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: clock: Convert ti,sci-clk to json schema
Nishanth Menon [Mon, 26 Apr 2021 15:54:55 +0000 (10:54 -0500)]
dt-bindings: clock: Convert ti,sci-clk to json schema

Convert the ti,sci-clk to json schema for better checks and documentation.

Differences being:
 - Drop consumer example as they are documented in the corresponding
   bindings themselves.
 - Standardize the node name as clock-controller rather than clocks as
   it is more appropriate.
 - Drop phandle description for clock-cells as it is redundant.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tero Kristo <kristo@kernel.org>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20210426155457.21221-3-nm@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agodt-bindings: reset: Convert ti,sci-reset to json schema
Nishanth Menon [Mon, 26 Apr 2021 15:54:54 +0000 (10:54 -0500)]
dt-bindings: reset: Convert ti,sci-reset to json schema

Convert the ti,sci-reset to json schema for better checks and documentation.

Differences being:
 - Drop consumer example as they are documented in the corresponding
   bindings themselves.
 - Drop phandle description for reset consumer or cell definition as it is
   redundant.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Tero Kristo <kristo@kernel.org>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20210426155457.21221-2-nm@ti.com
Signed-off-by: Rob Herring <robh@kernel.org>
3 years agoLinux 5.13-rc1
Linus Torvalds [Sun, 9 May 2021 21:17:44 +0000 (14:17 -0700)]
Linux 5.13-rc1

3 years agofbmem: fix horribly incorrect placement of __maybe_unused
Linus Torvalds [Sun, 9 May 2021 21:03:33 +0000 (14:03 -0700)]
fbmem: fix horribly incorrect placement of __maybe_unused

Commit b9d79e4ca4ff ("fbmem: Mark proc_fb_seq_ops as __maybe_unused")
places the '__maybe_unused' in an entirely incorrect location between
the "struct" keyword and the structure name.

It's a wonder that gcc accepts that silently, but clang quite reasonably
warns about it:

    drivers/video/fbdev/core/fbmem.c:736:21: warning: attribute declaration must precede definition [-Wignored-attributes]
    static const struct __maybe_unused seq_operations proc_fb_seq_ops = {
                        ^

Fix it.

Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
3 years agoMerge tag 'drm-next-2021-05-10' of git://anongit.freedesktop.org/drm/drm
Linus Torvalds [Sun, 9 May 2021 20:42:39 +0000 (13:42 -0700)]
Merge tag 'drm-next-2021-05-10' of git://anongit.freedesktop.org/drm/drm

Pull drm fixes from Dave Airlie:
 "Bit later than usual, I queued them all up on Friday then promptly
  forgot to write the pull request email. This is mainly amdgpu fixes,
  with some radeon/msm/fbdev and one i915 gvt fix thrown in.

  amdgpu:
   - MPO hang workaround
   - Fix for concurrent VM flushes on vega/navi
   - dcefclk is not adjustable on navi1x and newer
   - MST HPD debugfs fix
   - Suspend/resumes fixes
   - Register VGA clients late in case driver fails to load
   - Fix GEM leak in user framebuffer create
   - Add support for polaris12 with 32 bit memory interface
   - Fix duplicate cursor issue when using overlay
   - Fix corruption with tiled surfaces on VCN3
   - Add BO size and stride check to fix BO size verification

  radeon:
   - Fix off-by-one in power state parsing
   - Fix possible memory leak in power state parsing

  msm:
   - NULL ptr dereference fix

  fbdev:
   - procfs disabled warning fix

  i915:
   - gvt: Fix a possible division by zero in vgpu display rate
     calculation"

* tag 'drm-next-2021-05-10' of git://anongit.freedesktop.org/drm/drm:
  drm/amdgpu: Use device specific BO size & stride check.
  drm/amdgpu: Init GFX10_ADDR_CONFIG for VCN v3 in DPG mode.
  drm/amd/pm: initialize variable
  drm/radeon: Avoid power table parsing memory leaks
  drm/radeon: Fix off-by-one power_state index heap overwrite
  drm/amd/display: Fix two cursor duplication when using overlay
  drm/amdgpu: add new MC firmware for Polaris12 32bit ASIC
  fbmem: Mark proc_fb_seq_ops as __maybe_unused
  drm/msm/dpu: Delete bonkers code
  drm/i915/gvt: Prevent divided by zero when calculating refresh rate
  amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create
  drm/amdgpu: Register VGA clients after init can no longer fail
  drm/amdgpu: Handling of amdgpu_device_resume return value for graceful teardown
  drm/amdgpu: fix r initial values
  drm/amd/display: fix wrong statement in mst hpd debugfs
  amdgpu/pm: set pp_dpm_dcefclk to readonly on NAVI10 and newer gpus
  amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID
  drm/amdgpu: fix concurrent VM flushes on Vega/Navi v2
  drm/amd/display: Reject non-zero src_y and src_x for video planes

3 years agoMerge tag 'block-5.13-2021-05-09' of git://git.kernel.dk/linux-block
Linus Torvalds [Sun, 9 May 2021 20:25:14 +0000 (13:25 -0700)]
Merge tag 'block-5.13-2021-05-09' of git://git.kernel.dk/linux-block

Pull block fix from Jens Axboe:
 "Turns out the bio max size change still has issues, so let's get it
  reverted for 5.13-rc1. We'll shake out the issues there and defer it
  to 5.14 instead"

* tag 'block-5.13-2021-05-09' of git://git.kernel.dk/linux-block:
  Revert "bio: limit bio max size"

3 years agoMerge tag '5.13-rc-smb3-part3' of git://git.samba.org/sfrench/cifs-2.6
Linus Torvalds [Sun, 9 May 2021 20:19:29 +0000 (13:19 -0700)]
Merge tag '5.13-rc-smb3-part3' of git://git.samba.org/sfrench/cifs-2.6

Pull cifs fixes from Steve French:
 "Three small SMB3 chmultichannel related changesets (also for stable)
  from the SMB3 test event this week.

  The other fixes are still in review/testing"

* tag '5.13-rc-smb3-part3' of git://git.samba.org/sfrench/cifs-2.6:
  smb3: if max_channels set to more than one channel request multichannel
  smb3: do not attempt multichannel to server which does not support it
  smb3: when mounting with multichannel include it in requested capabilities

3 years agoMerge tag 'sched-urgent-2021-05-09' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 9 May 2021 20:14:34 +0000 (13:14 -0700)]
Merge tag 'sched-urgent-2021-05-09' of git://git./linux/kernel/git/tip/tip

Pull scheduler fixes from Thomas Gleixner:
 "A set of scheduler updates:

   - Prevent PSI state corruption when schedule() races with cgroup
     move.

     A recent commit combined two PSI callbacks to reduce the number of
     cgroup tree updates, but missed that schedule() can drop rq::lock
     for load balancing, which opens the race window for
     cgroup_move_task() which then observes half updated state.

     The fix is to solely use task::ps_flags instead of looking at the
     potentially mismatching scheduler state

   - Prevent an out-of-bounds access in uclamp caused bu a rounding
     division which can lead to an off-by-one error exceeding the
     buckets array size.

   - Prevent unfairness caused by missing load decay when a task is
     attached to a cfs runqueue.

     The old load of the task was attached to the runqueue and never
     removed. Fix it by enforcing the load update through the hierarchy
     for unthrottled run queue instances.

   - A documentation fix fot the 'sched_verbose' command line option"

* tag 'sched-urgent-2021-05-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  sched/fair: Fix unfairness caused by missing load decay
  sched: Fix out-of-bound access in uclamp
  psi: Fix psi state corruption when schedule() races with cgroup move
  sched,doc: sched_debug_verbose cmdline should be sched_verbose

3 years agoMerge tag 'locking-urgent-2021-05-09' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 9 May 2021 20:07:03 +0000 (13:07 -0700)]
Merge tag 'locking-urgent-2021-05-09' of git://git./linux/kernel/git/tip/tip

Pull locking fixes from Thomas Gleixner:
 "A set of locking related fixes and updates:

   - Two fixes for the futex syscall related to the timeout handling.

     FUTEX_LOCK_PI does not support the FUTEX_CLOCK_REALTIME bit and
     because it's not set the time namespace adjustment for clock
     MONOTONIC is applied wrongly.

     FUTEX_WAIT cannot support the FUTEX_CLOCK_REALTIME bit because its
     always a relative timeout.

   - Cleanups in the futex syscall entry points which became obvious
     when the two timeout handling bugs were fixed.

   - Cleanup of queued_write_lock_slowpath() as suggested by Linus

   - Fixup of the smp_call_function_single_async() prototype"

* tag 'locking-urgent-2021-05-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  futex: Make syscall entry points less convoluted
  futex: Get rid of the val2 conditional dance
  futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI
  Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op")
  locking/qrwlock: Cleanup queued_write_lock_slowpath()
  smp: Fix smp_call_function_single_async prototype

3 years agoMerge tag 'perf_urgent_for_v5.13_rc1' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 9 May 2021 20:00:26 +0000 (13:00 -0700)]
Merge tag 'perf_urgent_for_v5.13_rc1' of git://git./linux/kernel/git/tip/tip

Pull x86 perf fix from Borislav Petkov:
 "Handle power-gating of AMD IOMMU perf counters properly when they are
  used"

* tag 'perf_urgent_for_v5.13_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating

3 years agoMerge tag 'x86_urgent_for_v5.13_rc1' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 9 May 2021 19:52:25 +0000 (12:52 -0700)]
Merge tag 'x86_urgent_for_v5.13_rc1' of git://git./linux/kernel/git/tip/tip

Pull x86 fixes from Borislav Petkov:
 "A bunch of things accumulated for x86 in the last two weeks:

   - Fix guest vtime accounting so that ticks happening while the guest
     is running can also be accounted to it. Along with a consolidation
     to the guest-specific context tracking helpers.

   - Provide for the host NMI handler running after a VMX VMEXIT to be
     able to run on the kernel stack correctly.

   - Initialize MSR_TSC_AUX when RDPID is supported and not RDTSCP (virt
     relevant - real hw supports both)

   - A code generation improvement to TASK_SIZE_MAX through the use of
     alternatives

   - The usual misc and related cleanups and improvements"

* tag 'x86_urgent_for_v5.13_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  KVM: x86: Consolidate guest enter/exit logic to common helpers
  context_tracking: KVM: Move guest enter/exit wrappers to KVM's domain
  context_tracking: Consolidate guest enter/exit wrappers
  sched/vtime: Move guest enter/exit vtime accounting to vtime.h
  sched/vtime: Move vtime accounting external declarations above inlines
  KVM: x86: Defer vtime accounting 'til after IRQ handling
  context_tracking: Move guest exit vtime accounting to separate helpers
  context_tracking: Move guest exit context tracking to separate helpers
  KVM/VMX: Invoke NMI non-IST entry instead of IST entry
  x86/cpu: Remove write_tsc() and write_rdtscp_aux() wrappers
  x86/cpu: Initialize MSR_TSC_AUX if RDTSCP *or* RDPID is supported
  x86/resctrl: Fix init const confusion
  x86: Delete UD0, UD1 traces
  x86/smpboot: Remove duplicate includes
  x86/cpu: Use alternative to generate the TASK_SIZE_MAX constant

3 years agoRevert "bio: limit bio max size"
Jens Axboe [Sun, 9 May 2021 03:49:48 +0000 (21:49 -0600)]
Revert "bio: limit bio max size"

This reverts commit cd2c7545ae1beac3b6aae033c7f31193b3255946.

Alex reports that the commit causes corruption with LUKS on ext4. Revert
it for now so that this can be investigated properly.

Link: https://lore.kernel.org/linux-block/1620493841.bxdq8r5haw.none@localhost/
Reported-by: Alex Xu (Hello71) <alex_y_xu@yahoo.ca>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
3 years agoMerge tag 'riscv-for-linus-5.13-mw1' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 8 May 2021 18:52:37 +0000 (11:52 -0700)]
Merge tag 'riscv-for-linus-5.13-mw1' of git://git./linux/kernel/git/riscv/linux

Pull RISC-V fixes from Palmer Dabbelt:

 - A fix to avoid over-allocating the kernel's mapping on !MMU systems,
   which could lead to up to 2MiB of lost memory

 - The SiFive address extension errata only manifest on rv64, they are
   now disabled on rv32 where they are unnecessary

 - A pair of late-landing cleanups

* tag 'riscv-for-linus-5.13-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
  riscv: remove unused handle_exception symbol
  riscv: Consistify protect_kernel_linear_mapping_text_rodata() use
  riscv: enable SiFive errata CIP-453 and CIP-1200 Kconfig only if CONFIG_64BIT=y
  riscv: Only extend kernel reservation if mapped read-only

3 years agodrm/i915/display: fix compiler warning about array overrun
Linus Torvalds [Sat, 8 May 2021 18:30:22 +0000 (11:30 -0700)]
drm/i915/display: fix compiler warning about array overrun

intel_dp_check_mst_status() uses a 14-byte array to read the DPRX Event
Status Indicator data, but then passes that buffer at offset 10 off as
an argument to drm_dp_channel_eq_ok().

End result: there are only 4 bytes remaining of the buffer, yet
drm_dp_channel_eq_ok() wants a 6-byte buffer.  gcc-11 correctly warns
about this case:

  drivers/gpu/drm/i915/display/intel_dp.c: In function ‘intel_dp_check_mst_status’:
  drivers/gpu/drm/i915/display/intel_dp.c:3491:22: warning: ‘drm_dp_channel_eq_ok’ reading 6 bytes from a region of size 4 [-Wstringop-overread]
   3491 |                     !drm_dp_channel_eq_ok(&esi[10], intel_dp->lane_count)) {
        |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  drivers/gpu/drm/i915/display/intel_dp.c:3491:22: note: referencing argument 1 of type ‘const u8 *’ {aka ‘const unsigned char *’}
  In file included from drivers/gpu/drm/i915/display/intel_dp.c:38:
  include/drm/drm_dp_helper.h:1466:6: note: in a call to function ‘drm_dp_channel_eq_ok’
   1466 | bool drm_dp_channel_eq_ok(const u8 link_status[DP_LINK_STATUS_SIZE],
        |      ^~~~~~~~~~~~~~~~~~~~
       6:14 elapsed

This commit just extends the original array by 2 zero-initialized bytes,
avoiding the warning.

There may be some underlying bug in here that caused this confusion, but
this is at least no worse than the existing situation that could use
random data off the stack.

Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Dave Airlie <airlied@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
3 years agoMerge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Linus Torvalds [Sat, 8 May 2021 17:44:36 +0000 (10:44 -0700)]
Merge tag 'scsi-misc' of git://git./linux/kernel/git/jejb/scsi

Pull more SCSI updates from James Bottomley:
 "This is a set of minor fixes in various drivers (qla2xxx, ufs,
  scsi_debug, lpfc) one doc fix and a fairly large update to the fnic
  driver to remove the open coded iteration functions in favour of the
  scsi provided ones"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  scsi: fnic: Use scsi_host_busy_iter() to traverse commands
  scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io()
  scsi: scsi_debug: Fix cmd_per_lun, set to max_queue
  scsi: ufs: core: Narrow down fast path in system suspend path
  scsi: ufs: core: Cancel rpm_dev_flush_recheck_work during system suspend
  scsi: ufs: core: Do not put UFS power into LPM if link is broken
  scsi: qla2xxx: Prevent PRLI in target mode
  scsi: qla2xxx: Add marginal path handling support
  scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found
  scsi: ufs: core: Fix a typo in ufs-sysfs.c
  scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command
  scsi: lpfc: Fix DMA virtual address ptr assignment in bsg
  scsi: lpfc: Fix illegal memory access on Abort IOCBs
  scsi: blk-mq: Fix build warning when making htmldocs

3 years agoMerge tag 'kbuild-v5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
Linus Torvalds [Sat, 8 May 2021 17:00:11 +0000 (10:00 -0700)]
Merge tag 'kbuild-v5.13-2' of git://git./linux/kernel/git/masahiroy/linux-kbuild

Pull more Kbuild updates from Masahiro Yamada:

 - Convert sh and sparc to use generic shell scripts to generate the
   syscall headers

 - refactor .gitignore files

 - Update kernel/config_data.gz only when the content of the .config
   is really changed, which avoids the unneeded re-link of vmlinux

 - move "remove stale files" workarounds to scripts/remove-stale-files

 - suppress unused-but-set-variable warnings by default for Clang
   as well

 - fix locale setting LANG=C to LC_ALL=C

 - improve 'make distclean'

 - always keep intermediate objects from scripts/link-vmlinux.sh

 - move IF_ENABLED out of <linux/kconfig.h> to make it self-contained

 - misc cleanups

* tag 'kbuild-v5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (25 commits)
  linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in <linux/kernel.h>
  kbuild: Don't remove link-vmlinux temporary files on exit/signal
  kbuild: remove the unneeded comments for external module builds
  kbuild: make distclean remove tag files in sub-directories
  kbuild: make distclean work against $(objtree) instead of $(srctree)
  kbuild: refactor modname-multi by using suffix-search
  kbuild: refactor fdtoverlay rule
  kbuild: parameterize the .o part of suffix-search
  arch: use cross_compiling to check whether it is a cross build or not
  kbuild: remove ARCH=sh64 support from top Makefile
  .gitignore: prefix local generated files with a slash
  kbuild: replace LANG=C with LC_ALL=C
  Makefile: Move -Wno-unused-but-set-variable out of GCC only block
  kbuild: add a script to remove stale generated files
  kbuild: update config_data.gz only when the content of .config is changed
  .gitignore: ignore only top-level modules.builtin
  .gitignore: move tags and TAGS close to other tag files
  kernel/.gitgnore: remove stale timeconst.h and hz.bc
  usr/include: refactor .gitignore
  genksyms: fix stale comment
  ...

3 years agosmb3: if max_channels set to more than one channel request multichannel
Steve French [Sat, 8 May 2021 00:33:51 +0000 (19:33 -0500)]
smb3: if max_channels set to more than one channel request multichannel

Mounting with "multichannel" is obviously implied if user requested
more than one channel on mount (ie mount parm max_channels>1).
Currently both have to be specified. Fix that so that if max_channels
is greater than 1 on mount, enable multichannel rather than silently
falling back to non-multichannel.

Signed-off-by: Steve French <stfrench@microsoft.com>
Reviewed-By: Tom Talpey <tom@talpey.com>
Cc: <stable@vger.kernel.org> # v5.11+
Reviewed-by: Shyam Prasad N <sprasad@microsoft.com>
3 years agosmb3: do not attempt multichannel to server which does not support it
Steve French [Sat, 8 May 2021 01:00:41 +0000 (20:00 -0500)]
smb3: do not attempt multichannel to server which does not support it

We were ignoring CAP_MULTI_CHANNEL in the server response - if the
server doesn't support multichannel we should not be attempting it.

See MS-SMB2 section 3.2.5.2

Reviewed-by: Shyam Prasad N <sprasad@microsoft.com>
Reviewed-By: Tom Talpey <tom@talpey.com>
Cc: <stable@vger.kernel.org> # v5.8+
Signed-off-by: Steve French <stfrench@microsoft.com>
3 years agoMerge tag 'powerpc-5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
Linus Torvalds [Sat, 8 May 2021 15:49:54 +0000 (08:49 -0700)]
Merge tag 'powerpc-5.13-2' of git://git./linux/kernel/git/powerpc/linux

Pull powerpc updates and fixes from Michael Ellerman:
 "A bit of a mixture of things, tying up some loose ends.

  There's the removal of the nvlink code, which dependend on a commit in
  the vfio tree. Then the enablement of huge vmalloc which was in next
  for a few weeks but got dropped due to conflicts. And there's also a
  few fixes.

  Summary:

   - Remove the nvlink support now that it's only user has been removed.

   - Enable huge vmalloc mappings for Radix MMU (P9).

   - Fix KVM conversion to gfn-based MMU notifier callbacks.

   - Fix a kexec/kdump crash with hot plugged CPUs.

   - Fix boot failure on 32-bit with CONFIG_STACKPROTECTOR.

   - Restore alphabetic order of the selects under CONFIG_PPC.

  Thanks to: Christophe Leroy, Christoph Hellwig, Nicholas Piggin,
  Sandipan Das, and Sourabh Jain"

* tag 'powerpc-5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
  KVM: PPC: Book3S HV: Fix conversion to gfn-based MMU notifier callbacks
  powerpc/kconfig: Restore alphabetic order of the selects under CONFIG_PPC
  powerpc/32: Fix boot failure with CONFIG_STACKPROTECTOR
  powerpc/powernv/memtrace: Fix dcache flushing
  powerpc/kexec_file: Use current CPU info while setting up FDT
  powerpc/64s/radix: Enable huge vmalloc mappings
  powerpc/powernv: remove the nvlink support

3 years agosmb3: when mounting with multichannel include it in requested capabilities
Steve French [Fri, 7 May 2021 23:24:11 +0000 (18:24 -0500)]
smb3: when mounting with multichannel include it in requested capabilities

In the SMB3/SMB3.1.1 negotiate protocol request, we are supposed to
advertise CAP_MULTICHANNEL capability when establishing multiple
channels has been requested by the user doing the mount. See MS-SMB2
sections 2.2.3 and 3.2.5.2

Without setting it there is some risk that multichannel could fail
if the server interpreted the field strictly.

Reviewed-By: Tom Talpey <tom@talpey.com>
Reviewed-by: Shyam Prasad N <sprasad@microsoft.com>
Cc: <stable@vger.kernel.org> # v5.8+
Signed-off-by: Steve French <stfrench@microsoft.com>
3 years agoMerge tag 'net-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Linus Torvalds [Sat, 8 May 2021 15:31:46 +0000 (08:31 -0700)]
Merge tag 'net-5.13-rc1' of git://git./linux/kernel/git/netdev/net

Pull networking fixes from Jakub Kicinski:
 "Networking fixes for 5.13-rc1, including fixes from bpf, can and
  netfilter trees. Self-contained fixes, nothing risky.

  Current release - new code bugs:

   - dsa: ksz: fix a few bugs found by static-checker in the new driver

   - stmmac: fix frame preemption handshake not triggering after
     interface restart

  Previous releases - regressions:

   - make nla_strcmp handle more then one trailing null character

   - fix stack OOB reads while fragmenting IPv4 packets in openvswitch
     and net/sched

   - sctp: do asoc update earlier in sctp_sf_do_dupcook_a

   - sctp: delay auto_asconf init until binding the first addr

   - stmmac: clear receive all(RA) bit when promiscuous mode is off

   - can: mcp251x: fix resume from sleep before interface was brought up

  Previous releases - always broken:

   - bpf: fix leakage of uninitialized bpf stack under speculation

   - bpf: fix masking negation logic upon negative dst register

   - netfilter: don't assume that skb_header_pointer() will never fail

   - only allow init netns to set default tcp cong to a restricted algo

   - xsk: fix xp_aligned_validate_desc() when len == chunk_size to avoid
     false positive errors

   - ethtool: fix missing NLM_F_MULTI flag when dumping

   - can: m_can: m_can_tx_work_queue(): fix tx_skb race condition

   - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b

   - bridge: fix NULL-deref caused by a races between assigning
     rx_handler_data and setting the IFF_BRIDGE_PORT bit

  Latecomer:

   - seg6: add counters support for SRv6 Behaviors"

* tag 'net-5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (73 commits)
  atm: firestream: Use fallthrough pseudo-keyword
  net: stmmac: Do not enable RX FIFO overflow interrupts
  mptcp: fix splat when closing unaccepted socket
  i40e: Remove LLDP frame filters
  i40e: Fix PHY type identifiers for 2.5G and 5G adapters
  i40e: fix the restart auto-negotiation after FEC modified
  i40e: Fix use-after-free in i40e_client_subtask()
  i40e: fix broken XDP support
  netfilter: nftables: avoid potential overflows on 32bit arches
  netfilter: nftables: avoid overflows in nft_hash_buckets()
  tcp: Specify cmsgbuf is user pointer for receive zerocopy.
  mlxsw: spectrum_mr: Update egress RIF list before route's action
  net: ipa: fix inter-EE IRQ register definitions
  can: m_can: m_can_tx_work_queue(): fix tx_skb race condition
  can: mcp251x: fix resume from sleep before interface was brought up
  can: mcp251xfd: mcp251xfd_probe(): add missing can_rx_offload_del() in error path
  can: mcp251xfd: mcp251xfd_probe(): fix an error pointer dereference in probe
  netfilter: nftables: Fix a memleak from userdata error path in new objects
  netfilter: remove BUG_ON() after skb_header_pointer()
  netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check
  ...

3 years agolinux/kconfig.h: replace IF_ENABLED() with PTR_IF() in <linux/kernel.h>
Masahiro Yamada [Wed, 5 May 2021 17:45:15 +0000 (02:45 +0900)]
linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in <linux/kernel.h>

<linux/kconfig.h> is included from all the kernel-space source files,
including C, assembly, linker scripts. It is intended to contain a
minimal set of macros to evaluate CONFIG options.

IF_ENABLED() is an intruder here because (x ? y : z) is C code, which
should not be included from assembly files or linker scripts.

Also, <linux/kconfig.h> is no longer self-contained because NULL is
defined in <linux/stddef.h>.

Move IF_ENABLED() out to <linux/kernel.h> as PTR_IF(). PTF_IF()
takes the general boolean expression instead of a CONFIG option
so that it fits better in <linux/kernel.h>.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
3 years agoMerge branch 'master' into next
Michael Ellerman [Sat, 8 May 2021 11:12:55 +0000 (21:12 +1000)]
Merge branch 'master' into next

Merge master back into next, this allows us to resolve some conflicts in
arch/powerpc/Kconfig, and also re-sort the symbols under config PPC so
that they are in alphabetical order again.