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] [day] [month] [year] [list]
Message-ID: <20250212141741-GYA18065@gentoo>
Date: Wed, 12 Feb 2025 14:17:41 +0000
From: Yixun Lan <dlan@...too.org>
To: Alex Elder <elder@...cstar.com>
Cc: Linus Walleij <linus.walleij@...aro.org>,
	Paul Walmsley <paul.walmsley@...ive.com>,
	Palmer Dabbelt <palmer@...belt.com>, Alex Elder <elder@...nel.org>,
	linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org,
	linux-gpio@...r.kernel.org, spacemit@...ts.linux.dev,
	Conor Dooley <conor.dooley@...rochip.com>
Subject: Re: [PATCH v2] pinctrl: spacemit: enable config option

Hi Alex:

On 07:50 Wed 12 Feb     , Alex Elder wrote:
> On 2/12/25 2:27 AM, Yixun Lan wrote:
> > Pinctrl is an essential driver for SpacemiT's SoC,
> > so let's enable it by default for this SoC.
> > 
> > The CONFIG_PINCTRL_SPACEMIT_K1 isn't enabled when using
> > 'make defconfig' to select kernel configuration options.
> > This result in a broken uart driver where fail at probe()
> > stage due to no pins found.
> > 
> > Fixes: a83c29e1d145 ("pinctrl: spacemit: add support for SpacemiT K1 SoC")
> > Reported-by: Alex Elder <elder@...nel.org>
> > Acked-by: Conor Dooley <conor.dooley@...rochip.com>
> > Tested-by: Alex Elder <elder@...cstar.com>
> > Signed-off-by: Yixun Lan <dlan@...too.org>
> 
> I just tested this version of the patch.  By default
> PINCTRL_SPACEMIT_K1 is "y".  But since it's tristate,
> perhaps it should be default=m so it's not built in
> for everyone.  Yixun I assume the K1 pinctrl driver
> actually *works* as a kernel module.
> 
in theory, making it built as module, it should work fine if all drivers
can handle "deferred probe" gracefully, but since pinctrl is an essential
 basic driver, I'd prefer to make it built-in ..

I didn't bother to change this module from tristate to bool,
as there is additional COMPILE_TEST option(maybe it want to test as module?)

> Anyway, I suggest this change to be a module; Conor
> should weigh in.  Either way is good for me, and I
> have tested both.
> 
no, I don't think making it as module is a good idea,

I can adjust this driver from tristate to bool if necessary,
also adjust to builtin_platform_driver() in driver..

let me know what you think

> Reviewed-by: Alex Elder <elder@...cstar.com>
> 
> > ---
> > This should fix problem that CONFIG_PINCTRL_SPACEMIT_K1 is not enabled
> > when using make defconfig, thus fail to initilize uart driver which requst
> > pins during probe stage.
> > ---
> > Changes in v2:
> > - set default as y
> > - Link to v1: https://lore.kernel.org/r/20250207-k1-pinctrl-option-v1-1-e8a7e4d8404f@gentoo.org
> > ---
> >   arch/riscv/Kconfig.socs          | 1 +
> >   drivers/pinctrl/spacemit/Kconfig | 1 +
> >   2 files changed, 2 insertions(+)
> > 
> > diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
> > index 1916cf7ba450ec9958265de2ca41dc504d4d2f7c..17606940bb5239d0fdfc6b5aefb50eeb982d14aa 100644
> > --- a/arch/riscv/Kconfig.socs
> > +++ b/arch/riscv/Kconfig.socs
> > @@ -26,6 +26,7 @@ config ARCH_SOPHGO
> >   
> >   config ARCH_SPACEMIT
> >   	bool "SpacemiT SoCs"
> > +	select PINCTRL
> >   	help
> >   	  This enables support for SpacemiT SoC platform hardware.
> >   
> > diff --git a/drivers/pinctrl/spacemit/Kconfig b/drivers/pinctrl/spacemit/Kconfig
> > index 168f8a5ffbb952cbeae3e3401c11149558e0a84b..c18d879274e72df251e0bc82a308603ce23738bd 100644
> > --- a/drivers/pinctrl/spacemit/Kconfig
> > +++ b/drivers/pinctrl/spacemit/Kconfig
> > @@ -7,6 +7,7 @@ config PINCTRL_SPACEMIT_K1
> >   	tristate "SpacemiT K1 SoC Pinctrl driver"
> >   	depends on ARCH_SPACEMIT || COMPILE_TEST
> >   	depends on OF
> > +	default y
> >   	select GENERIC_PINCTRL_GROUPS
> >   	select GENERIC_PINMUX_FUNCTIONS
> >   	select GENERIC_PINCONF
> > 
> > ---
> > base-commit: 2014c95afecee3e76ca4a56956a936e23283f05b
> > change-id: 20250207-k1-pinctrl-option-de5bdfd6b42e
> > 
> > Best regards,
> 

-- 
Yixun Lan (dlan)
Gentoo Linux Developer
GPG Key ID AABEFD55

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