linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
@ 2015-08-18  7:01 Javier Martinez Canillas
  2015-08-18  7:57 ` Krzysztof Kozlowski
  2015-08-19 19:28 ` Javier Martinez Canillas
  0 siblings, 2 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2015-08-18  7:01 UTC (permalink / raw)
  To: Kukjin Kim
  Cc: Krzysztof Kozlowski, Geert Uytterhoeven, Doug Anderson,
	Olof Johansson, Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel, Javier Martinez Canillas

The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
symbol because the driver uses some communication helper functions in
drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
CROS_EC_PROTO instead. Mixing select and depends can lead to circular
Kconfig dependencies so the MFD_CROS_EC select should be changed to a
depends on CROS_EC_PROTO instead.

But doing so will break git bisect-ability since MFD_CROS_EC will not
be enabled anymore unless the default configs first explicitly enable
the CROS_EC_PROTO dependency.

Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
---
 arch/arm/configs/exynos_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
index 1ff2bfa2e183..537391ea37ac 100644
--- a/arch/arm/configs/exynos_defconfig
+++ b/arch/arm/configs/exynos_defconfig
@@ -177,6 +177,7 @@ CONFIG_DMADEVICES=y
 CONFIG_PL330_DMA=y
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CROS_EC_CHARDEV=y
+CONFIG_CROS_EC_PROTO=y
 CONFIG_COMMON_CLK_MAX77686=y
 CONFIG_COMMON_CLK_MAX77802=y
 CONFIG_COMMON_CLK_S2MPS11=y
