]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
serial: drop SERIAL_8250_DEPRECATED_OPTIONS
authorJiri Slaby (SUSE) <jirislaby@kernel.org>
Wed, 19 Nov 2025 09:24:54 +0000 (10:24 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Nov 2025 17:31:27 +0000 (18:31 +0100)
In 3.7, 8250 was unintentionally renamed to 8250_core. This happened in
the commit 835d844d1a28 (8250_pnp: do pnp probe before legacy probe).
This made 8250.<xxxx> module options effectively defunct. Instead,
8250_core.<xxxx> worked.

In 3.9, the commit f2b8dfd9e480 (serial: 8250: Keep 8250.<xxxx> module
options functional after driver rename) made the original options work
again by introducing a hack.

Later in 3.9, the commit 9196d8acd7f9 (TTY: 8250, revert module name
change) changed the module name back to 8250 (from 8250_core). Since
then, the hack was there to support the transient 8250_core.<xxxx>
options. Those were present only in the 3.7..3.9 range.

These transient options were deprecated by 9326b047e4fd (TTY: 8250,
deprecated 8250_core.* options) in v3.9 too.

Now, after those 12 years, it is time to get rid of this hack
completely.

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Link: https://patch.msgid.link/20251119092457.826789-4-jirislaby@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
22 files changed:
arch/arm/configs/aspeed_g4_defconfig
arch/arm/configs/aspeed_g5_defconfig
arch/arm/configs/hisi_defconfig
arch/arm/configs/lpc18xx_defconfig
arch/arm/configs/shmobile_defconfig
arch/mips/configs/bcm47xx_defconfig
arch/mips/configs/bmips_stb_defconfig
arch/mips/configs/gcw0_defconfig
arch/nios2/configs/10m50_defconfig
arch/parisc/configs/generic-32bit_defconfig
arch/parisc/configs/generic-64bit_defconfig
arch/powerpc/configs/44x/akebono_defconfig
arch/powerpc/configs/microwatt_defconfig
arch/riscv/configs/nommu_virt_defconfig
arch/xtensa/configs/audio_kc705_defconfig
arch/xtensa/configs/generic_kc705_defconfig
arch/xtensa/configs/nommu_kc705_defconfig
arch/xtensa/configs/smp_lx200_defconfig
arch/xtensa/configs/xip_kc705_defconfig
drivers/tty/serial/8250/8250_platform.c
drivers/tty/serial/8250/8250_rsa.c
drivers/tty/serial/8250/Kconfig

index 28b724d59e7e23b627814bc85ab24aed5f557b00..45d8738abb750be590ab17230227f0f638c4a027 100644 (file)
@@ -117,7 +117,6 @@ CONFIG_KEYBOARD_GPIO_POLLED=y
 # CONFIG_VT is not set
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=6
 CONFIG_SERIAL_8250_RUNTIME_UARTS=6
index 61cee1e7ebea6187b60053579c8e82bef1dadd24..46081c9a537e3d5a5d3a0f12d79a41f06c8907f3 100644 (file)
@@ -138,7 +138,6 @@ CONFIG_SERIO_RAW=y
 # CONFIG_VT is not set
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=6
 CONFIG_SERIAL_8250_RUNTIME_UARTS=6
index e19c1039fb938455ae4000c11280465c7c0154ec..384aade1a48bb557178fb6daa16d1cde61981623 100644 (file)
@@ -35,7 +35,6 @@ CONFIG_NETDEVICES=y
 CONFIG_HIX5HD2_GMAC=y
 CONFIG_HIP04_ETH=y
 CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=2
 CONFIG_SERIAL_8250_RUNTIME_UARTS=2
index 2d489186e945f3c7f4483f35b184d5243b757eae..f142a6637edee722fb59cbbd192c5f5c30bb7b65 100644 (file)
@@ -90,7 +90,6 @@ CONFIG_KEYBOARD_GPIO_POLLED=y
 # CONFIG_UNIX98_PTYS is not set
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_SERIAL_NONSTANDARD=y
index e4cb33b2bcee2215f666074ad3cdd85bf3d94f4c..e8dd9a80a64a4ba1f040701b1c17b66d7a4ab05a 100644 (file)
@@ -75,7 +75,6 @@ CONFIG_INPUT_DA9063_ONKEY=y
 CONFIG_INPUT_ADXL34X=y
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 # CONFIG_SERIAL_8250_16550A_VARIANTS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 # CONFIG_SERIAL_8250_PCI is not set
index f56e8db5da9512661b45e6834800e36cecd51269..d10b3d4adbd147df2eb3a285154f1e79409871e7 100644 (file)
@@ -51,7 +51,6 @@ CONFIG_B43LEGACY=y
 CONFIG_BRCMSMAC=y
 CONFIG_ISDN=y
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 # CONFIG_SERIAL_8250_PCI is not set
 CONFIG_SERIAL_8250_NR_UARTS=2
index cd0dc37c3d84496dfe012806c414bf16e3cf81e5..ecfa7f777efacb0599139b9dc56fe1a250491c9c 100644 (file)
@@ -119,7 +119,6 @@ CONFIG_INPUT_UINPUT=y
 CONFIG_VT=y
 CONFIG_VT_HW_CONSOLE_BINDING=y
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 # CONFIG_HW_RANDOM is not set
index 8b7ad877e07ae195ddb11f5c217c90294c4fefe5..fda9971bdd8d9c26d683cbd5e0423ef1763bb4fe 100644 (file)
@@ -52,7 +52,6 @@ CONFIG_INPUT_UINPUT=y
 CONFIG_INPUT_PWM_VIBRA=y
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_INGENIC=y
 CONFIG_HW_RANDOM=y
index 048f74e0dc6da14dff6f652e33eb0201d24522ae..b7224f44d3272dc4c63bee84aba3c43de687ec24 100644 (file)
@@ -51,7 +51,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_SERIO_SERPORT is not set
 # CONFIG_VT is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_SERIAL_ALTERA_JTAGUART=y
index 52031bde9f17ca5a5d6d23841524c2e24ba86aea..5444ce6405f3aaf1866bc46d7e1708403a427a79 100644 (file)
@@ -119,7 +119,6 @@ CONFIG_INPUT_MISC=y
 CONFIG_INPUT_UINPUT=m
 CONFIG_LEGACY_PTY_COUNT=64
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=8
 CONFIG_SERIAL_8250_EXTENDED=y
index 1aec04c09d0b4f90bc3a6880ba8088f6cda9ffb3..ce91f9d1fdbfbba0b07390bae33ff5af622816ce 100644 (file)
@@ -158,7 +158,6 @@ CONFIG_SERIO_SERPORT=m
 CONFIG_SERIO_RAW=m
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=8
 CONFIG_SERIAL_8250_RUNTIME_UARTS=8
index 1882eb2da354a721a6f67f901a134d7fbfee89e9..02e88648a2e631c17d3366e25990203f226b48bf 100644 (file)
@@ -85,7 +85,6 @@ CONFIG_IBM_EMAC=y
 # CONFIG_SERIO is not set
 # CONFIG_VT is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
index a64fb1ef8c75be69f3e22f88e9d2a4053041951b..d81989a6f59b5012e623832bcf129146590b6887 100644 (file)
@@ -62,7 +62,6 @@ CONFIG_LITEX_LITEETH=y
 # CONFIG_VT is not set
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_SERIAL_NONSTANDARD=y
index d4b03dc3c2c042a50b461f40e050e38d2dc78dcd..0da5069bfbef23b35f7bfd40fcc34e4617141720 100644 (file)
@@ -48,7 +48,6 @@ CONFIG_VIRTIO_BLK=y
 # CONFIG_LEGACY_PTYS is not set
 # CONFIG_LDISC_AUTOLOAD is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=1
 CONFIG_SERIAL_8250_RUNTIME_UARTS=1
index dc942bbac69ff84637e411b5271b2a90fcbfc5fd..7b3f234b337c1ba3430a5c480860e187eb2e0d5b 100644 (file)
@@ -81,7 +81,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_HW_RANDOM=y
index 3ee7e1c5655637e1a14949b54912a0cd1a6f449e..c1b766a77a1efa995e6ca5558e9621f342cdf2d3 100644 (file)
@@ -79,7 +79,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_HW_RANDOM=y
index c6e96f0aa700c27b87941fcfbdb02fbe5c7cf699..27b126d4e7bf5df4ccaa2088a3bea9ec46b54d48 100644 (file)
@@ -81,7 +81,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_HW_RANDOM=y
index 373d42b9e510b2f60b631b57ed09e91a93e3f55d..dfb3d921b850c07b496c4c445c57d05adfe064ec 100644 (file)
@@ -83,7 +83,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_HW_RANDOM=y
index 5d6013ea70fc75acb3fcd65a211fb0987e847fbd..472568b85fb9b46fc4e23e90da45feaed6979754 100644 (file)
@@ -72,7 +72,6 @@ CONFIG_MARVELL_PHY=y
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_SERIO is not set
 CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_OF_PLATFORM=y
 # CONFIG_HWMON is not set
index b27981340e769aeb9e38714c856d61cd743b230b..38b158ec4725b31b4a34b1dc0411533a8a427a12 100644 (file)
@@ -390,30 +390,3 @@ module_param(skip_txen_test, uint, 0644);
 MODULE_PARM_DESC(skip_txen_test, "Skip checking for the TXEN bug at init time");
 
 MODULE_ALIAS_CHARDEV_MAJOR(TTY_MAJOR);
-
-#ifdef CONFIG_SERIAL_8250_DEPRECATED_OPTIONS
-#ifndef MODULE
-/*
- * This module was renamed to 8250_core in 3.7. Keep the old "8250" name
- * working as well for the module options so we don't break people. We
- * need to keep the names identical and the convenient macros will happily
- * refuse to let us do that by failing the build with redefinition errors
- * of global variables. So we stick them inside a dummy function to avoid
- * those conflicts. The options still get parsed, and the redefined
- * MODULE_PARAM_PREFIX lets us keep the "8250." syntax alive.
- *
- * This is hacky.  I'm sorry.
- */
-static void __used s8250_options(void)
-{
-#undef MODULE_PARAM_PREFIX
-#define MODULE_PARAM_PREFIX "8250_core."
-
-       module_param_cb(share_irqs, &param_ops_uint, &share_irqs, 0644);
-       module_param_cb(nr_uarts, &param_ops_uint, &nr_uarts, 0644);
-       module_param_cb(skip_txen_test, &param_ops_uint, &skip_txen_test, 0644);
-}
-#else
-MODULE_ALIAS("8250_core");
-#endif
-#endif
index 40a3dbd9e452ca8212d38bd6d2e92a3d3a7b3815..3b9c00515407b5e8b4a8985cc4f3b93437c4ef8d 100644 (file)
@@ -201,27 +201,3 @@ void rsa_reset(struct uart_8250_port *up)
        serial_out(up, UART_RSA_FRR, 0);
 }
 EXPORT_SYMBOL_FOR_MODULES(rsa_reset, "8250_base");
-
-#ifdef CONFIG_SERIAL_8250_DEPRECATED_OPTIONS
-#ifndef MODULE
-/*
- * Keep the old "8250" name working as well for the module options so we don't
- * break people. We need to keep the names identical and the convenient macros
- * will happily refuse to let us do that by failing the build with redefinition
- * errors of global variables.  So we stick them inside a dummy function to
- * avoid those conflicts.  The options still get parsed, and the redefined
- * MODULE_PARAM_PREFIX lets us keep the "8250." syntax alive.
- *
- * This is hacky. I'm sorry.
- */
-static void __used rsa8250_options(void)
-{
-#undef MODULE_PARAM_PREFIX
-#define MODULE_PARAM_PREFIX "8250_core."
-
-       __module_param_call(MODULE_PARAM_PREFIX, probe_rsa,
-               &param_array_ops, .arr = &__param_arr_probe_rsa,
-               0444, -1, 0);
-}
-#endif
-#endif
index f64ef0819cd4e507918e5d409fea252a2995974b..58f0142a59ff39fefcf8373801701fe220296ff5 100644 (file)
@@ -34,23 +34,6 @@ config SERIAL_8250
          Most people will say Y or M here, so that they can use serial mice,
          modems and similar devices connecting to the standard serial ports.
 
-config SERIAL_8250_DEPRECATED_OPTIONS
-       bool "Support 8250_core.* kernel options (DEPRECATED)"
-       depends on SERIAL_8250
-       default y
-       help
-         In 3.7 we renamed 8250 to 8250_core by mistake, so now we have to
-         accept kernel parameters in both forms like 8250_core.nr_uarts=4 and
-         8250.nr_uarts=4. We now renamed the module back to 8250, but if
-         anybody noticed in 3.7 and changed their userspace we still have to
-         keep the 8250_core.* options around until they revert the changes
-         they already did.
-
-         If 8250 is built as a module, this adds 8250_core alias instead. 
-
-         If you did not notice yet and/or you have userspace from pre-3.7, it
-         is safe (and recommended) to say N here.
-
 config SERIAL_8250_PNP
        bool "8250/16550 PNP device support" if EXPERT
        depends on SERIAL_8250 && PNP