Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

i2c: Remove I2C_COMPAT config symbol and related code

This code was added with 2bb5095affdb ("i2c: Provide compatibility links
for i2c adapters"). Commit message stated: Provide compatibility links
for [...] the time being. We will remove them after a long transition
period.
15 years should have been a long enough transition period.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>

authored by

Heiner Kallweit and committed by
Wolfram Sang
7e722083 84294c81

-39
-8
drivers/i2c/Kconfig
··· 40 40 bool 41 41 default y 42 42 43 - config I2C_COMPAT 44 - bool "Enable compatibility bits for old user-space" 45 - default y 46 - help 47 - Say Y here if you intend to run lm-sensors 3.1.1 or older, or any 48 - other user-space package which expects i2c adapters to be class 49 - devices. If you don't know, say Y. 50 - 51 43 config I2C_CHARDEV 52 44 tristate "I2C device interface" 53 45 help
-31
drivers/i2c/i2c-core-base.c
··· 1395 1395 } 1396 1396 EXPORT_SYMBOL(i2c_verify_adapter); 1397 1397 1398 - #ifdef CONFIG_I2C_COMPAT 1399 - static struct class_compat *i2c_adapter_compat_class; 1400 - #endif 1401 - 1402 1398 static void i2c_scan_static_board_info(struct i2c_adapter *adapter) 1403 1399 { 1404 1400 struct i2c_devinfo *devinfo; ··· 1570 1574 goto out_reg; 1571 1575 1572 1576 dev_dbg(&adap->dev, "adapter [%s] registered\n", adap->name); 1573 - 1574 - #ifdef CONFIG_I2C_COMPAT 1575 - res = class_compat_create_link(i2c_adapter_compat_class, &adap->dev, 1576 - adap->dev.parent); 1577 - if (res) 1578 - dev_warn(&adap->dev, 1579 - "Failed to create compatibility class link\n"); 1580 - #endif 1581 1577 1582 1578 /* create pre-declared device nodes */ 1583 1579 of_i2c_register_devices(adap); ··· 1776 1788 * them up properly, so we give them a chance to do that first. */ 1777 1789 device_for_each_child(&adap->dev, NULL, __unregister_client); 1778 1790 device_for_each_child(&adap->dev, NULL, __unregister_dummy); 1779 - 1780 - #ifdef CONFIG_I2C_COMPAT 1781 - class_compat_remove_link(i2c_adapter_compat_class, &adap->dev, 1782 - adap->dev.parent); 1783 - #endif 1784 1791 1785 1792 /* device name is gone after device_unregister */ 1786 1793 dev_dbg(&adap->dev, "adapter [%s] unregistered\n", adap->name); ··· 2085 2102 2086 2103 i2c_debugfs_root = debugfs_create_dir("i2c", NULL); 2087 2104 2088 - #ifdef CONFIG_I2C_COMPAT 2089 - i2c_adapter_compat_class = class_compat_register("i2c-adapter"); 2090 - if (!i2c_adapter_compat_class) { 2091 - retval = -ENOMEM; 2092 - goto bus_err; 2093 - } 2094 - #endif 2095 2105 retval = i2c_add_driver(&dummy_driver); 2096 2106 if (retval) 2097 2107 goto class_err; ··· 2097 2121 return 0; 2098 2122 2099 2123 class_err: 2100 - #ifdef CONFIG_I2C_COMPAT 2101 - class_compat_unregister(i2c_adapter_compat_class); 2102 - bus_err: 2103 - #endif 2104 2124 is_registered = false; 2105 2125 bus_unregister(&i2c_bus_type); 2106 2126 return retval; ··· 2109 2137 if (IS_ENABLED(CONFIG_OF_DYNAMIC)) 2110 2138 WARN_ON(of_reconfig_notifier_unregister(&i2c_of_notifier)); 2111 2139 i2c_del_driver(&dummy_driver); 2112 - #ifdef CONFIG_I2C_COMPAT 2113 - class_compat_unregister(i2c_adapter_compat_class); 2114 - #endif 2115 2140 debugfs_remove_recursive(i2c_debugfs_root); 2116 2141 bus_unregister(&i2c_bus_type); 2117 2142 tracepoint_synchronize_unregister();