Commit Graph

788 Commits

Author SHA1 Message Date
Hauke Mehrtens
fd5c168701 kernel: Build: Split kmod-regmap
This reduces the needed modifications to the mainline Linux kernel and
also makes the regmap package work with an out of tree kernel which
does not have these modifications.

The regmap-core is only added when it is really build as a module.
The regmap-core is normally bool so it cannot be built as a module in an
unmodified kernel. When it is selected by on other kernel module it will
always be selected as build in and it also does not show up in
$(LINUX_DIR)/modules.builtin as it is not supposed to be a kernel module.
When it is not in $(LINUX_DIR)/modules.builtin the build system expects
it to be built as a .ko file.
Just check if the module is really there and only add it in that case.

This splits the regmap package into multiple packages, one for each bus type.
This way only the bus maps which are really needed have to be added.
This also splits the I2C, SPI and MMIO regmap into separate packages to not
require all these subsystems to build them, on an unmodified upstream kernel
this also causes problems in some situations.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-01-27 00:16:13 +01:00
Hauke Mehrtens
c7102a7699 kernel/modules: Fix build of kmod-pmbus
This fixes two build problems introduced with the recently added new
kernel module package.

Fixes: ed2839ac41 ("kernel/modules: add kmod-pmbus-zl6100 module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 13:16:02 +01:00
Pawel Dembicki
ed2839ac41 kernel/modules: add kmod-pmbus-zl6100 module
This patch adds the kmod packaging for the Intersil / Zilker Labs
ZL6100 and compatible digital DC-DC controllers as well as the
core kernel module for the Power Management Bus.

Add:
kmod-pmbus-core
kmod-pmbus-zl6100

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-01-13 11:07:37 +01:00
Pawel Dembicki
0fbd3d23aa kernel: 4.19: kmod-ptp-gianfar follow upstream changes
This patch deprecates the kmod-ptp-gianfar package and
introduces kmod-ptp-qoriq for 4.19+ in its place. This
has become necessary due to the linux kernel commit
ceefc71d4c05 ("ptp: rework gianfar_ptp as QorIQ common PTP driver")

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 22:09:07 +01:00
Petr Štetiar
08ef53d2fb kernel: Fix kmod-w1 dependency on hwmon-core for 4.19
kmod-w1 depends on kmod-hwmon-core since Linux 4.14

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-03 18:05:47 +01:00
Petr Štetiar
9d11726d6c kernel: Fix rtc-ds1307 dependency on hwmon-core for 4.19
It seems, that since Linux 4.18-rc1 rtc-ds1307 depends on hwmon-core.

 commit 6b583a64fd1e019fd01626b46892ebf2361951c5
 Author: Heiner Kallweit <hkallweit1@gmail.com>
 Date:   Wed Sep 27 22:41:26 2017 +0200

    rtc: ds1307: simplify hwmon config

    We don't have to define an extra config symbol, IS_REACHABLE does
    what we need. And having this config symbol just to save the few
    bytes of hwmon support on non-DS3231 chips isn't worth it IMO
    (especially as the symbol is set per default).

While at it, use the same dependency check for `kmod-regmap` as well, so
it's future proof as well.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-03 18:05:47 +01:00
Robert Marko
c9f6116fd0 kernel: modules: usb: Add DWC3 Qualcomm kmod
Since kernel 4.18 support for Qualcomm glue layer was
moved from DWC3 OF Simple to a separate DWC3 QCOM module.
So lets add it and make it depend on 4.19 kernel and make
sure that DWC3 OF Simple is not included if 4.19 is used.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:06:38 +01:00
Petr Štetiar
11945174cf kernel: Fix usb-chipidea dependency on ulpi.ko for 4.19
It seems, that since Linux 4.18-rc2 ci_hdrc depends on ulpi.

 commit a930d8bd94d8db7715d1af74299f710b1fb22fc8
 Author: Fabio Estevam <fabio.estevam@nxp.com>
 Date:   Wed Jul 4 10:09:58 2018 -0300

    usb: chipidea: Always build ULPI code

    Commit 03e6275ae381 ("usb: chipidea: Fix ULPI on imx51") causes a kernel
    hang on imx51 systems that use the ULPI interface and do not select the
    CONFIG_USB_CHIPIDEA_ULPI option.

    In order to avoid such potential misuse, let's always build the
    chipidea ULPI code into the final ci_hdrc object.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-18 20:17:22 +01:00
Roman Bazalevsky
f332ae3c43 kernel/modules: HMC5843 3D-compass kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-12-16 00:57:20 +01:00
Brett Mastbergen
2b6eab507a netfilter: Add fib support for nftables
Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
2018-12-16 00:57:20 +01:00
Hauke Mehrtens
fbaf48387e kernel: netfilter: chain filters merged into nf_tables.ko
In mainline kernel commit 02c7b25e5f5 ("netfilter: nf_tables: build-in
filter chain type") all chain filters were merged into one file and into
one kernel module to save some memory. The code protected by these
configuration options CONFIG_NF_TABLES_BRIDGE, CONFIG_NF_TABLES_IPV4,
CONFIG_NF_TABLES_ARP, CONFIG_NF_TABLES_IPV6, CONFIG_NF_TABLES_NETDEV and
CONFIG_NF_TABLES_INET was merged into the nft_chain_filter.c file which
is now always compiled into the nf_tables.ko file.

This only happened in kernel 4.19 and OpenWrt has to select these as
modules in older kennel versions. Mark them as build-in in the kernel
4.19 specific kernel configuration file which will then not be
overwritten by the package specific settings which try to make them
modular again.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
4c9df2aa08 kernel: tg3: Do not depend on kmod-hwmon-core on kernel 4.19
Like on kernel 4.14 this dependency is deactivated in OpenWrt.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
31abe08331 kernel: Add missing dependency to kmod-regmap
Like on kernel 4.14 some kernel modules depend now on regmap.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
7eabe0e433 kernel: Make video-gspca-core depend on vidobuf2
This new dependency is needed for kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
edc4da5da1 kernel: Always activate CONFIG_HW_RANDOM_TPM
CONFIG_HW_RANDOM_TPM does not activate a separate kernel module any
more, but it only activates the random code in the tpm.ko.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
c8f85a866b kernel: Make kmod-mpls depend on iptunnel in kernel 4.19
This new dependency is needed with kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
59065da634 kernel: Adapt to move of autofs4 in kernel 4.19
autofs4 is now in the fs/autofs/ folder in kernel 4.19

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
b688ec6433 kernel: Adapt to new location of video-videobuf2 in kernel 4.19
The video-videobuf2 kernel modules were moved to a new folder in kernel
4.19. videobuf2-v4l2.ko is only available since kernel 4.4, blacklist
this kmod completely on kernel 3.18.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
f125706596 kernel: Add dependencies for kernel 4.19
These dependencies are needed on kernel 4.14 and kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
6505b084cb kernel: Use crypto_simd.ko instead of lrw.ko for x86
The x86 optimized cryptographic algorithm kernel modules now mostly use
crypto_simd.ko instead of lrw.ko in kernel 4.19. Add the new module to
the kmod-crypto-misc package.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
5f67559b42 kernel: Remove crypto/ablk_helper.ko on kernel 4.19
This module was removed in kernel 4.17, all users are refactored to not
need this any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
35e0f600d8 kernel: extract asn1_decoder.ko
The asn1_decoder.ko module is needed by the kmod-nf-nathelper-extra
package in kernel 4.19, extract it and add the missing dependencies.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
36bf45ff4a kernel: add missing dependency to kmod-crypto-acompress
Like kernel on 4.14 some modules need the dependency to
kmod-crypto-acompress on kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
583d65ebfe kernel: Adapt to moved kvaser_usb.ko in kernel 4.19
In kernel 4.19 the kvaser_usb.ko file moved into its own directory.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
4ff4411031 kernel: Use kmod-dax on kernel 4.19
Like on kernel 4.14 kmod-dax is needed by kmod-dm also in kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
7ffa42246b kernel: Add kmod-phy-realtek
The r8169 driver uses the phy lib with the realtek phy driver in kernel
4.19 instead of integrating the phy driver into the mac driver.
Add the new phy driver and add this missing dependency.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
aa3b6a08c5 kernel: Replace ledtrig-netdev with upstream backport
The ledtrig-netdev was added to upstream Linux kernel 4.16, replace our
own version with the patch based on the upstream version.
This will remove the ledtrig-netdev support from kernel 3.18, because I
not want to spend time on backporting it to 3.18. This will make it
easier to use the upstream version with kernel 4.19, by just not
applying this patch.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 12:50:06 +01:00
Stijn Tintel
bcb8592353 kmod-dma-buf: fix build with external kernel
In hack/904-debloat_dma_buf.patch, DMA_SHARED_BUFFER is changed from
bool to tristate. As this patch is not applied to external kernel
sources, build fails if kmod-dma-buf is enabled. Fix this by only
including the module file if CONFIG_EXTERNAL_KERNEL_TREE and
CONFIG_KERNEL_GIT_CLONE_URI are not enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-12 22:15:11 +02:00
Steven Honson
a73283dc10 kernel: nf-nathelper-extra depends on ipt-raw
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
As automatic helper assignment is disabled in recent Linux kernels,
explicit rules must be added to the raw table for each helper.

While commit f50a524 in the firewall3 project added a set of default
rules and other additional related functionality, both this and the
alternative manual methods of defining these rules require kmod-ipt-raw.

Signed-off-by: Steven Honson <steven@honson.id.au>
2018-11-26 12:05:47 +01:00
Roman Bazalevsky
1f4f9b2116 kernel/modules: TI ADS1015 kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-11-25 19:26:56 +01:00
Roman Bazalevsky
e26a55e749 kernel/modules: ROHM BH1750 ALS IIO kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-11-25 19:26:56 +01:00
Stijn Tintel
43e1b38e4a kernel: drop old bluetooth config symbols
They do not exist in any of the supported kernel versions.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-11-12 19:11:54 +02:00
Rosen Penev
8fc187a76e kernel: Remove dependencies on old kernels
Kernels 4.1 and 4.4 are not part of the tree anymore.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-11-01 17:16:52 +01:00
Thomas Fuzeau
87e1894d59 kernel: add kmod-usb-serial-mos7840
Enable build of kernel module for mos7840 usb-serial devices.

Signed-off-by: Thomas Fuzeau <tfuzeau@loocla.com>
2018-11-01 13:44:48 +01:00
Roman Bazalevskiy
47e7a3904d kernel/modules: Aosong AM2315/AM2320 IIO kernel module support enabled.
Signed-off-by: Roman Bazalevskiy <rvb@rvb.name>
2018-10-20 16:24:29 +02:00
Deng Qingfang
858a8acf3e kernel/modules: add kmod-fou6 package
IPv6 support for Foo-over-UDP tunnel

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-10-20 16:24:23 +02:00
Linus Walleij
10ec966f7b gemini: Break out USB to packages
This creates a new kernel package for the fotg210 host
controller and uses that with the gemini to shrink the
kernel. The SQ201 needs the USB2 PCI package as well.

The build system required me to make kernel_oldconfig
beofore it would build without errors so some minor
unrelated Kconfig entries are changed.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-10-20 16:13:39 +02:00
Koen Vandeputte
f4b7dfcc4b netfilter: add missing dependency for kernel 4.14
Since kernel 4.14.75 commit ("netfilter: xt_cluster: add dependency on conntrack module")
a dependency is required on kmod-nf-conntrack.

It seems this was already present for kmod-ipt-clusterip
but not yet for kmod-ipt-cluster

Add it fixing a build error when including kmod-ipt-cluster:

Package kmod-ipt-cluster is missing dependencies for the following libraries:
nf_conntrack.ko
modules/netfilter.mk:665: recipe for target '/mnt/ramdisk/koen/firmware/builds/openwrt/bin/targets/cns3xxx/generic/packages/kmod-ipt-cluster_4.14.75-1_arm_mpcore_vfp.ipk' failed
make[3]: *** [/mnt/ramdisk/koen/firmware/builds/openwrt/bin/targets/cns3xxx/generic/packages/kmod-ipt-cluster_4.14.75-1_arm_mpcore_vfp.ipk] Error 1
make[3]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt/package/kernel/linux'
Command exited with non-zero status 2
time: package/kernel/linux/compile#1.80#0.05#2.07
package/Makefile:107: recipe for target 'package/kernel/linux/compile' failed
make[2]: *** [package/kernel/linux/compile] Error 2
make[2]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt'
package/Makefile:103: recipe for target '/mnt/ramdisk/koen/firmware/builds/openwrt/staging_dir/target-arm_mpcore+vfp_musl_eabi/stamp/.package_compile' failed
make[1]: *** [/mnt/ramdisk/koen/firmware/builds/openwrt/staging_dir/target-arm_mpcore+vfp_musl_eabi/stamp/.package_compile] Error 2
make[1]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt'
/mnt/ramdisk/koen/firmware/builds/openwrt/include/toplevel.mk:216: recipe for target 'world' failed
make: *** [world] Error 2

Fixes: f983956a8b ("kernel: bump 4.14 to 4.14.75")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.14.75&id=b969656b46626a674232c0eadf92a394b89df07c
2018-10-10 17:33:04 +02:00
Hauke Mehrtens
99e1a12fd0 kernel: Add missing config option for NFSDv4
This configuration option is not set when building the
layerscape/armv8_64b target.

Fixes: 92aa21497b ("kernel: build support for NFSv4 in nfsd")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 23:18:33 +02:00
W. Michael Petullo
92aa21497b kernel: build support for NFSv4 in nfsd
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-09-29 17:23:11 +02:00
Hauke Mehrtens
3404c5978a samsung: Add missing dependencies to kmod-of-mdio
The samsung target builds of_mdio.ko as a module, add the needed
dependency to it.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 17:23:11 +02:00
Mauro Mozzarelli
9f105ce8c8 kernel: netfilter: add IPVS kernel module support
IPVS (IP Virtual Server) implements transport-layer load balancing inside
the Linux kernel, so called Layer-4 switching. IPVS running on a host acts
as a load balancer at the front of a cluster of real servers, it can direct
requests for TCP/UDP based services to the real servers, and makes services
of the real servers to appear as a virtual service on a single IP address.

This change adds the following kmod packages
- kmod-nf-ipvs
- kmod-nf-ipvs-ftp
- kmod-nf-ipvs-sip

Signed-off-by: Mauro Mozzarelli <mauro@ezplanet.org>
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-09-24 21:44:37 +01:00
Hartmut Knaack
d3a492c72f kernel: add Si7020 relative humidity/temperature sensor driver
Add support for the Silicon Labs Si7020 family of relative humidity and
temperature sensors using the I2C bus.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
2018-09-22 21:20:55 +02:00
Hartmut Knaack
265dcb05ea kernel: add TSL4531 ambient light sensor driver
Add support for the TAOS TSL4531x family of ambient light sensors using
the I2C bus.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
2018-09-22 21:20:55 +02:00
Hauke Mehrtens
e882e63f1e kernel: add missing dependency to regmap to kmod-gpio-mcp23s08
This fixes a build problem recently introduced.

Fixes: a904003b9b ("kernel: fix kmod-gpio-mcp23s08 for linux 4.14")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-25 18:18:35 +02:00
Keith Wong
79c233daa4 kernel: add kmod-tcp-bbr
This adds support for BBR (Bottleneck Bandwidth and RTT) TCP
congestion control. Applications (e.g. webservers, VPN client/server)
which initiate connections from router side can benefit from this.

This provide an easier way for users to use BBR by selecting /
installing kmod-tcp-bbr instead of altering kernel config and
compiling firmware by themselves.

Signed-off-by: Keith Wong <keithwky@gmail.com>
2018-08-25 15:40:24 +02:00
Martin Schiller
a904003b9b kernel: fix kmod-gpio-mcp23s08 for linux 4.14
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-08-25 15:33:52 +02:00
Jo-Philipp Wich
93ac8b03b0 Revert "netfilter: separate IPv6 relevant kernel modules from IPv4"
This reverts commit 42a3c6465a.

The change was apparently never build-tested with all kmods enabled. I took
a brief look but found no simple way to untangle this, so revert it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-06 19:46:37 +02:00
Rosy Song
42a3c6465a netfilter: separate IPv6 relevant kernel modules from IPv4
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-08-06 12:09:04 +02:00
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