diff mbox series

[08/11] kernel/x86: move SCx200 support from generic to geode

Message ID bd74745edf1050d345cdebc81c0a86d15d299a01.1700010534.git.ehem+openwrt@m5p.com
State Superseded, archived
Delegated to: Chuanhong Guo
Headers show
Series Misc kernel config cleanup and small adjustments | expand

Commit Message

Elliott Mitchell Nov. 15, 2023, 1:08 a.m. UTC
Date: Thu, 13 Apr 2023 17:07:20 -0700

The SCx200 is part of the Geode platform.  As such generic x86
doesn't need the driver, but Geode does.

Signed-off-by: Elliott Mitchell <ehem+openwrt@m5p.com>
Reviewed-by: Philip Prindeville <philipp@redfish-solutions.com> 04/2023
---
 target/linux/x86/config-5.15       | 5 +----
 target/linux/x86/config-6.1        | 5 +----
 target/linux/x86/geode/config-5.15 | 3 +++
 target/linux/x86/geode/config-6.1  | 3 +++
 4 files changed, 8 insertions(+), 8 deletions(-)

Comments

Stefan Lippers-Hollmann Nov. 15, 2023, 4:05 a.m. UTC | #1
Hi

On 2023-11-14, Elliott Mitchell wrote:
> Date: Thu, 13 Apr 2023 17:07:20 -0700
>
> The SCx200 is part of the Geode platform.  As such generic x86
> doesn't need the driver, but Geode does.

Not objecting against this patch, just taking it as an opportunity to ask
an orthogonal question...

Are three 32-bit x86 subtargets still needed/ warranted?
I mean all of these targets are basically obsolete and very low-end/
low-speed (hard to compete against mt7621a), so do the subtarget
specific optimizations really make sense anymore (are there any rough
performance comparisons or other reasons to keep them separate)?

Maintenance for three i386 subtargets is quite signficant, while at
the same time not very motivating to do the same steps three times
for e.g. kernel bumps.

/*
   Very much imho (and my opinion is not at all relevant), bumping the
   baseline to generic or dropping it down to legacy (geode?) would
   be preferable to the status quo (so one x86_64 subtarget and one
   combined i486/i586/i686 subtarget).
*/

Regards
	Stefan Lippers-Hollmann
Elliott Mitchell Nov. 15, 2023, 4:45 a.m. UTC | #2
On Wed, Nov 15, 2023 at 05:05:00AM +0100, Stefan Lippers-Hollmann wrote:
> 
> On 2023-11-14, Elliott Mitchell wrote:
> > Date: Thu, 13 Apr 2023 17:07:20 -0700
> >
> > The SCx200 is part of the Geode platform.  As such generic x86
> > doesn't need the driver, but Geode does.
> 
> Not objecting against this patch, just taking it as an opportunity to ask
> an orthogonal question...
> 
> Are three 32-bit x86 subtargets still needed/ warranted?
> I mean all of these targets are basically obsolete and very low-end/
> low-speed (hard to compete against mt7621a), so do the subtarget
> specific optimizations really make sense anymore (are there any rough
> performance comparisons or other reasons to keep them separate)?

I stated this in a previous message.  In my view the current "generic"
target is worthless.  It is only useful to a small number of computers
and not worthy of having a specific target.

I would suggest it may be worthwhile splitting "64" besides having
virtual machine targets.  Early amd64 computers did feature AGP and PATA,
but those rapidly disappeared shortly after the architecture came into
existance.

Perhaps "old64" and "current64"?

Dunno.  "geode" seems worthwhile since the processors were manufactured
into 2019 and they are semi-embedded.  Having 2 generalized/desktop x86
targets seems too few, but 3 generalized/desktop x86 targets seems too
many.

Another way to evaluate is to consider the number of years covered by a
given target:

geode: 1999-2019
generic: 2000-2004
legacy: 1996-2007
64: 2003-2023

Which clearly paints "generic" as the one to eliminate.  Whereas "64"
should be under consideration for splitting.
diff mbox series

Patch

diff --git a/target/linux/x86/config-5.15 b/target/linux/x86/config-5.15
index e1efc44fbe..e4ec6520e5 100644
--- a/target/linux/x86/config-5.15
+++ b/target/linux/x86/config-5.15
@@ -309,10 +309,7 @@  CONFIG_SATA_HOST=y
 CONFIG_SCSI=y
 CONFIG_SCSI_COMMON=y
 CONFIG_SCSI_SPI_ATTRS=y
-CONFIG_SCx200=y
-CONFIG_SCx200HR_TIMER=y
-# CONFIG_SCx200_GPIO is not set
-# CONFIG_SCx200_WDT is not set
+# CONFIG_SCx200 is not set
 CONFIG_SERIAL_8250_PCI=y
 # CONFIG_SERIAL_LANTIQ is not set
 CONFIG_SERIO=y
diff --git a/target/linux/x86/config-6.1 b/target/linux/x86/config-6.1
index 17dbb5310b..95e88f210b 100644
--- a/target/linux/x86/config-6.1
+++ b/target/linux/x86/config-6.1
@@ -329,10 +329,7 @@  CONFIG_SATA_HOST=y
 CONFIG_SCSI=y
 CONFIG_SCSI_COMMON=y
 CONFIG_SCSI_SPI_ATTRS=y
-CONFIG_SCx200=y
-CONFIG_SCx200HR_TIMER=y
-# CONFIG_SCx200_GPIO is not set
-# CONFIG_SCx200_WDT is not set
+# CONFIG_SCx200 is not set
 CONFIG_SERIAL_8250_PCI=y
 # CONFIG_SERIAL_LANTIQ is not set
 CONFIG_SERIAL_MCTRL_GPIO=y
diff --git a/target/linux/x86/geode/config-5.15 b/target/linux/x86/geode/config-5.15
index 22c9c031e8..b5a1a641bb 100644
--- a/target/linux/x86/geode/config-5.15
+++ b/target/linux/x86/geode/config-5.15
@@ -104,7 +104,10 @@  CONFIG_RTC_I2C_AND_SPI=y
 # CONFIG_SAMSUNG_Q10 is not set
 CONFIG_SC1200_WDT=y
 # CONFIG_SCSI_FDOMAIN_ISA is not set
+CONFIG_SCx200=y
+CONFIG_SCx200HR_TIMER=y
 CONFIG_SCx200_ACB=y
+# CONFIG_SCx200_GPIO is not set
 CONFIG_SCx200_WDT=y
 CONFIG_SENSORS_LM90=y
 CONFIG_SERIAL_8250_PNP=y
diff --git a/target/linux/x86/geode/config-6.1 b/target/linux/x86/geode/config-6.1
index d45a2aa170..f459583c02 100644
--- a/target/linux/x86/geode/config-6.1
+++ b/target/linux/x86/geode/config-6.1
@@ -113,7 +113,10 @@  CONFIG_RTC_I2C_AND_SPI=y
 # CONFIG_SAMSUNG_Q10 is not set
 CONFIG_SC1200_WDT=y
 # CONFIG_SCSI_FDOMAIN_ISA is not set
+CONFIG_SCx200=y
+CONFIG_SCx200HR_TIMER=y
 CONFIG_SCx200_ACB=y
+# CONFIG_SCx200_GPIO is not set
 CONFIG_SCx200_WDT=y
 # CONFIG_SENSORS_ASUS_EC is not set
 # CONFIG_SENSORS_ASUS_WMI is not set