openwrtv3/package/kernel/linux/modules
Christian Lamparter 3fce12568a kernel: modules: fix kmod-regmap redux
Jonas Gorski commented on the previous patch:
|This is actually the wrong fix and papers over an issue in one of our
|local patches.
|
|We intentionally allow regmap to be built as a module, see
|
|/target/linux/generic/hack-4.14/259-regmap_dynamic.patch
|[...]
|[The regulator code] optionally supports regmap thanks to the stubs
|provided if regmap is disabled - which breaks if you compile regmap
|as a module.

In order to mitigate this issue, this patch reverts the previous patch
and replaces the existing IS_ENABLED(CONFIG_REGMAP) with
IS_REACHABLE(CONFIG_REGMAP). This solves this particular issue as the
regulator code will now automatically fallback to the regmap stubs in
case the kmod-regmap module is enabled, but nothing else sets
CONFIG_REGMAP=y.

Note: There's still a potential issue that this patch doesn't solve:
If someone ever wants to make a OpenWrt kernel package for a
regulator module that requires the REGMAP feature for a target that
doesn't set CONFIG_REGMAP=y but has CONFIG_REGULATOR=y, the resulting
kmod-regulator-xyz package will not work on the target.
Luckily, there aren't any in-tree OpenWrt kernel module packages for
regulators at the moment. On the bright side: regmap is a critical
part nowadays and all new and upcoming architectures require it by
default. This will likely only ever be a problem for legacy targets
and devices that cannot afford to enable REGMAP.

Cc: Jonas Gorski <jonas.gorski@gmail.com>
Cc: John Crispin <john@phrozen.org>
Fixes: d00913d121 ("kernel: modules: fix kmod-regmap")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-06 07:17:12 +02:00
..
001-depends.mk kernel: remove useless AddDepends/rtc abstraction 2015-03-29 08:12:50 +00:00
block.mk kernel: add kmod-dax 2017-12-16 22:12:24 +01:00
can.mk can.mk: sort modules 2018-02-13 11:53:49 +01:00
crypto.mk kernel: package x86-optimized crypto-misc modules 2018-07-30 10:43:38 +02:00
firewire.mk firewire.mk: sort kernel modules 2018-02-13 11:48:49 +01:00
fs.mk kernel: whitespace fixes 2018-05-18 11:19:00 +02:00
hwmon.mk kernel/modules: add kmod-adcxx module 2018-06-09 22:39:17 +02:00
i2c.mk kernel: remove an old kernel compatibility line from module packaging 2018-03-04 19:37:22 +01:00
iio.mk kernel: add kmod-iio-htu21 2018-07-30 19:34:43 +02:00
input.mk kernel: fix typo in input-gpio-encoder package title 2016-11-26 22:00:30 +01:00
leds.mk leds: correct ledtrig-heartbeat Kconfig description 2018-02-02 12:08:19 +01:00
lib.mk kernel: add missing dependencies to kmod-crypto-acompress 2017-12-16 22:15:14 +01:00
netdevices.mk kernel: insmod phy-broadcom module during preinit 2018-07-16 15:12:18 +02:00
netfilter.mk include: add netdev family support for nftables 2018-07-30 10:43:37 +02:00
netsupport.mk kernel: kmod-geneve: kmod for Geneve tunneling 2018-02-28 12:56:51 +08:00
nls.mk kernel: add Chinese codepages 2017-02-20 09:13:52 +01:00
other.mk kernel: modules: fix kmod-regmap redux 2018-08-06 07:17:12 +02:00
pcmcia.mk kernel: add support for Option Fusion+ PCMCIA card 2016-12-20 09:35:36 +01:00
sound.mk kernel: add kmod-sound-ens1371 2018-03-25 21:18:35 +02:00
spi.mk kernel: remove kmod-spi-gpio-old 2018-02-09 10:29:07 +01:00
usb.mk kernel/modules: kmod-chaoskey: Add missing dependency 2018-06-18 22:51:33 +02:00
video.mk kernel: merge kmod-fbcon with kmod-fb 2018-05-21 18:07:48 +02:00
virt.mk kernel: remove another redundant KCONFIG entry in virt.mk 2016-11-24 13:41:10 +01:00
w1.mk kernel: kmod-w1 depends on kmod-hwmon-core since Linux 4.14 2018-01-09 22:56:55 +01:00
wireless.mk kernel: move kmod-owl-loader to the right .mk file 2016-10-04 16:01:42 +02:00
wpan.mk kernel: wpan: mrf24j40 depends on regmap-spi 2016-01-25 12:41:19 +00:00