On Sun, 20 Nov 2016, Nicolae Rosia wrote: > On Fri, Nov 18, 2016 at 8:55 PM, Lee Jones <lee.jones@xxxxxxxxxx> wrote: > > On Sat, 12 Nov 2016, Nicolae Rosia wrote: > > > >> We want to get rid of global twl_i2c_{write/read}. > >> As a first step, allow clients to get the regmap and write directly > > > > What's stopping you from passing it through device data? > > > Could you elaborate a bit? > The regmaps are stored in struct twl_client [0], stored in struct > twl_private [1], both structs are defined in the source file, not in > header. > I could however just fix the problem by reworking the struct, exposing > it and use mfd_add_device as real mfd drivers do. Woah! Thanks for prompting me to read this driver. It's a bit of a mess isn't it? I think it would be best to convert it to use the MFD API, yes. It's common place to pass shared resources such as 'regmap' though device data. You can find many examples of *__set_drvdata throughout the kernel. > [0] http://lxr.free-electrons.com/source/drivers/mfd/twl-core.c#L152 > [1] http://lxr.free-electrons.com/source/drivers/mfd/twl-core.c#L163 -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html