On 09.10.2021 22:13:02, Vincent Mailhol wrote: > The statically enabled features of a CAN controller can be retrieved > using below formula: > > | u32 ctrlmode_static = priv->ctrlmode & ~priv->ctrlmode_supported; > > As such, there is no need to store this information. This patch remove > the field ctrlmode_static of struct can_priv and provides, in > replacement, the inline function can_get_static_ctrlmode() which > returns the same value. > > A condition sine qua non for this to work is that the controller > static modes should never be set in can_priv::ctrlmode_supported. This > is already the case for existing drivers, however, we added a warning > message in can_set_static_ctrlmode() to check that. Please make the can_set_static_ctrlmode to return an error in case of a problem. Adjust the drivers using the function is this patch, too. Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung West/Dortmund | Phone: +49-231-2826-924 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |