From a6557b92bcfcf4e828b1166c94dcfbb233ecec2e Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Thu, 8 Sep 2016 18:55:52 +0200 Subject: [PATCH] linux: Add stable version 4.7.3, select CPU_FREQ Do as Greg says [1]: > All users of the 4.7 kernel series must upgrade. Summary of changes [2][3]: > ### AMDGPU, Intel i915, and Btrfs improvements, many updated drivers ### > > Looking at the changelog, we can notice that Linux kernel 4.7.3 comes > with several improvements to the Btrfs file system, many updated > drivers, in particular for things like AMDGPU, Intel i915, hwmon, I2C, > iiO, IOMMU, MD, PCI, PINCTRL, s390, USB, SCSI, VFIO, Virtio, GPIO, > EDAC, DAX, DMA, ACPI, CLK, and Crypto, as well as some enhancements to > the ARC, ARM64 (AArch64), PA-RISC, and x86 hardware architectures. > > Last but not least, the networking and sound stacks have been improved > as well, with support for new sound devices, as well as various > changes to the mac80211 wireless framework and SunRPC protocol. If > you're using a GNU/Linux distribution powered by a kernel from the > Linux 4.7 series, we recommend that you update to Linux kernel 4.7.3 > as soon as possible. The sources are available for download right now > via our website or from kernel.org. Also, enable frequency scaling. ``` > diff -u /boot/config-4.7.2.mx64.99 /boot/config-4.7.3.mx64.102 --- /boot/config-4.7.2.mx64.99 2016-08-23 10:10:49.000000000 +0200 +++ /boot/config-4.7.3.mx64.102 2016-09-08 19:27:06.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.7.2 Kernel Configuration +# Linux/x86 4.7.3 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -53,7 +53,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" # CONFIG_COMPILE_TEST is not set -CONFIG_LOCALVERSION=".mx64.99" +CONFIG_LOCALVERSION=".mx64.102" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y @@ -609,7 +609,40 @@ # # CPU Frequency scaling # -# CONFIG_CPU_FREQ is not set +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +# CONFIG_CPU_FREQ_STAT_DETAILS is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=m +CONFIG_CPU_FREQ_GOV_USERSPACE=m +CONFIG_CPU_FREQ_GOV_ONDEMAND=m +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=m + +# +# CPU frequency scaling drivers +# +CONFIG_X86_INTEL_PSTATE=y +# CONFIG_X86_PCC_CPUFREQ is not set +CONFIG_X86_ACPI_CPUFREQ=m +CONFIG_X86_ACPI_CPUFREQ_CPB=y +CONFIG_X86_POWERNOW_K8=m +CONFIG_X86_AMD_FREQ_SENSITIVITY=m +# CONFIG_X86_SPEEDSTEP_CENTRINO is not set +# CONFIG_X86_P4_CLOCKMOD is not set + +# +# shared options +# +# CONFIG_X86_SPEEDSTEP_LIB is not set # # CPU Idle ``` This addresses the Linux warnings below. ``` Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: acpi PNP0C0B:04: Failed to set initial power state Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: acpi PNP0C0B:04: Cannot transition from (unknown) to D3hot Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: Monitor-Mwait will be used to enter C-1 state Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: Monitor-Mwait will be used to enter C-2 state Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: Monitor-Mwait will be used to enter C-3 state Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: Warning: Processor Platform Limit event detected, but not handled. Sep 07 16:54:36 keineahnung.molgen.mpg.de kernel: Consider compiling CPUfreq support into your kernel. ``` [1] https://lkml.org/lkml/2016/9/7/69 [2] http://news.softpedia.com/news/linux-kernel-4-7-3-released-with-btrfs-and-amdgpu-improvements-bugfixes-508063.shtml [3] https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.3 --- linux-4.7.3-102.bee | 76 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100755 linux-4.7.3-102.bee diff --git a/linux-4.7.3-102.bee b/linux-4.7.3-102.bee new file mode 100755 index 000000000..beff9b17f --- /dev/null +++ b/linux-4.7.3-102.bee @@ -0,0 +1,76 @@ +#!/bin/env beesh + +# note: CONFIG=/boot/config-WHATEVER BEE_MAKEFLAGS='-j 40' ./linux-xxx.bee + +KERNELVERSION=${PKGVERSION} +if [ -z "${PKGVERSION[3]}" ] ; then + KERNELVERSION=${KERNELVERSION}.0 +fi + +echo $KERNELVERSION + +SRCURL[0]="https://cdn.kernel.org/pub/linux/kernel/v${PKGVERSION[1]}.x/linux-${PKGVERSION}.tar.xz" + +# EXCLUDE="" + +#CONFIG= + +KERNELLOCAL=".mx64.${PKGREVISION}" +FULLKERNELVERSION="${KERNELVERSION}${KERNELLOCAL}" + +B=${S} + +mee_patch() { + echo "PATCH $@" + bee_patch $@ +} + +mee_configure() { + echo "configure $@" + if [ -e /proc/config.gz ] ; then + zcat /proc/config.gz >config-current + RUNNING=config-current + else + RUNNING=/boot/config-$(uname -r) + fi + + : ${CONFIG:=${RUNNING}} + + if [ ! -e ${CONFIG} ] ; then + echo "can't find config '${CONFIG}'" + exit 1 + fi + + cp -v ${CONFIG} .config + + LOCALVERSION="\"${KERNELLOCAL}\"" + sed -i -e "s@CONFIG_LOCALVERSION=.*@CONFIG_LOCALVERSION=${LOCALVERSION}@" .config + + echo "doing make -C ${S} olddefconfig in ${PWD} .." + + make olddefconfig + + echo "doing make -C ${S} menuconfig in ${PWD} .." + + make menuconfig +} + +mee_build() { + echo "build $@" + make ${BEE_MAKEFLAGS} +} + +mee_install() { + echo "install $@" + + make modules_install INSTALL_MOD_PATH=${D} + make install INSTALL_PATH=${D}/boot +# make firmware_install INSTALL_MOD_PATH=${D} + + rm -v ${D}/lib/modules/${FULLKERNELVERSION}/{source,build} + + ln -sv /usr/src/linux/${PKGALLPKG}/source ${D}/lib/modules/${FULLKERNELVERSION}/source + ln -sv /usr/src/linux/${PKGALLPKG}/build ${D}/lib/modules/${FULLKERNELVERSION}/build + + ln -sv bzImage-${FULLKERNELVERSION} ${D}/boot/mariux.${PKGREVISION} +}