Since CONFIG_CFI exists since 6.18rc1, the requirement must be
>=6.18_rc1. This went unnoticed in my testing because my kernel
incorrectly had a version of 6.18.0_rc1, which is greater than 6.18.0,
but the correct version would be 6.18_rc1, which is lower than 6.18.0.
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7430>
Based on running kconfig check against a few kernel configs in pmaports
(which presumably already work/boot), and fixing the INFO messages when
it complained about an option should be builtin.
This also:
- removes some options that were in the default category that were
redefined/duplicated elsewhere, in order to avoid confusion later.
- moves CONFIG_CBC to the default category (used by FDE and a few other
things)
Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7136>
NFS allow the user to mount distant resources locally, and this is
specially great for mobiles devices, with limited disk space. The user
can couple this with FS-Cache, to limit the network impact. Kerberos
bring security to the NFS mounting.
This new category "netmout" make sure the kernels are built to support
this.
These options are things that other required kconfig depend on, found
when creating a new config from scratch and noticing a few required
kconfig wasn't making it into the final config.
I don't expect this to have any impact on existing kernel packages that
already pass the kconfig check, because they would already need to have
these options enabled.
Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6641
Since kernel v6.14-rc3 HID_LENOVO now depends on ACPI which we don't
want to require enabling on various non-ACPI phones.
Move to it x86 & x86_64 since it's anyways apparently only useful for
"Lenovo / Thinkpad devices".
Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6387
[ci:skip-build]: already built successfully in CI
The null TTY driver provides a proper (dummy) TTY interface when
console=null is set on the kernel cmdline. This fixes certain
applications which don't correctly handle read() immediately returning
with 0 bytes (e.g. busybox syslogd).
Most normal EFI devices don't boot with console=null and as such there
are various foot-guns littered all over Linux userspace and even in our
own initramfs. However some android devices even enforce console=null,
so it's something we have to deal with.
NULL_TTY should reduce the chance of folks running into strange problems
because of this.
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
CONFIG_LEDS_GROUP_MULTICOLOR just had to be re-enabled to fix a
regression. Add this to kconfigcheck to prevent disabling it by
accident in the future. Adjust the description of the Librem 5
specific section while at it.
[ci:skip-build] [ci:skip-vercheck]: no need to rebuild
This drops some kconfig that was added in !5836, which shouldn't be
required for device kernels to comply with the "input" kconfig check.
HID_HYPERV_MOUSE: requires enabling HyperV guest support in the kernel,
we shouldn't impose this on all device kernels.
HID_KUNIT_TEST: No reason to enable kunit support, we aren't testing the
kernel with device kernels
SURFACE_HID: Requires enabling a bunch of Microsoft Surface platform
drivers/support, doesn't make sense to require for all device kernels.
Kernels that support Surface devices can enable these as needed, since I
don't think any non-surface devices would even have surface HID input hw
in them.
Looks like a lot of HID drivers are missing from pmOS device-specific
kernels. Let's try to deal with it by enabling all the HID related
drivers that the Fedora aarch64 and x86 kernels enable.
[ci:skip-kconfig-check]: too many kernels fail from the new required
config here, it's unfeasible to update them all right now
main/postmarketos-base/rootfs-etc-conf.d-zram-init configures zstd as our
default ZRAM configuration, but the kconfigcheck only checks for LZ4 at the
moment. Because of this some of our kernels don't actually have ZSTD
support enabled and end up using the default compression algorithm.
For Linux >=4.18 we should enable CONFIG_CRYPTO_ZSTD to enable ZSTD support
for ZRAM.
In Linux >=6.12 the configuration was changed to CONFIG_ZRAM_BACKEND_ZSTD.
This requires manual edits while upgrading, otherwise only LZO support will
remain enabled.
Checking for >=3.14.0 additionally does not make any sense, because the
kconfig check should not be enabled for kernels that cannot satisfy our
minimum requirements.
Describe this properly in kconfigcheck.toml to ensure kernels are
configured correctly.
The following kernels are currently missing the correct options:
config-htc-flounder.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-amlogic.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-grate.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-msm8974.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sc7280.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6115.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6350.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-purism-librem5.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
The following kernels are too old to support CONFIG_CRYPTO_ZSTD:
config-samsung-jxelte.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-volla-mimameid.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)