Re: [PATCH v2 5/5] dt-bindings: aspeed-lpc: Remove LPC partitioning
From: Andrew Jeffery
Date: Mon Dec 14 2020 - 19:13:56 EST
Hi Chiawei,
On Mon, 14 Dec 2020, at 13:14, ChiaWei Wang wrote:
> Hi Andrew & Rob,
>
> Do you have any suggestion on this patch?
Rob hasn't responded, but I think it will be easier to get an Ack out of him if
we do a v2 of the binding so we're not breaking backwards-compatibility with
the current definition. Concretely:
- compatible: One of:
"aspeed,ast2400-lpc", "simple-mfd"
"aspeed,ast2500-lpc", "simple-mfd"
Becomes something like:
- compatible: One of:
"aspeed,ast2400-lpc-v2", "simple-mfd"
"aspeed,ast2500-lpc-v2", "simple-mfd"
We can convert the in-tree devicetrees, immediately drop support for the
current binding in the drivers, and _only_ support v2 of the binding going
forward. That way your patches stay largely the same, the binding isn't
hamstrung as it is currently, and we're not trying to maintain code to support
the current binding definition - but we're also not pretending that old
devicetrees will work with newer kernels that only support the new binding
definition (which is the problem with your current patch series).
How does that sound?
As to how to implement this, I think we'll need to add some
of_device_is_compatible() checks in the relevant drivers to make sure that
they're using the new LPC binding, such as in
drivers/pinctrl/aspeed/pinctrl-aspeed-g5.c before we fetch the regmap on line
2657.
Sorry that this is dragging out a bit (and for the mess I made).
Cheers,
Andrew