mbox series

[00/10] Cleaning up x86 kernels

Message ID cover.1698621006.git.ehem+openwrt@m5p.com
Headers show
Series Cleaning up x86 kernels | expand

Message

Elliott Mitchell Oct. 30, 2023, 12:52 a.m. UTC
I guess the theme of this batch is cleanup of x86 kernels.  Along the way
some of this stretches onto other platforms.  Appears several years ago
x86 had been rather more build targets.  Since then they've been merged
somewhat haphazardly.

A few of these were previously reviewed by Philip Prindeville.  Since
then they've been rebased and some time has gone by.  I don't believe
this invalidates the review, but I feel I should mention this.

Changing the default of CONFIG_HW_RANDOM is a 10-15 line reduction right
now.  There is a pattern of recent target being more likely to set
CONFIG_HW_RANDOM=y and CONFIG_HW_RANDOM=n being older targets.  Given
this, right now this is a small win, but I expect it to increase in value
over time.

I'm wondering how CONFIG_FB_NOTIFY=y snuck into the common configuration
and CONFIG_FS_MBCACHE=y got into so many target configurations.  The
explicit setting matches the defaults, so pull these from the
configurations.

Hopefully no one has used ext2 in the past decade.  Yet one configuration
value was still being set.  Also pulling ext2 via ext4.  Simply cleaning
out remnants of this historic Linux filesystem.

Some bits of Geode configuration had leaked into x86 common area.  Push
them strictly onto the Geode builds.

Similarly CONFIG_M686=y had been set in the x86 common files.  Yet every
build overrode this.  Simply set the common setting the correct way.

The Intel i915 pairs with the Intel Pentium 4.  The "legacy" target
doesn't match this, so remove it from there.

Several packages were checking for TARGET_x86_64.  This is incorrect as
this would need to match both sides if the target was split.  As such
match the architecture, not the specific target.

Brought up previously.  The x32 (AMD64 with ILP32) setting seems an
excellent match for OpenWRT's goals.  Notably if OpenWRT is being used
on a system (or VM) with less than 4GB of memory, the address space is
less valuable, but the extra registers are valuable.  Since OpenWRT is
nominally focussed on embedded targets, this fits.

Could be a while before enough bugs have been squeezed out of x32 for it
to be release-worthy.  Yet it seems appropriate to try to get an
experimental build operational.  The patch merely enables kernel support,
I expect userspace to take some time.


