On 06/25/2014 01:01 PM, bhupesh.sharma@freescale.com wrote: >> What about function pointers in the priv? So that flexcan_read() becomes >> priv->read(). > That's what I propose (similar to what I did for C_CAN driver for 16-bit and 32-bit > reg interfaces using platform data): Yes...but... > bool module_is_be = false; ...module_is_be is not that simple, on PPC true must be the default to be compatible with existing dts. > module_is_be = get-endianess-from-DT-node; > > priv->read() = module_is_be ? flexcan_read_be : flexcan_read_le; Marc -- Pengutronix e.K. | Marc Kleine-Budde | Industrial Linux Solutions | Phone: +49-231-2826-924 | Vertretung West/Dortmund | Fax: +49-5121-206917-5555 | Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |