lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 3 Nov 2015 09:40:02 +0100
From:	Daniel Lezcano <daniel.lezcano@...aro.org>
To:	Krzysztof Kozlowski <k.kozlowski@...sung.com>, tglx@...utronix.de
Cc:	john.stultz@...aro.org, linux-kernel@...r.kernel.org,
	arnd@...db.de, Russell King <linux@....linux.org.uk>,
	Kukjin Kim <kgene@...nel.org>,
	"moderated list:ARM SUB-ARCHITECT..." 
	<linux-arm-kernel@...ts.infradead.org>,
	"moderated list:ARM/SAMSUNG EXYNO..." 
	<linux-samsung-soc@...r.kernel.org>
Subject: Re: [PATCH 20/22] clocksource/drivers/exynos_mct: Fix Kconfig and add
 COMPILE_TEST option

On 11/03/2015 01:59 AM, Krzysztof Kozlowski wrote:
> On 03.11.2015 09:30, Krzysztof Kozlowski wrote:
>> On 02.11.2015 21:56, Daniel Lezcano wrote:
>>> Let the platform's Kconfig to select the clock instead of having a reverse
>>> dependency from the driver to the platform options.
>>
>> Selecting user-visible symbols is rather discouraged so why not
>> something like this:
>>
>> -       def_bool y if ARCH_EXYNOS
>> -       depends on !ARM64
>> +       bool "Exynos multi core timer driver"
>> +       depends on ARCH_EXYNOS || (COMPILE_TEST && ARM)
>
> Nope, that was wrong as we loose auto-select on Exynos. Instead:
> -       def_bool y if ARCH_EXYNOS
> -       depends on !ARM64
> +       bool "Exynos multi core timer driver" if ARM
> +       depends on ARCH_EXYNOS || COMPILE_TEST
> +       default y if ARCH_EXYNOS
>
> This way we avoid select (which is a reverse dependency for the driver),
> have it auto-selectable and compile tested on arm.

I think you misunderstood the patch I sent.

It does two things:

1. Follow the thumb of rule of the current Kconfig format

    - The timer driver is selected by the platform (exynos in this case)
    - User can't select the driver in the menuconfig
    - There is no dependency on the platform except for compilation test

2. Add the COMPILE_TEST

    - User can select the driver for compilation testing. This is for 
allyesconfig when doing compilation test coverage (exynos timer could be 
compiled on other platform). As the delay code is not portable, we have 
to restrict the compilation on the ARM platform, this is why there is 
the dependency on ARM.

I am currently looking at splitting the delay code in order to prevent 
this restriction on this driver and some others drivers.


>>> Add the COMPILE_TEST option for the compilation test coverage. Due to the
>>> non portable 'delay' code, this driver is only compilable on ARM.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@...aro.org>
>>> ---
>>>   arch/arm/mach-exynos/Kconfig | 1 +
>>>   drivers/clocksource/Kconfig  | 4 ++--
>>>   2 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
>>> index 3a10f1a..ff10539 100644
>>> --- a/arch/arm/mach-exynos/Kconfig
>>> +++ b/arch/arm/mach-exynos/Kconfig
>>> @@ -27,6 +27,7 @@ menuconfig ARCH_EXYNOS
>>>   	select SRAM
>>>   	select THERMAL
>>>   	select MFD_SYSCON
>>> +	select CLKSRC_EXYNOS_MCT
>>>   	help
>>>   	  Support for SAMSUNG EXYNOS SoCs (EXYNOS4/5)
>>>
>>> diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
>>> index 916c36d..d829cbe 100644
>>> --- a/drivers/clocksource/Kconfig
>>> +++ b/drivers/clocksource/Kconfig
>>> @@ -213,8 +213,8 @@ config CLKSRC_METAG_GENERIC
>>>   	  This option enables support for the Meta per-thread timers.
>>>
>>>   config CLKSRC_EXYNOS_MCT
>>> -	def_bool y if ARCH_EXYNOS
>>> -	depends on !ARM64
>>> +	bool "Exynos multi core timer driver" if COMPILE_TEST
>>> +	depends on ARM
>>>   	help
>>>   	  Support for Multi Core Timer controller on Exynos SoCs.
>>>
>>>
>>
>>
>


-- 
  <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