Re: [PATCH v13 03/10] drm/display: Add Type-C switch helpers

From: Andy Shevchenko
Date: Mon Mar 06 2023 - 06:49:59 EST


On Fri, Mar 03, 2023 at 10:33:43PM +0800, Pin-yen Lin wrote:
> Add helpers to register and unregister Type-C "switches" for bridges
> capable of switching their output between two downstream devices.
>
> The helper registers USB Type-C mode switches when the "mode-switch"
> and the "reg" properties are available in Device Tree.

...

> + port_data->typec_mux = typec_mux_register(dev, &mux_desc);
> + if (IS_ERR(port_data->typec_mux)) {
> + ret = PTR_ERR(port_data->typec_mux);
> + dev_err(dev, "Mode switch register for port %d failed: %d\n",
> + port_num, ret);

> + return ret;
> + }
> +
> + return 0;

Can be simply

port_data->typec_mux = typec_mux_register(dev, &mux_desc);
ret = PTR_ERR_OR_ZERO(port_data->typec_mux);
if (ret)
dev_err(dev, "Mode switch register for port %d failed: %d\n",
port_num, ret);

return ret;

...

> + switch_desc->typec_ports = devm_kcalloc(dev, switch_desc->num_typec_switches,
> + sizeof(struct drm_dp_typec_port_data),
> + GFP_KERNEL);
> + if (!switch_desc->typec_ports)
> + return -ENOMEM;

How often this function _can_ be called during the runtime?
If it's _possible_ to call it infinite times, consider *not* using devm.

--
With Best Regards,
Andy Shevchenko