-- 
2.4.3


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
  2015-08-18  7:01 [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver Javier Martinez Canillas
@ 2015-08-18  7:57 ` Krzysztof Kozlowski
  2015-08-18  8:05   ` Javier Martinez Canillas
  2015-08-19 19:28 ` Javier Martinez Canillas
  1 sibling, 1 reply; 6+ messages in thread
From: Krzysztof Kozlowski @ 2015-08-18  7:57 UTC (permalink / raw)
  To: Javier Martinez Canillas, Kukjin Kim
  Cc: Geert Uytterhoeven, Doug Anderson, Olof Johansson,
	Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

On 18.08.2015 16:01, Javier Martinez Canillas wrote:
> The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
> symbol because the driver uses some communication helper functions in
> drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
> CROS_EC_PROTO instead. Mixing select and depends can lead to circular
> Kconfig dependencies so the MFD_CROS_EC select should be changed to a
> depends on CROS_EC_PROTO instead.
> 
> But doing so will break git bisect-ability since MFD_CROS_EC will not
> be enabled anymore unless the default configs first explicitly enable
> the CROS_EC_PROTO dependency.
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
> ---
>  arch/arm/configs/exynos_defconfig | 1 +
>  1 file changed, 1 insertion(+)

I saw the discussion about circular dependency but I wasn't following
it. Currently the CROS_EC_PROTO is not user-selectable. How can you
depend on it? How can be enabled on different configs (customized by user)?

Maybe the questions are answered by code in different patches?

Best regards,
Krzysztof


> 
> diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
> index 1ff2bfa2e183..537391ea37ac 100644
> --- a/arch/arm/configs/exynos_defconfig
> +++ b/arch/arm/configs/exynos_defconfig
> @@ -177,6 +177,7 @@ CONFIG_DMADEVICES=y
>  CONFIG_PL330_DMA=y
>  CONFIG_CHROME_PLATFORMS=y
>  CONFIG_CROS_EC_CHARDEV=y
> +CONFIG_CROS_EC_PROTO=y
>  CONFIG_COMMON_CLK_MAX77686=y
>  CONFIG_COMMON_CLK_MAX77802=y
>  CONFIG_COMMON_CLK_S2MPS11=y
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
  2015-08-18  7:57 ` Krzysztof Kozlowski
@ 2015-08-18  8:05   ` Javier Martinez Canillas
  2015-08-18  8:09     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 6+ messages in thread
From: Javier Martinez Canillas @ 2015-08-18  8:05 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Kukjin Kim
  Cc: Geert Uytterhoeven, Doug Anderson, Olof Johansson,
	Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Hello Krzysztof,

On 08/18/2015 09:57 AM, Krzysztof Kozlowski wrote:
> On 18.08.2015 16:01, Javier Martinez Canillas wrote:
>> The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
>> symbol because the driver uses some communication helper functions in
>> drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
>> CROS_EC_PROTO instead. Mixing select and depends can lead to circular
>> Kconfig dependencies so the MFD_CROS_EC select should be changed to a
>> depends on CROS_EC_PROTO instead.
>>
>> But doing so will break git bisect-ability since MFD_CROS_EC will not
>> be enabled anymore unless the default configs first explicitly enable
>> the CROS_EC_PROTO dependency.
>>
>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>> ---
>>  arch/arm/configs/exynos_defconfig | 1 +
>>  1 file changed, 1 insertion(+)
> 
> I saw the discussion about circular dependency but I wasn't following
> it. Currently the CROS_EC_PROTO is not user-selectable. How can you
> depend on it? How can be enabled on different configs (customized by user)?
> 
> Maybe the questions are answered by code in different patches?

Yes, that's why I posted "[PATCH] platform/chrome: Make CROS_EC_PROTO
a user selectable option" [0].

I posted as separate patches because there isn't a dependency between
them and once all the defconfig patches and the patch to make the
CROS_EC_PROTO symbol user selectable lands, I'll post the patch to
change select for depends on to avoid a regression.

Maybe I should had posted as a series (or at least cc all the people
in all the patches) to not left these questions unanswered...

> 
> Best regards,
> Krzysztof
> 
> 

[0]: https://lkml.org/lkml/2015/8/18/61

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
  2015-08-18  8:05   ` Javier Martinez Canillas
@ 2015-08-18  8:09     ` Krzysztof Kozlowski
  2015-08-18  8:12       ` Javier Martinez Canillas
  0 siblings, 1 reply; 6+ messages in thread
From: Krzysztof Kozlowski @ 2015-08-18  8:09 UTC (permalink / raw)
  To: Javier Martinez Canillas, Kukjin Kim
  Cc: Geert Uytterhoeven, Doug Anderson, Olof Johansson,
	Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

On 18.08.2015 17:05, Javier Martinez Canillas wrote:
> Hello Krzysztof,
> 
> On 08/18/2015 09:57 AM, Krzysztof Kozlowski wrote:
>> On 18.08.2015 16:01, Javier Martinez Canillas wrote:
>>> The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
>>> symbol because the driver uses some communication helper functions in
>>> drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
>>> CROS_EC_PROTO instead. Mixing select and depends can lead to circular
>>> Kconfig dependencies so the MFD_CROS_EC select should be changed to a
>>> depends on CROS_EC_PROTO instead.
>>>
>>> But doing so will break git bisect-ability since MFD_CROS_EC will not
>>> be enabled anymore unless the default configs first explicitly enable
>>> the CROS_EC_PROTO dependency.
>>>
>>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>> ---
>>>  arch/arm/configs/exynos_defconfig | 1 +
>>>  1 file changed, 1 insertion(+)
>>
>> I saw the discussion about circular dependency but I wasn't following
>> it. Currently the CROS_EC_PROTO is not user-selectable. How can you
>> depend on it? How can be enabled on different configs (customized by user)?
>>
>> Maybe the questions are answered by code in different patches?
> 
> Yes, that's why I posted "[PATCH] platform/chrome: Make CROS_EC_PROTO
> a user selectable option" [0].
> 
> I posted as separate patches because there isn't a dependency between
> them and once all the defconfig patches and the patch to make the
> CROS_EC_PROTO symbol user selectable lands, I'll post the patch to
> change select for depends on to avoid a regression.

Makes sense now.

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

> 
> Maybe I should had posted as a series (or at least cc all the people
> in all the patches) to not left these questions unanswered...

Yep, Cc-ing or a short cover letter would probably answer my question. :)

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
  2015-08-18  8:09     ` Krzysztof Kozlowski
@ 2015-08-18  8:12       ` Javier Martinez Canillas
  0 siblings, 0 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2015-08-18  8:12 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Kukjin Kim
  Cc: Geert Uytterhoeven, Doug Anderson, Olof Johansson,
	Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Hello Krzysztof,

