2024-04-04 19:54:47

by Andreas Kemnade

[permalink] [raw]
Subject: [PATCH v2 0/2] mfd: Add ROHM BD71879

Add software-compatible variant of the BD71828.

Changes in v2:
allow compatible = "rohm,bd71879", "rohm,bd71828"

Andreas Kemnade (2):
dt-bindings: mfd: Add ROHM BD71879
mfd: rohm-bd71828: Add software-compatible variant BD71879

.../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
drivers/mfd/rohm-bd71828.c | 4 ++++
2 files changed, 10 insertions(+), 1 deletion(-)

--
2.39.2



2024-04-04 19:54:47

by Andreas Kemnade

[permalink] [raw]
Subject: [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

As this chip was seen in several devices in the wild, add it.

Signed-off-by: Andreas Kemnade <[email protected]>
Suggested-by: Matti Vaittinen <[email protected]>
---
.../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
index 0b62f854bf6b..07f99738fcf6 100644
--- a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
+++ b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
@@ -17,7 +17,12 @@ description: |

properties:
compatible:
- const: rohm,bd71828
+ oneOf:
+ - const: rohm,bd71828
+
+ - items:
+ - const: rohm,bd71879
+ - const: rohm,bd71828

reg:
description:
--
2.39.2


2024-04-04 19:54:59

by Andreas Kemnade

[permalink] [raw]
Subject: [PATCH v2 2/2] mfd: rohm-bd71828: Add software-compatible variant BD71879

Add the BD71879 PMIC which is software-compatible to the BD71828, so reuse
the same device_type enum.

Signed-off-by: Andreas Kemnade <[email protected]>
Suggested-by: Matti Vaittinen <[email protected]>
Acked-by: Matti Vaittinen <[email protected]>
---
drivers/mfd/rohm-bd71828.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/mfd/rohm-bd71828.c b/drivers/mfd/rohm-bd71828.c
index 4a1fa8a0d76a..f0b444690d4d 100644
--- a/drivers/mfd/rohm-bd71828.c
+++ b/drivers/mfd/rohm-bd71828.c
@@ -585,6 +585,10 @@ static const struct of_device_id bd71828_of_match[] = {
{
.compatible = "rohm,bd71828",
.data = (void *)ROHM_CHIP_TYPE_BD71828,
+ }, {
+ .compatible = "rohm,bd71879",
+ /* equivalent from a software point of view */
+ .data = (void *)ROHM_CHIP_TYPE_BD71828,
}, {
.compatible = "rohm,bd71815",
.data = (void *)ROHM_CHIP_TYPE_BD71815,
--
2.39.2


2024-04-05 07:00:39

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] mfd: rohm-bd71828: Add software-compatible variant BD71879

On 04/04/2024 21:54, Andreas Kemnade wrote:
> Add the BD71879 PMIC which is software-compatible to the BD71828, so reuse
> the same device_type enum.
>
> Signed-off-by: Andreas Kemnade <[email protected]>
> Suggested-by: Matti Vaittinen <[email protected]>
> Acked-by: Matti Vaittinen <[email protected]>
> ---

Now you can drop this patch. The benefit of the compatibility is to drop
this code.

Best regards,
Krzysztof


2024-04-05 07:04:58

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

On 04/04/2024 21:54, Andreas Kemnade wrote:
> As this chip was seen in several devices in the wild, add it.
>
> Signed-off-by: Andreas Kemnade <[email protected]>
> Suggested-by: Matti Vaittinen <[email protected]>
> ---
> .../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)

Acked-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof


2024-04-10 07:58:28

by Matti Vaittinen

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

On 4/4/24 22:54, Andreas Kemnade wrote:
> As this chip was seen in several devices in the wild, add it.
>
> Signed-off-by: Andreas Kemnade <[email protected]>
> Suggested-by: Matti Vaittinen <[email protected]>
> ---
> .../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> index 0b62f854bf6b..07f99738fcf6 100644
> --- a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> +++ b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> @@ -17,7 +17,12 @@ description: |
>
> properties:
> compatible:
> - const: rohm,bd71828
> + oneOf:
> + - const: rohm,bd71828
> +
> + - items:
> + - const: rohm,bd71879
> + - const: rohm,bd71828
>
> reg:
> description:

Am I correct, this reads as:

Either
compatible = rohm,bd71828
or
compatible = rohm,bd71879, rohm,bd71828

but not compatible = rohm,bd71879?

If so, this looks ok to me. :)


