Re: [PATCH] I2C: Make I2C core able to be module when I2C_ACPI is selected.

From: Mika Westerberg
Date: Wed Aug 13 2014 - 03:08:27 EST


On Wed, Aug 13, 2014 at 10:50:32AM +0800, Lan Tianyu wrote:
> On 2014å08æ13æ 10:03, Wolfram Sang wrote:
> > On Tue, Aug 12, 2014 at 12:53:21PM +0300, Mika Westerberg wrote:
> >> On Mon, Aug 11, 2014 at 03:00:55PM +0800, Lan Tianyu wrote:
> >>> Commit da3c6647(I2C/ACPI: Clean up I2C ACPI code and Add CONFIG_I2C_ACPI
> >>> config) adds a new kernel config I2C_ACPI and make I2C core built in
> >>> when the config is selected. This is wrong because distributions
> >>> etc generally compile I2C as a module and the commit broken that.
> >>> This patch is to make I2C core able to be a module when I2C_ACPI is
> >>> selected. Original issue the commit da3c6647 tried to avoid will
> >>> be fixed in ACPICA and it's rarely triggered during unloading module.
> >>>
> >>> Signed-off-by: Lan Tianyu <tianyu.lan@xxxxxxxxx>
> >>
> >> I wonder if we can do
> >>
> >> depends on I2C=y
> >>
> >> here? If I understand it right, then we only build the ACPI_I2C if I2C
> >> is compiled into the kernel. That way the problem da3c6647 tried to
> >> solve doens't re-appear.
> >>
> >> We can later on relax this once ACPICA has been fixed. Thoughts?
> >
> > I had the same idea yet my travel to Chicago interrupted thinking about
> > it further. Once I get rid of my jetlag, I'll have a closer look. Unless
> > you already came up with the perfect solution until then, of course ;)
> >
>
> Hi Mika & Wolfram:
> I have one concern about "depends on I2C=y". If distribution config
> file selects I2C core as a module, the original code can enumerate I2C
> slave devices from ACPI table. But now I2C_ACPI depends on I2C core
> built in, the I2C module can't enumerate devices from ACPI table. This
> maybe a regression for distribution?

True, but only the I2C OpRegion parts needs to have I2C=y. Does it make
sense to name ACPI_I2C to ACPI_I2C_OPREGION (or something like that)
and only enable it when I2C=y? Then we would have ACPI I2C enumeration
still in place.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/