2024-01-24 15:24:46

by Marco Pagani

[permalink] [raw]
Subject: [PATCH] fpga: remove redundant checks for bridge ops

Commit 0d70af3c2530 ("fpga: bridge: Use standard dev_release for class
driver") introduced a check in fpga_bridge_register() that prevents
registering a bridge without ops, making checking on every call
redundant.

Signed-off-by: Marco Pagani <[email protected]>
---
drivers/fpga/fpga-bridge.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/fpga/fpga-bridge.c b/drivers/fpga/fpga-bridge.c
index a024be2b84e2..e0a5ef318f5e 100644
--- a/drivers/fpga/fpga-bridge.c
+++ b/drivers/fpga/fpga-bridge.c
@@ -30,7 +30,7 @@ int fpga_bridge_enable(struct fpga_bridge *bridge)
{
dev_dbg(&bridge->dev, "enable\n");

- if (bridge->br_ops && bridge->br_ops->enable_set)
+ if (bridge->br_ops->enable_set)
return bridge->br_ops->enable_set(bridge, 1);

return 0;
@@ -48,7 +48,7 @@ int fpga_bridge_disable(struct fpga_bridge *bridge)
{
dev_dbg(&bridge->dev, "disable\n");

- if (bridge->br_ops && bridge->br_ops->enable_set)
+ if (bridge->br_ops->enable_set)
return bridge->br_ops->enable_set(bridge, 0);

return 0;
@@ -401,7 +401,7 @@ void fpga_bridge_unregister(struct fpga_bridge *bridge)
* If the low level driver provides a method for putting bridge into
* a desired state upon unregister, do it.
*/
- if (bridge->br_ops && bridge->br_ops->fpga_bridge_remove)
+ if (bridge->br_ops->fpga_bridge_remove)
bridge->br_ops->fpga_bridge_remove(bridge);

device_unregister(&bridge->dev);

base-commit: c849ecb2ae8413f86c84627cb0af06dffce4e215
--
2.43.0



2024-01-30 12:03:44

by Xu Yilun

[permalink] [raw]
Subject: Re: [PATCH] fpga: remove redundant checks for bridge ops

On Wed, Jan 24, 2024 at 04:24:07PM +0100, Marco Pagani wrote:
> Commit 0d70af3c2530 ("fpga: bridge: Use standard dev_release for class
> driver") introduced a check in fpga_bridge_register() that prevents
> registering a bridge without ops, making checking on every call
> redundant.
>
> Signed-off-by: Marco Pagani <[email protected]>
> ---
> drivers/fpga/fpga-bridge.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/fpga/fpga-bridge.c b/drivers/fpga/fpga-bridge.c
> index a024be2b84e2..e0a5ef318f5e 100644
> --- a/drivers/fpga/fpga-bridge.c
> +++ b/drivers/fpga/fpga-bridge.c
> @@ -30,7 +30,7 @@ int fpga_bridge_enable(struct fpga_bridge *bridge)
> {
> dev_dbg(&bridge->dev, "enable\n");
>
> - if (bridge->br_ops && bridge->br_ops->enable_set)
> + if (bridge->br_ops->enable_set)
> return bridge->br_ops->enable_set(bridge, 1);
>
> return 0;
> @@ -48,7 +48,7 @@ int fpga_bridge_disable(struct fpga_bridge *bridge)
> {
> dev_dbg(&bridge->dev, "disable\n");
>
> - if (bridge->br_ops && bridge->br_ops->enable_set)
> + if (bridge->br_ops->enable_set)
> return bridge->br_ops->enable_set(bridge, 0);
>
> return 0;
> @@ -401,7 +401,7 @@ void fpga_bridge_unregister(struct fpga_bridge *bridge)
> * If the low level driver provides a method for putting bridge into
> * a desired state upon unregister, do it.
> */
> - if (bridge->br_ops && bridge->br_ops->fpga_bridge_remove)
> + if (bridge->br_ops->fpga_bridge_remove)
> bridge->br_ops->fpga_bridge_remove(bridge);

Also for state_show()?

Thanks,
Yilun

>
> device_unregister(&bridge->dev);
>
> base-commit: c849ecb2ae8413f86c84627cb0af06dffce4e215
> --
> 2.43.0
>
>

2024-02-01 15:19:18

by Marco Pagani

[permalink] [raw]
Subject: Re: [PATCH] fpga: remove redundant checks for bridge ops



On 2024-01-30 10:18, Xu Yilun wrote:
> On Wed, Jan 24, 2024 at 04:24:07PM +0100, Marco Pagani wrote:
>> Commit 0d70af3c2530 ("fpga: bridge: Use standard dev_release for class
>> driver") introduced a check in fpga_bridge_register() that prevents
>> registering a bridge without ops, making checking on every call
>> redundant.
>>
>> Signed-off-by: Marco Pagani <[email protected]>
>> ---
>> drivers/fpga/fpga-bridge.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/fpga/fpga-bridge.c b/drivers/fpga/fpga-bridge.c
>> index a024be2b84e2..e0a5ef318f5e 100644
>> --- a/drivers/fpga/fpga-bridge.c
>> +++ b/drivers/fpga/fpga-bridge.c
>> @@ -30,7 +30,7 @@ int fpga_bridge_enable(struct fpga_bridge *bridge)
>> {
>> dev_dbg(&bridge->dev, "enable\n");
>>
>> - if (bridge->br_ops && bridge->br_ops->enable_set)
>> + if (bridge->br_ops->enable_set)
>> return bridge->br_ops->enable_set(bridge, 1);
>>
>> return 0;
>> @@ -48,7 +48,7 @@ int fpga_bridge_disable(struct fpga_bridge *bridge)
>> {
>> dev_dbg(&bridge->dev, "disable\n");
>>
>> - if (bridge->br_ops && bridge->br_ops->enable_set)
>> + if (bridge->br_ops->enable_set)
>> return bridge->br_ops->enable_set(bridge, 0);
>>
>> return 0;
>> @@ -401,7 +401,7 @@ void fpga_bridge_unregister(struct fpga_bridge *bridge)
>> * If the low level driver provides a method for putting bridge into
>> * a desired state upon unregister, do it.
>> */
>> - if (bridge->br_ops && bridge->br_ops->fpga_bridge_remove)
>> + if (bridge->br_ops->fpga_bridge_remove)
>> bridge->br_ops->fpga_bridge_remove(bridge);
>
> Also for state_show()?

Right, I missed that one. I'll remove it in v2

Thanks,
Marco