On 08/18/2015 10:09 AM, Krzysztof Kozlowski wrote:
> On 18.08.2015 17:05, Javier Martinez Canillas wrote:
>> Hello Krzysztof,
>>
>> On 08/18/2015 09:57 AM, Krzysztof Kozlowski wrote:
>>> On 18.08.2015 16:01, Javier Martinez Canillas wrote:
>>>> The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
>>>> symbol because the driver uses some communication helper functions in
>>>> drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
>>>> CROS_EC_PROTO instead. Mixing select and depends can lead to circular
>>>> Kconfig dependencies so the MFD_CROS_EC select should be changed to a
>>>> depends on CROS_EC_PROTO instead.
>>>>
>>>> But doing so will break git bisect-ability since MFD_CROS_EC will not
>>>> be enabled anymore unless the default configs first explicitly enable
>>>> the CROS_EC_PROTO dependency.
>>>>
>>>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>>> ---
>>>>  arch/arm/configs/exynos_defconfig | 1 +
>>>>  1 file changed, 1 insertion(+)
>>>
>>> I saw the discussion about circular dependency but I wasn't following
>>> it. Currently the CROS_EC_PROTO is not user-selectable. How can you
>>> depend on it? How can be enabled on different configs (customized by user)?
>>>
>>> Maybe the questions are answered by code in different patches?
>>
>> Yes, that's why I posted "[PATCH] platform/chrome: Make CROS_EC_PROTO
>> a user selectable option" [0].
>>
>> I posted as separate patches because there isn't a dependency between
>> them and once all the defconfig patches and the patch to make the
>> CROS_EC_PROTO symbol user selectable lands, I'll post the patch to
>> change select for depends on to avoid a regression.
> 
> Makes sense now.
> 
> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
> 

Thanks!

>>
>> Maybe I should had posted as a series (or at least cc all the people
>> in all the patches) to not left these questions unanswered...
> 
> Yep, Cc-ing or a short cover letter would probably answer my question. :)
>

Yes, sorry about that.
 
> Best regards,
> Krzysztof
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver
  2015-08-18  7:01 [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver Javier Martinez Canillas
  2015-08-18  7:57 ` Krzysztof Kozlowski
@ 2015-08-19 19:28 ` Javier Martinez Canillas
  1 sibling, 0 replies; 6+ messages in thread
From: Javier Martinez Canillas @ 2015-08-19 19:28 UTC (permalink / raw)
  To: Kukjin Kim
  Cc: Krzysztof Kozlowski, Geert Uytterhoeven, Doug Anderson,
	Olof Johansson, Gwendal Grignou, Sjoerd Simons, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Hello,

On 08/18/2015 09:01 AM, Javier Martinez Canillas wrote:
> The ChromeOS mfd driver (MFD_CROS_EC) select the CROS_EC_PROTO config
> symbol because the driver uses some communication helper functions in
> drivers/platform/chrome/cros_ec_proto.c but other drivers depends on
> CROS_EC_PROTO instead. Mixing select and depends can lead to circular
> Kconfig dependencies so the MFD_CROS_EC select should be changed to a
> depends on CROS_EC_PROTO instead.
> 
> But doing so will break git bisect-ability since MFD_CROS_EC will not
> be enabled anymore unless the default configs first explicitly enable
> the CROS_EC_PROTO dependency.
> 
> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>

This patch has been superseded by the "[PATCH 0/6] ChromeOS EC
Kconfig cleanups" series: https://lkml.org/lkml/2015/8/19/194

Please just ignore it.

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-08-19 19:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-18  7:01 [PATCH] ARM: exynos_defconfig: Enable CROS_EC_PROTO for ChromeOS EC mfd driver Javier Martinez Canillas
2015-08-18  7:57 ` Krzysztof Kozlowski
2015-08-18  8:05   ` Javier Martinez Canillas
2015-08-18  8:09     ` Krzysztof Kozlowski
2015-08-18  8:12       ` Javier Martinez Canillas
2015-08-19 19:28 ` Javier Martinez Canillas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).