[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5379D28F.1020200@intel.com>
Date: Mon, 19 May 2014 17:44:47 +0800
From: Lan Tianyu <tianyu.lan@...el.com>
To: Mika Westerberg <mika.westerberg@...ux.intel.com>,
Wolfram Sang <wsa@...-dreams.de>
CC: rjw@...ysocki.net, awilliam@...hat.com, lenb@...nel.org,
linux-i2c@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-acpi@...r.kernel.org
Subject: Re: [Patch V2 9/9] I2C/ACPI: Add CONFIG_I2C_ACPI config
On 05/19/2014 04:49 PM, Mika Westerberg wrote:
> On Sat, May 17, 2014 at 07:48:34PM +0200, Wolfram Sang wrote:
>> On Tue, Apr 29, 2014 at 11:16:09AM +0300, Mika Westerberg wrote:
>>> On Mon, Apr 28, 2014 at 10:27:48PM +0800, Lan Tianyu wrote:
>>>> This patch is to add CONFIG_I2C_ACPI. Current there is a race between
>>>> removing I2C ACPI operation region and ACPI AML code accessing.
>>>> So make i2c core built-in if CONFIG_I2C_ACPI is set.
>>>>
>>>> Signed-off-by: Lan Tianyu <tianyu.lan@...el.com>
>>>> ---
>>>> drivers/i2c/Kconfig | 17 ++++++++++++++++-
>>>> drivers/i2c/Makefile | 2 +-
>>>> include/linux/i2c.h | 2 +-
>>>> 3 files changed, 18 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig
>>>> index 7b7ea32..c670d49 100644
>>>> --- a/drivers/i2c/Kconfig
>>>> +++ b/drivers/i2c/Kconfig
>>>> @@ -2,7 +2,9 @@
>>>> # I2C subsystem configuration
>>>> #
>>>>
>>>> -menuconfig I2C
>>>> +menu "I2C support"
>>>> +
>>>> +config I2C
>>>> tristate "I2C support"
>>>> select RT_MUTEXES
>>>> ---help---
>>>> @@ -21,6 +23,17 @@ menuconfig I2C
>>>> This I2C support can also be built as a module. If so, the module
>>>> will be called i2c-core.
>>>>
>>>> +config I2C_ACPI
>>>> + bool "I2C ACPI support"
>>>> + select I2C
>>>> + depends on ACPI
>>>> + default y
>>>> + help
>>>> + Say Y here if you want to enable I2C ACPI function. ACPI table
>>>> + provides I2C slave devices' information to enumerate these devices.
>>>> + This option also allows ACPI AML code to access I2C slave devices
>>>> + via I2C ACPI operation region to fulfill ACPI method.
>>>
>>> I would prefer something like:
>>>
>>> Say Y here if you want to enable ACPI I2C support. This includes support
>>> for automatic enumeration of I2C slave devices and support for ACPI I2C
>>> Operation Regions. Operation Regions allow firmware (BIOS) code to
>>> access I2C slave devices, such as smart batteries through an I2C host
>>> controller driver.
>>>
>>> But it is really up to you so,
>>>
>>> Reviewed-by: Mika Westerberg <mika.westerberg@...ux.intel.com>
>>
>> How does this fit into the context of
>> 55e71edb81b2b45273e7b284cce13ff24bde846f ("i2c: move ACPI helpers into
>> the core")?
>
> With that commit we moved ACPI code to live inside I2C module (given
> that it was compiled as a module). However, you still can remove that
> module from userspace.
>
> With this patch we make sure that the I2C core can't be removed if you
> have ACPI enabled. This prevents the potential race.
>
Yes, these are the two patches' purposes. Thanks Mika's explanation. If you
like, I can merge them into one patch.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists