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]
Message-ID: <20260109223627b566d2b0@mail.local>
Date: Fri, 9 Jan 2026 23:36:27 +0100
From: Alexandre Belloni <alexandre.belloni@...tlin.com>
To: Alex Elder <elder@...cstar.com>
Cc: Troy Mitchell <troy.mitchell@...ux.spacemit.com>,
	Lee Jones <lee@...nel.org>, Yixun Lan <dlan@...too.org>,
	Andi Shyti <andi.shyti@...nel.org>,
	Liam Girdwood <lgirdwood@...il.com>,
	Mark Brown <broonie@...nel.org>, linux-kernel@...r.kernel.org,
	linux-riscv@...ts.infradead.org, spacemit@...ts.linux.dev,
	linux-i2c@...r.kernel.org, linux-rtc@...r.kernel.org
Subject: Re: [PATCH v4 3/3] rtc: spacemit: default module when
 MFD_SPACEMIT_P1 is enabled

On 29/12/2025 19:46:59-0600, Alex Elder wrote:
> On 12/29/25 6:51 PM, Alexandre Belloni wrote:
> > On 29/12/2025 12:02:23-0600, Alex Elder wrote:
> > > On 12/25/25 10:53 AM, Alexandre Belloni wrote:
> > > > On 25/12/2025 15:46:33+0800, Troy Mitchell wrote:
> > > > > The RTC driver defaulted to the same value as MFD_SPACEMIT_P1, which
> > > > > caused it to be built-in automatically whenever the PMIC support was
> > > > > set to y.
> > > > > 
> > > > > This is not always desirable, as the RTC function is not required on
> > > > > all platforms using the SpacemiT P1 PMIC.
> > > > 
> > > > But then, can't people simply change the config? I don't feel like
> > > > this is an improvement.
> > > 
> > > It's not an improvement for people who want to use the SpacemiT
> > > P1 PMIC, but it's an improvement for all the other RISC-V builds
> > > using "defconfig" that would rather have that support be modular
> > > to avoid needlessly consuming resources.
> > 
> > But then, wouldn't MFD_SPACEMIT_P1 be simply not set or set to m ? So
> > this doesn't have any impact on other RISC-V builds while it makes
> > people using the SpacemiT P1 PMIC jump through hoops to be able to use
> > the RTC as this is a very uncommon way to set default values.
> > 
> > My point is:
> >   - other RISC-V platforms would simply not select MFD_SPACEMIT_P1 or
> >     have MFD_SPACEMIT_P1 set to m
> >   - having RTC_DRV_SPACEMIT_P1 built-in by default when MFD_SPACEMIT_P1
> >     is built-in doesn't really hurt any SpacemiT P1 users but would be
> >     the expectation of those using the RTC.
> 
> The "hurt" isn't about P1 users, it's about everyone else.
> 
> >   - those wanting to optimise because they won't use the RTC, they can
> >     already simply unselect RTC_DRV_SPACEMIT_P1 or set it to m.
> 
> 
> The purpose is to make the driver a module (not built-in)
> when "defconfig" is used (without the need for any Kconfig
> fragments to unselect things).
> 
> 
> In arch/riscv/configs/defconfig, we have this:
>     CONFIG_ARCH_SPACEMIT=y
> 
> In drivers/mfd/Kconfig b/drivers/mfd/Kconfig, we have this
> (added by patch 2 in this series):
>     config MFD_SPACEMIT_P1
> 	default m if ARCH_SPACEMIT
> 
> So when using defconfig (alone), MFD_SPACEMIT_P1 is set to m,
> to benefit non-SpacemiT RISC-V platforms.
> 
> This patch is trying to do the same thing for the RTC,
> i.e. having RTC_DRV_SPACEMIT_P1 be defined as a module
> by default.
> 
> I think you understand.

I'm sorry, I must be dumb but I don't understand. The current behaviour
is that when MFD_SPACEMIT_P1 is m, then the default value for
RTC_DRV_SPACEMIT_P1 will be m. Since patch 2 makes it exactly that way
(MFD_SPACEMIT_P set to m), I don't get why it is necessary to mess with
the default of RTC_DRV_SPACEMIT_P1.

The current default behaviour of RTC_DRV_SPACEMIT_P1 seems to be the
correct one and the proper fix is then patch 2.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