2021-05-11 12:56:05

by Heikki Krogerus

[permalink] [raw]
Subject: [PATCH] ACPI/IORT: Handle device properties with software node API

The older device property API is going to be removed.
Replacing the device_add_properties() call with software
node API equivalent device_create_managed_software_node().

Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")
Signed-off-by: Heikki Krogerus <[email protected]>
---
drivers/acpi/arm64/iort.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
index 3912a1f6058e5..e34937e11186a 100644
--- a/drivers/acpi/arm64/iort.c
+++ b/drivers/acpi/arm64/iort.c
@@ -976,7 +976,7 @@ static void iort_named_component_init(struct device *dev,
FIELD_GET(ACPI_IORT_NC_PASID_BITS,
nc->node_flags));

- if (device_add_properties(dev, props))
+ if (device_create_managed_software_node(dev, props, NULL))
dev_warn(dev, "Could not add device properties\n");
}

--
2.30.2


2021-05-11 13:53:37

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH] ACPI/IORT: Handle device properties with software node API

On Tue, May 11, 2021 at 2:55 PM Heikki Krogerus
<[email protected]> wrote:
>
> The older device property API is going to be removed.
> Replacing the device_add_properties() call with software
> node API equivalent device_create_managed_software_node().
>
> Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")
> Signed-off-by: Heikki Krogerus <[email protected]>
> ---
> drivers/acpi/arm64/iort.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
> index 3912a1f6058e5..e34937e11186a 100644
> --- a/drivers/acpi/arm64/iort.c
> +++ b/drivers/acpi/arm64/iort.c
> @@ -976,7 +976,7 @@ static void iort_named_component_init(struct device *dev,
> FIELD_GET(ACPI_IORT_NC_PASID_BITS,
> nc->node_flags));
>
> - if (device_add_properties(dev, props))
> + if (device_create_managed_software_node(dev, props, NULL))
> dev_warn(dev, "Could not add device properties\n");
> }
>
> --

Thanks!

I can take this through the ACPI tree if there are no objections.

2021-05-14 08:41:29

by Hanjun Guo

[permalink] [raw]
Subject: Re: [PATCH] ACPI/IORT: Handle device properties with software node API

On 2021/5/11 21:51, Rafael J. Wysocki wrote:
> On Tue, May 11, 2021 at 2:55 PM Heikki Krogerus
> <[email protected]> wrote:
>> The older device property API is going to be removed.
>> Replacing the device_add_properties() call with software
>> node API equivalent device_create_managed_software_node().
>>
>> Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")
>> Signed-off-by: Heikki Krogerus<[email protected]>
>> ---
>> drivers/acpi/arm64/iort.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
>> index 3912a1f6058e5..e34937e11186a 100644
>> --- a/drivers/acpi/arm64/iort.c
>> +++ b/drivers/acpi/arm64/iort.c
>> @@ -976,7 +976,7 @@ static void iort_named_component_init(struct device *dev,
>> FIELD_GET(ACPI_IORT_NC_PASID_BITS,
>> nc->node_flags));
>>
>> - if (device_add_properties(dev, props))
>> + if (device_create_managed_software_node(dev, props, NULL))
>> dev_warn(dev, "Could not add device properties\n");
>> }
>>
>> --
> Thanks!
>
> I can take this through the ACPI tree if there are no objections.

Since this is related to device property API refactor, I'm
fine with it.

Lorenzo, what's your position?

Thanks
Hanjun

2021-05-14 11:04:12

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH] ACPI/IORT: Handle device properties with software node API

On Tue, May 11, 2021 at 03:55:28PM +0300, Heikki Krogerus wrote:
> The older device property API is going to be removed.
> Replacing the device_add_properties() call with software
> node API equivalent device_create_managed_software_node().
>
> Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")

Is this really fixing anything ? I am not sure I understand what you
would like to achieve with this tag.

> Signed-off-by: Heikki Krogerus <[email protected]>
> ---
> drivers/acpi/arm64/iort.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

With the above comment clarified:

Acked-by: Lorenzo Pieralisi <[email protected]>

> diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
> index 3912a1f6058e5..e34937e11186a 100644
> --- a/drivers/acpi/arm64/iort.c
> +++ b/drivers/acpi/arm64/iort.c
> @@ -976,7 +976,7 @@ static void iort_named_component_init(struct device *dev,
> FIELD_GET(ACPI_IORT_NC_PASID_BITS,
> nc->node_flags));
>
> - if (device_add_properties(dev, props))
> + if (device_create_managed_software_node(dev, props, NULL))
> dev_warn(dev, "Could not add device properties\n");
> }
>
> --
> 2.30.2
>

2021-05-14 18:34:53

by Heikki Krogerus

[permalink] [raw]
Subject: Re: [PATCH] ACPI/IORT: Handle device properties with software node API

On Fri, May 14, 2021 at 11:39:12AM +0100, Lorenzo Pieralisi wrote:
> On Tue, May 11, 2021 at 03:55:28PM +0300, Heikki Krogerus wrote:
> > The older device property API is going to be removed.
> > Replacing the device_add_properties() call with software
> > node API equivalent device_create_managed_software_node().
> >
> > Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")
>
> Is this really fixing anything ? I am not sure I understand what you
> would like to achieve with this tag.

Right now it's not possible to simply remove the old API because some
of the maintainers want to take care of the conversion themselves, but
at the same time I also do not want to see any new releases of the
kernel that introduce more users for it. That's why it's a fix.


> > Signed-off-by: Heikki Krogerus <[email protected]>
> > ---
> > drivers/acpi/arm64/iort.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
>
> With the above comment clarified:
>
> Acked-by: Lorenzo Pieralisi <[email protected]>
>
> > diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
> > index 3912a1f6058e5..e34937e11186a 100644
> > --- a/drivers/acpi/arm64/iort.c
> > +++ b/drivers/acpi/arm64/iort.c
> > @@ -976,7 +976,7 @@ static void iort_named_component_init(struct device *dev,
> > FIELD_GET(ACPI_IORT_NC_PASID_BITS,
> > nc->node_flags));
> >
> > - if (device_add_properties(dev, props))
> > + if (device_create_managed_software_node(dev, props, NULL))
> > dev_warn(dev, "Could not add device properties\n");
> > }
> >
> > --
> > 2.30.2
> >

thanks,

--
heikki

2021-05-18 05:19:36

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH] ACPI/IORT: Handle device properties with software node API

On Fri, May 14, 2021 at 3:13 PM Heikki Krogerus
<[email protected]> wrote:
>
> On Fri, May 14, 2021 at 11:39:12AM +0100, Lorenzo Pieralisi wrote:
> > On Tue, May 11, 2021 at 03:55:28PM +0300, Heikki Krogerus wrote:
> > > The older device property API is going to be removed.
> > > Replacing the device_add_properties() call with software
> > > node API equivalent device_create_managed_software_node().
> > >
> > > Fixes: 434b73e61cc6 ("iommu/arm-smmu-v3: Use device properties for pasid-num-bits")
> >
> > Is this really fixing anything ? I am not sure I understand what you
> > would like to achieve with this tag.
>
> Right now it's not possible to simply remove the old API because some
> of the maintainers want to take care of the conversion themselves, but
> at the same time I also do not want to see any new releases of the
> kernel that introduce more users for it. That's why it's a fix.

With the assumption that the above clarification is sufficient,
applied as 5.14 material, thanks!