--
Matti Vaittinen
Linux kernel developer at ROHM Semiconductors
Oulu Finland

~~ When things go utterly wrong vim users can always type :help! ~~


2024-04-10 10:04:15

by Conor Dooley

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

On Wed, Apr 10, 2024 at 10:57:08AM +0300, Matti Vaittinen wrote:
> On 4/4/24 22:54, Andreas Kemnade wrote:
> > As this chip was seen in several devices in the wild, add it.
> >
> > Signed-off-by: Andreas Kemnade <[email protected]>
> > Suggested-by: Matti Vaittinen <[email protected]>
> > ---
> > .../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
> > 1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> > index 0b62f854bf6b..07f99738fcf6 100644
> > --- a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> > +++ b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
> > @@ -17,7 +17,12 @@ description: |
> > properties:
> > compatible:
> > - const: rohm,bd71828
> > + oneOf:
> > + - const: rohm,bd71828
> > +
> > + - items:
> > + - const: rohm,bd71879
> > + - const: rohm,bd71828
> > reg:
> > description:
>
> Am I correct, this reads as:
>
> Either
> compatible = rohm,bd71828
> or
> compatible = rohm,bd71879, rohm,bd71828
>
> but not compatible = rohm,bd71879?

Correct.


Attachments:
(No filename) (1.24 kB)
signature.asc (235.00 B)
Download all attachments

2024-04-10 10:57:59

by Matti Vaittinen

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

On 4/10/24 13:03, Conor Dooley wrote:
> On Wed, Apr 10, 2024 at 10:57:08AM +0300, Matti Vaittinen wrote:
>> On 4/4/24 22:54, Andreas Kemnade wrote:
>>> As this chip was seen in several devices in the wild, add it.
>>>
>>> Signed-off-by: Andreas Kemnade <[email protected]>
>>> Suggested-by: Matti Vaittinen <[email protected]>
>>> ---
>>> .../devicetree/bindings/mfd/rohm,bd71828-pmic.yaml | 7 ++++++-
>>> 1 file changed, 6 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
>>> index 0b62f854bf6b..07f99738fcf6 100644
>>> --- a/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
>>> +++ b/Documentation/devicetree/bindings/mfd/rohm,bd71828-pmic.yaml
>>> @@ -17,7 +17,12 @@ description: |
>>> properties:
>>> compatible:
>>> - const: rohm,bd71828
>>> + oneOf:
>>> + - const: rohm,bd71828
>>> +
>>> + - items:
>>> + - const: rohm,bd71879
>>> + - const: rohm,bd71828
>>> reg:
>>> description:
>>
>> Am I correct, this reads as:
>>
>> Either
>> compatible = rohm,bd71828
>> or
>> compatible = rohm,bd71879, rohm,bd71828
>>
>> but not compatible = rohm,bd71879?
>
> Correct.

Thanks Conor!

I guess that if we later find out that there is a 'gizmo' in BD71828
which is not present on BD71879 - and if we write driver supporting
this, then we need to have handling for both the BD71879 and BD71828 in
this driver to ensure the fall-back wont happen. It's a bit ugly as I
think the fall-back compatible should be used only in case where the
"fall-back" HW can be guaranteed to have exactly same, or a subset of,
features of the "full board".

Well, I've been told these are similar by HW colleagues. I have my
doubts if 'similar' really is '_similar_', or if it's 'similar, except
of course...' - but let's trust the HW guys on this. We have the above
mentioned workaround if we should not have trusted...

Acked-By: Matti Vaittinen <[email protected]>

--
Matti Vaittinen
Linux kernel developer at ROHM Semiconductors
Oulu Finland

~~ When things go utterly wrong vim users can always type :help! ~~


2024-04-11 18:15:59

by Lee Jones

[permalink] [raw]
Subject: Re: (subset) [PATCH v2 1/2] dt-bindings: mfd: Add ROHM BD71879

On Thu, 04 Apr 2024 21:54:22 +0200, Andreas Kemnade wrote:
> As this chip was seen in several devices in the wild, add it.
>
>

Applied, thanks!

[1/2] dt-bindings: mfd: Add ROHM BD71879
commit: 9814ee9b64c06aae57c8a8f003014b3d90e09a3d

--
Lee Jones [李琼斯]