Elliott Mitchell (10):
  kernel: change CONFIG_HW_RANDOM default to y
  kernel/generic: remove CONFIG_FB_NOTIFY
  kernel: purge CONFIG_FS_MBCACHE
  kernel: remove ext2 support from kernel
  kernel/x86: move Geode HW random from generic to geode
  kernel/x86: move SCx200 support from generic to geode
  kernel/x86: remove CONFIG_M686 from common configuration
  kernel/x86: remove i915 from x86/legacy kernels
  packages/x86: detect architecture, not x86/64 target
  kernel/x86: enable x32 support for amd64

 package/firmware/intel-microcode/Makefile     |  2 +-
 package/kernel/linux/modules/crypto.mk        |  2 +-
 package/kernel/linux/modules/virt.mk          |  4 +--
 package/libs/wolfssl/Makefile                 |  2 +-
 target/linux/airoha/config-5.15               |  1 -
 target/linux/apm821xx/config-5.15             |  1 +
 target/linux/apm821xx/config-6.1              |  1 +
 target/linux/archs38/config-5.15              |  2 +-
 target/linux/armsr/armv7/config-6.1           |  1 +
 target/linux/armsr/armv8/config-6.1           |  1 -
 target/linux/armsr/config-6.1                 |  1 -
 target/linux/at91/sam9x/config-5.15           |  2 --
 target/linux/at91/sama5/config-5.15           |  2 --
 target/linux/at91/sama7/config-5.15           |  2 --
 target/linux/ath25/config-5.15                |  1 -
 target/linux/ath79/config-5.15                |  1 +
 target/linux/ath79/config-6.1                 |  1 +
 target/linux/bcm27xx/bcm2708/config-6.1       |  2 --
 target/linux/bcm27xx/bcm2709/config-6.1       |  2 --
 target/linux/bcm27xx/bcm2710/config-6.1       |  2 --
 target/linux/bcm27xx/bcm2711/config-6.1       |  2 --
 target/linux/bcm47xx/config-5.15              |  1 -
 target/linux/bcm4908/config-5.15              |  1 +
 target/linux/bcm4908/config-6.1               |  1 +
 target/linux/bcm53xx/config-5.15              |  1 -
 target/linux/bcm53xx/config-6.1               |  1 -
 target/linux/bcm63xx/config-5.15              |  1 -
 target/linux/bmips/bcm6318/config-5.15        |  1 +
 target/linux/bmips/bcm6318/config-6.1         |  1 +
 target/linux/bmips/bcm63268/config-5.15       |  1 -
 target/linux/bmips/bcm63268/config-6.1        |  1 -
 target/linux/bmips/bcm6328/config-5.15        |  1 +
 target/linux/bmips/bcm6328/config-6.1         |  1 +
 target/linux/bmips/bcm6358/config-5.15        |  1 +
 target/linux/bmips/bcm6358/config-6.1         |  1 +
 target/linux/bmips/bcm6362/config-5.15        |  1 -
 target/linux/bmips/bcm6362/config-6.1         |  1 -
 target/linux/bmips/bcm6368/config-5.15        |  1 -
 target/linux/bmips/bcm6368/config-6.1         |  1 -
 target/linux/gemini/config-6.1                |  2 --
 target/linux/generic/config-5.15              |  6 ++---
 target/linux/generic/config-6.1               |  6 ++---
 target/linux/imx/config-5.15                  |  2 --
 target/linux/ipq40xx/config-6.1               |  1 -
 target/linux/ipq806x/config-6.1               |  1 -
 target/linux/ixp4xx/config-6.1                |  2 --
 target/linux/kirkwood/config-5.15             |  1 -
 target/linux/lantiq/ase/config-5.15           |  1 -
 target/linux/lantiq/falcon/config-5.15        |  1 +
 target/linux/lantiq/xrx200/config-5.15        |  1 -
 target/linux/lantiq/xway/config-5.15          |  1 -
 target/linux/lantiq/xway_legacy/config-5.15   |  1 +
 target/linux/layerscape/armv7/config-5.15     |  2 --
 target/linux/layerscape/armv7/config-6.1      |  2 --
 target/linux/layerscape/armv8_64b/config-5.15 |  2 --
 target/linux/layerscape/armv8_64b/config-6.1  |  2 --
 target/linux/malta/config-5.15                |  2 +-
 target/linux/malta/config-6.1                 |  2 +-
 target/linux/mediatek/filogic/config-5.15     |  2 --
 target/linux/mediatek/filogic/config-6.1      |  2 --
 target/linux/mediatek/mt7622/config-5.15      |  2 --
 target/linux/mediatek/mt7622/config-6.1       |  2 --
 target/linux/mediatek/mt7623/config-5.15      |  2 --
 target/linux/mediatek/mt7623/config-6.1       |  2 --
 target/linux/mediatek/mt7629/config-5.15      |  1 -
 target/linux/mediatek/mt7629/config-6.1       |  1 -
 target/linux/mpc85xx/config-5.15              |  1 -
 target/linux/mvebu/config-5.15                |  2 --
 target/linux/mvebu/config-6.1                 |  2 --
 target/linux/mxs/config-5.15                  |  2 +-
 target/linux/mxs/config-6.1                   |  2 +-
 target/linux/octeon/config-5.15               |  2 --
 target/linux/octeontx/config-5.15             |  1 -
 target/linux/omap/config-5.15                 |  2 --
 target/linux/oxnas/config-5.15                |  1 +
 target/linux/oxnas/ox810se/config-default     |  1 -
 target/linux/pistachio/config-5.15            |  2 +-
 target/linux/qoriq/config-5.15                |  2 --
 target/linux/qualcommax/config-6.1            |  1 +
 target/linux/ramips/mt7620/config-5.15        |  1 +
 target/linux/ramips/mt7621/config-5.15        |  1 +
 target/linux/ramips/mt76x8/config-5.15        |  1 +
 target/linux/ramips/rt288x/config-5.15        |  1 +
 target/linux/ramips/rt305x/config-5.15        |  1 +
 target/linux/ramips/rt3883/config-5.15        |  1 +
 target/linux/realtek/rtl838x/config-5.15      |  1 +
 target/linux/realtek/rtl839x/config-5.15      |  1 +
 target/linux/realtek/rtl930x/config-5.15      |  1 +
 target/linux/realtek/rtl931x/config-5.15      |  1 +
 target/linux/rockchip/armv8/config-5.15       |  2 +-
 target/linux/rockchip/armv8/config-6.1        |  2 +-
 target/linux/sifiveu/config-6.1               |  2 +-
 target/linux/sunxi/config-5.15                |  2 --
 target/linux/sunxi/config-6.1                 |  2 --
 target/linux/tegra/config-5.15                |  2 +-
 target/linux/uml/config-5.15                  |  2 --
 target/linux/uml/config-6.1                   |  2 --
 target/linux/x86/64/config-5.15               |  1 -
 target/linux/x86/64/config-6.1                |  2 --
 target/linux/x86/config-5.15                  | 12 +++------
 target/linux/x86/config-6.1                   | 13 ++++------
 target/linux/x86/generic/config-5.15          |  1 -
 target/linux/x86/generic/config-6.1           |  1 -
 target/linux/x86/geode/config-5.15            |  6 ++++-
 target/linux/x86/geode/config-6.1             |  6 ++++-
 target/linux/x86/legacy/config-5.15           | 26 +------------------
 target/linux/x86/legacy/config-6.1            | 26 +------------------
 target/linux/x86/modules.mk                   |  2 +-
 target/linux/zynq/config-5.15                 |  2 +-
 109 files changed, 69 insertions(+), 181 deletions(-)