[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <de82700c-2e63-4598-a6ba-be27903e807c@app.fastmail.com>
Date: Mon, 22 Dec 2025 23:04:09 +0100
From: "Arnd Bergmann" <arnd@...db.de>
To: "Daniel Mack" <daniel@...que.org>,
"Robert Jarzmik" <robert.jarzmik@...e.fr>, "Rob Herring" <robh@...nel.org>
Cc: "Geert Uytterhoeven" <geert+renesas@...der.be>,
"Magnus Damm" <magnus.damm@...il.com>,
"Krzysztof Kozlowski" <krzk+dt@...nel.org>,
"Conor Dooley" <conor+dt@...nel.org>,
"Haojian Zhuang" <haojian.zhuang@...il.com>, "Andrew Lunn" <andrew@...n.ch>,
"Gregory Clement" <gregory.clement@...tlin.com>,
"Sebastian Hesselbarth" <sebastian.hesselbarth@...il.com>,
Linux-Renesas <linux-renesas-soc@...r.kernel.org>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH] ARM: dts: intel: Drop pxa2xx
On Thu, Dec 18, 2025, at 09:21, Daniel wrote:
> On 12/17/25 17:04, Arnd Bergmann wrote:
>> On Fri, Dec 12, 2025, at 22:58, Robert Jarzmik wrote:
>>> "Rob Herring (Arm)" <robh@...nel.org> writes:
>>>
>>>> These .dtsi files are not included anywhere in the tree and
>>>> can't be tested. They have not been touched since 2018 other than
>>>> clean-ups.
>>>>
>>> And yet, there are used by people using pxa2xx board with an DT
>>> support (like the mioa701 for which a board file was never merged).
>>>
>>> If you remove pxa25x.dtsi and pxa27x.dtsi, you might as well
>>> remove all support for this architecture from the kernel, as
>>> these are the building blocks needed to make it work.
>>>
>>> That might be what should be done, I'll let Arnd and Daniel
>>> comment on the future of PXA in the kernel.
>>
>> I agree with Rob that at the very minimum, any dtsi files in the
>> kernel should be build-tested along with the rest, so either
>> we add some dts files using them soon, or we can remove pxa2xx
>> (and maybe pxa3xx) completely.
>
> PXA3xx is in use by the Raumfeld boards, and I would really like to keep
> them around.
Ok, no problem. If there are upstream users, we can always keep that.
> For PXA2xx I'm torn. I don't have the capacity and hardware to work on
> those, but I don't know how many users are out there with out-of-tree
> dts files.
It's clear that nobody has done anything upstream for a while on pxa2xx,
you both initially put a lot of work into it but it has been incomplete
for almost a decade at this point.
I wouldn't even expect you to do any runtime testing, but if we want
to keep it in mainline, it seems the minimum state we should get to
is to complete the upstreaming to the degree that one machine can
plausibly boot with a mainline that gets built by default, and not
introduce new warnings in the process.
At the moment, an empty dts file that includes pxa25x.dtsi doesn't
even build because there is no pwri2c node:
arch/arm/boot/dts/intel/pxa/pxa2xx.dtsi:36.10-43.4: ERROR (path_references): /aliases: Reference to non-existent node or label "pwri2c"
The pxa27x.dtsi file does build but produces a couple of
'dtbs_check' W=1 and W=2 warnings:
arch/arm/boot/dts/intel/pxa/pxa27x.dtsi:134.30-138.5: Warning (node_name_chars_strict): /clocks/pxa2xx_clks@...00004: Character '_' not recommended in node name
arch/arm/boot/dts/intel/pxa/pxa27x.dtsi:149.31-187.4: Warning (node_name_chars_strict): /opp_table0: Character '_' not recommended in node name
arch/arm/boot/dts/intel/pxa/pxa27x.dtsi:134.30-138.5: Warning (unit_address_vs_reg): /clocks/pxa2xx_clks@...00004: node has a unit name, but no reg or ranges property
arch/arm/boot/dts/intel/pxa/pxa2xx.dtsi:154.33-160.5: Warning (simple_bus_reg): /pxabus/lcd-controller@...00000: simple-bus unit address format error, expected "44000000"
arch/arm/boot/dts/intel/pxa/pxa27x.dtsi:29.29-33.5: Warning (simple_bus_reg): /pxabus/pinctrl@...00000: simple-bus unit address format error, expected "40e00054"
arch/arm/boot/dts/intel/pxa/pxa2xx.dtsi:67.23-94.5: Warning (unique_unit_address): /pxabus/gpio@...00000: duplicate unit-address (also used in node /pxabus/pinctrl@...00000)
pxa270-minimal.dtb: /: failed to match any schema with compatible: ['marvell,pxa27x']
pxa270-minimal.dtb: cpus: '#address-cells' is a required property
from schema $id: http://devicetree.org/schemas/cpus.yaml#
pxa270-minimal.dtb: cpus: '#size-cells' is a required property
from schema $id: http://devicetree.org/schemas/cpus.yaml#
pxa270-minimal.dtb: /cpus/cpu: failed to match any schema with compatible: ['marvell,xscale']
pxa270-minimal.dtb: pxabus (simple-bus): $nodename:0: 'pxabus' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yaml#
pxa270-minimal.dtb: /pxabus/interrupt-controller@...00000: failed to match any schema with compatible: ['marvell,pxa-intc']
pxa270-minimal.dtb: interrupt-controller@...00000 (marvell,pxa-intc): interrupt-parent: True is not of type 'array'
from schema $id: http://devicetree.org/schemas/interrupts.yaml#
pxa270-minimal.dtb: /pxabus/mmc@...00000: failed to match any schema with compatible: ['marvell,pxa-mmc']
pxa270-minimal.dtb: rtc@...00000 (marvell,pxa-rtc): Unevaluated properties are not allowed ('clocks' was unexpected)
from schema $id: http://devicetree.org/schemas/rtc/marvell,pxa-rtc.yaml#
pxa270-minimal.dtb: /pxabus/lcd-controller@...00000: failed to match any schema with compatible: ['marvell,pxa2xx-lcdc']
pxa270-minimal.dtb: /pxabus/pinctrl@...00000: failed to match any schema with compatible: ['marvell,pxa27x-pinctrl']
pxa270-minimal.dtb: /pxabus/usb@...00000: failed to match any schema with compatible: ['marvell,pxa-ohci']
pxa270-minimal.dtb: pwm@...00000 (marvell,pxa270-pwm): compatible: 'oneOf' conditional failed, one must be fixed:
['marvell,pxa270-pwm', 'marvell,pxa250-pwm'] is too long
'spacemit,k1-pwm' was expected
'marvell,pxa910-pwm' was expected
from schema $id: http://devicetree.org/schemas/pwm/marvell,pxa-pwm.yaml#
pxa270-minimal.dtb: pwm@...00010 (marvell,pxa270-pwm): compatible: 'oneOf' conditional failed, one must be fixed:
['marvell,pxa270-pwm', 'marvell,pxa250-pwm'] is too long
'spacemit,k1-pwm' was expected
'marvell,pxa910-pwm' was expected
from schema $id: http://devicetree.org/schemas/pwm/marvell,pxa-pwm.yaml#
pxa270-minimal.dtb: pwm@...00000 (marvell,pxa270-pwm): compatible: 'oneOf' conditional failed, one must be fixed:
['marvell,pxa270-pwm', 'marvell,pxa250-pwm'] is too long
'spacemit,k1-pwm' was expected
'marvell,pxa910-pwm' was expected
from schema $id: http://devicetree.org/schemas/pwm/marvell,pxa-pwm.yaml#
pxa270-minimal.dtb: pwm@...00010 (marvell,pxa270-pwm): compatible: 'oneOf' conditional failed, one must be fixed:
['marvell,pxa270-pwm', 'marvell,pxa250-pwm'] is too long
'spacemit,k1-pwm' was expected
'marvell,pxa910-pwm' was expected
from schema $id: http://devicetree.org/schemas/pwm/marvell,pxa-pwm.yaml#
pxa270-minimal.dtb: /pxabus/udc@...00000: failed to match any schema with compatible: ['marvell,pxa270-udc']
pxa270-minimal.dtb: /pxabus/keypad@...00000: failed to match any schema with compatible: ['marvell,pxa27x-keypad']
pxa270-minimal.dtb: /pxabus/imaging@...00000: failed to match any schema with compatible: ['marvell,pxa270-qci']
pxa270-minimal.dtb: imaging@...00000 (marvell,pxa270-qci): '#clock-cells' is a dependency of 'clock-output-names'
from schema $id: http://devicetree.org/schemas/clock/clock.yaml#
pxa270-minimal.dtb: /clocks/pxa2xx_clks@...00004: failed to match any schema with compatible: ['marvell,pxa270-clocks']
pxa270-minimal.dtb: /timer@...00000: failed to match any schema with compatible: ['marvell,pxa-timer']
pxa270-minimal.dtb: opp_table0 (operating-points-v2): $nodename:0: 'opp_table0' does not match '^opp-table(-[a-z0-9]+)?$'
from schema $id: http://devicetree.org/schemas/opp/opp-v2.yaml#
pxa270-minimal.dtb: opp_table0 (operating-points-v2): Unevaluated properties are not allowed ('opp-104000000', 'opp-156000000', 'opp-208000000', 'opp-312000000', 'opp-416000000', 'opp-520000000', 'opp-624000000' were unexpected)
from schema $id: http://devicetree.org/schemas/opp/opp-v2.yaml#
Most of these have an obvious fix and just need someone to care
a little bit. The Raumfeld files have a similar set of warnings:
arch/arm/boot/dts/intel/pxa/pxa300-raumfeld-common.dtsi:17.9-20.4: Warning (unit_address_vs_reg): /memory: node has a reg or ranges property, but no unit name
arch/arm/boot/dts/intel/pxa/pxa300-raumfeld-controller.dts:242.29-248.4: Warning (node_name_chars_strict): /pxabus/pinctrl@...10000/charger_pins: Character '_' not recommended in node name
arch/arm/boot/dts/intel/pxa/pxa300-raumfeld-controller.dts:250.37-256.4: Warning (node_name_chars_strict): /pxabus/pinctrl@...10000/dock_detect_pins: Character '_' not recommended in node name
arch/arm/boot/dts/intel/pxa/pxa300-raumfeld-speaker-one.dts:122.3-25: Warning (property_name_chars_strict): /pxabus/i2c@...01680/codec@1a:st,needs_esd_watchdog: Character '_' not recommended in property name
pxa300-raumfeld-speaker-l.dtb: /: failed to match any schema with compatible: ['raumfeld,raumfeld-speaker-l-pxa303', 'marvell,pxa300']
pxa300-raumfeld-speaker-l.dtb: /: failed to match any schema with compatible: ['raumfeld,raumfeld-speaker-l-pxa303', 'marvell,pxa300']
pxa300-raumfeld-speaker-l.dtb: / (raumfeld,raumfeld-speaker-l-pxa303): memory: False schema does not allow {'device_type': ['memory'], 'reg': [[2684354560, 134217728]]}
from schema $id: http://devicetree.org/schemas/root-node.yaml#
pxa300-raumfeld-speaker-l.dtb: cpus: '#address-cells' is a required property
from schema $id: http://devicetree.org/schemas/cpus.yaml#
pxa300-raumfeld-speaker-l.dtb: cpus: '#size-cells' is a required property
from schema $id: http://devicetree.org/schemas/cpus.yaml#
pxa300-raumfeld-speaker-l.dtb: /cpus/cpu: failed to match any schema with compatible: ['marvell,xscale']
pxa300-raumfeld-speaker-l.dtb: pxabus (simple-bus): $nodename:0: 'pxabus' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yaml#
pxa300-raumfeld-speaker-l.dtb: /pxabus/interrupt-controller@...00000: failed to match any schema with compatible: ['marvell,pxa-intc']
pxa300-raumfeld-speaker-l.dtb: interrupt-controller@...00000 (marvell,pxa-intc): interrupt-parent: True is not of type 'array'
from schema $id: http://devicetree.org/schemas/interrupts.yaml#
pxa300-raumfeld-speaker-l.dtb: /pxabus/mmc@...00000: failed to match any schema with compatible: ['marvell,pxa-mmc']
pxa300-raumfeld-speaker-l.dtb: /pxabus/lcd-controller@...00000: failed to match any schema with compatible: ['marvell,pxa2xx-lcdc']
pxa300-raumfeld-speaker-l.dtb: /pxabus/i2c@...500c0: failed to match any schema with compatible: ['mrvl,pwri2c']
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): $nodename:0: 'regulator@34' does not match 'pmic@[0-9a-f]{1,2}'
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): regulators:regulator-v3: Unevaluated properties are not allowed ('regulator-compatible' was unexpected)
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): regulators:regulator-v4: Unevaluated properties are not allowed ('regulator-compatible' was unexpected)
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): regulators:regulator-v5: Unevaluated properties are not allowed ('regulator-compatible' was unexpected)
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): regulators:regulator-v6: Unevaluated properties are not allowed ('regulator-compatible' was unexpected)
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: regulator@34 (maxim,max8660): regulators:regulator-v7: Unevaluated properties are not allowed ('regulator-compatible' was unexpected)
from schema $id: http://devicetree.org/schemas/regulator/max8660.yaml#
pxa300-raumfeld-speaker-l.dtb: pinctrl@...10000 (pinconf-single): 'led-pins-a', 'led-pins-b' do not match any of the regexes: '-pins(-[0-9]+)?$|-pin$', '^pinctrl-[0-9]+$'
from schema $id: http://devicetree.org/schemas/pinctrl/pinctrl-single.yaml#
pxa300-raumfeld-speaker-l.dtb: /pxabus/mmc@...00000: failed to match any schema with compatible: ['marvell,pxa-mmc']
pxa300-raumfeld-speaker-l.dtb: /pxabus/mmc@...00000: failed to match any schema with compatible: ['marvell,pxa-mmc']
pxa300-raumfeld-speaker-l.dtb: /pxabus/usb@...00000: failed to match any schema with compatible: ['marvell,pxa-ohci']
pxa300-raumfeld-speaker-l.dtb: ssp@...00000 (mrvl,pxa3xx-ssp): $nodename:0: 'ssp@...00000' does not match '^spi(@.*|-([0-9]|[1-9][0-9]+))?$'
from schema $id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
pxa300-raumfeld-speaker-l.dtb: ssp@...00000 (mrvl,pxa3xx-ssp): $nodename:0: 'ssp@...00000' does not match '^spi(@.*|-([0-9]|[1-9][0-9]+))?$'
from schema $id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
pxa300-raumfeld-speaker-l.dtb: ssp@...00000 (mrvl,pxa3xx-ssp): $nodename:0: 'ssp@...00000' does not match '^spi(@.*|-([0-9]|[1-9][0-9]+))?$'
from schema $id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
pxa300-raumfeld-speaker-l.dtb: ssp@...00000 (mrvl,pxa3xx-ssp): $nodename:0: 'ssp@...00000' does not match '^spi(@.*|-([0-9]|[1-9][0-9]+))?$'
from schema $id: http://devicetree.org/schemas/spi/marvell,mmp2-ssp.yaml#
pxa300-raumfeld-speaker-l.dtb: /pxabus/timer@...00000: failed to match any schema with compatible: ['marvell,pxa-timer']
pxa300-raumfeld-speaker-l.dtb: /pxabus/display-controller@...00000: failed to match any schema with compatible: ['marvell,pxa300-gcu']
pxa300-raumfeld-speaker-l.dtb: /clocks/clocks: failed to match any schema with compatible: ['marvell,pxa300-clocks']
pxa300-raumfeld-speaker-l.dtb: /ssp-dai0: failed to match any schema with compatible: ['mrvl,pxa-ssp-dai']
pxa300-raumfeld-speaker-l.dtb: /ssp-dai1: failed to match any schema with compatible: ['mrvl,pxa-ssp-dai']
pxa300-raumfeld-speaker-l.dtb: spi (spi-gpio): gpio-miso: False schema does not allow [8, 98, 0]
from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#
pxa300-raumfeld-speaker-l.dtb: spi (spi-gpio): gpio-mosi: False schema does not allow [8, 97, 0]
from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#
pxa300-raumfeld-speaker-l.dtb: spi (spi-gpio): gpio-sck: False schema does not allow [8, 95, 0]
from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#
pxa300-raumfeld-speaker-l.dtb: spi (spi-gpio): 'sck-gpios' is a required property
from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#
pxa300-raumfeld-speaker-l.dtb: spi (spi-gpio): Unevaluated properties are not allowed ('gpio-miso', 'gpio-mosi', 'gpio-sck' were unexpected)
from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#
pxa300-raumfeld-speaker-l.dtb: dac@2 (ti,dac7512): 'vcc-supply' does not match any of the regexes: '^pinctrl-[0-9]+$'
from schema $id: http://devicetree.org/schemas/iio/dac/ti,dac7512.yaml#
pxa300-raumfeld-speaker-l.dtb: gpio-keys (gpio-keys): 'on-off', 'rescue-boot', 'setup' do not match any of the regexes: '^(button|event|key|switch|(button|event|key|switch)-[a-z0-9-]+|[a-z0-9-]+-(button|event|key|switch))$', '^pinctrl-[0-9]+$'
from schema $id: http://devicetree.org/schemas/input/gpio-keys.yaml#
pxa300-raumfeld-speaker-l.dtb: leds (gpio-leds): 'left', 'right' do not match any of the regexes: '(^led-[0-9a-f]$|led)', '^pinctrl-[0-9]+$'
from schema $id: http://devicetree.org/schemas/leds/leds-gpio.yaml#:%!
It would be good to at least address the warnings for nodes that
have an existing yaml binding. Converting the remaining others or
writing new ones takes more time and I wouldn't stress out about
those (yet).
Arnd
Powered by blists - more mailing lists