Hi,
I just rebased the raspberry pi 2/3 kernel to 4.4.14, with a specific patch to cover also selinux/auditd support.
I'd like to have some additional testers (tested on my rpi2 and rpi3 boards). Create (for example) the /etc/yum.repos.d/kernel.repo file with the following content :
[kernel] name=rpi kernel baseurl=http://armv7.dev.centos.org/repodir/arm-kernels/rpi2-4.4.14/ gpgcheck=0 enabled=1
Then a traditional "yum update ; systemctl reboot" If you want to have selinux working, feel free to follow https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32?highlight=%28arm3... , except that for rpi2/rpi3, there is no /boot/exlinux/extlinux.conf, but rather edit /boot/cmdline.txt
Thanks for the feedback, and then we'll be able to sign/push those to mirrors (and also include those in newer images for rpi2/rpi3)
Fabian,
I've just tested the new 4.4.14 kernel version and I'm still having boot problems, I can only see the colored screen.
This is the list of files in the '/boot' filesystem after upgrading from 4.1.9-v7 using 'rpm -Uvh' instead of 'yum update'. Please compare with yours and let me know any discrepancies:
# l total 39920 -rwxr-xr-x. 1 mikaku users 17932 Jul 6 12:45 bootcode.bin -rwxr-xr-x. 1 mikaku users 112 Jun 7 08:24 cmdline.txt -rwxr-xr-x. 1 mikaku users 276 Mar 15 15:32 config.txt -rwxr-xr-x. 1 mikaku users 18693 Jul 4 12:14 COPYING.linux -rwxr-xr-x. 1 mikaku users 2504 Jul 6 12:45 fixup_cd.dat -rwxr-xr-x. 1 mikaku users 6480 Jul 6 12:45 fixup.dat -rwxr-xr-x. 1 mikaku users 9719 Jul 6 12:45 fixup_db.dat -rwxr-xr-x. 1 mikaku users 9713 Jul 6 12:45 fixup_x.dat drwx------. 2 mikaku users 8192 Jun 6 17:03 grub -rwxr-xr-x. 1 mikaku users 19854145 Dec 31 1979 initramfs-4.4.14-v7.2.20160704gite98827a.el7.img -rwxr-xr-x. 1 mikaku users 4340176 Jul 11 15:46 kernel-4.4.14-v7.2.20160704gite98827a.el7.img -rwxr-xr-x. 1 mikaku users 4340176 Dec 31 1979 kernel7.img -rwxr-xr-x. 1 mikaku users 1494 Jul 6 12:45 LICENCE.broadcom drwx------. 2 mikaku users 16384 Dec 31 1979 overlays -rwxr-xr-x. 1 mikaku users 618296 Jul 6 12:45 start_cd.elf -rwxr-xr-x. 1 mikaku users 4927256 Jul 6 12:45 start_db.elf -rwxr-xr-x. 1 mikaku users 2747544 Jul 6 12:45 start.elf -rwxr-xr-x. 1 mikaku users 3878712 Jul 6 12:45 start_x.elf
Before the upgrade there was the file 'initrd-plymouth.img' but it looks like now is missing, I guess this was part of the upgrade process. Some files also have changed a little their size.
# cat cmdline.txt dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait ipv6_disable=1
# cat config.txt #uncomment to overclock the arm. 700 MHz is the default. arm_freq=700# NOOBS Auto-generated Settings: hdmi_force_hotplug=1 config_hdmi_boost=4 overscan_left=24 overscan_right=24 overscan_top=16 overscan_bottom=16 disable_overscan=0 core_freq=250 sdram_freq=400 over_voltage=0
Thanks.
Fabian,
Following your recommendation, I've created the 'kernel.repo' file and updated the kernel using 'yum update'; all is working fine now.
Thanks!
Hello,
I've discovered that with the new kernel the standard UART 16550 (/dev/ttyS0) is not detected:
with kernel 4.1.9-v7: --------------------- # dmesg | grep tty [ 0.000000] Kernel command line: 8250.nr_uarts=1 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=976 bcm2708_fb.fbheight=736 bcm2709.boardrev=0xa02082 bcm2709.serial=0xfa9d86a7 smsc95xx.macaddr=B8:27:EB:9D:86:A7 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait ipv6.disable=1 [ 0.001289] console [tty1] enabled [ 0.283910] 3f215040.uart: ttyS0 at MMIO 0x3f215040 (irq = 29, base_baud = 31250000) is a 16550 [ 0.998791] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 83, base_baud = 0) is a PL011 rev2 [ 2.511900] systemd[1]: Created slice system-getty.slice. [ 2.515620] systemd[1]: Starting system-getty.slice.
with kernel 4.4.14-v7: --------------------- # dmesg | grep tty [ 0.000000] Kernel command line: 8250.nr_uarts=0 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1232 bcm2708_fb.fbheight=992 bcm2709.boardrev=0xa02082 bcm2709.serial=0xda72ae64 smsc95xx.macaddr=B8:27:EB:72:AE:64 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait ipv6_disable=1 [ 0.001336] console [tty1] enabled [ 1.997145] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2 [ 3.271457] systemd[1]: Created slice system-getty.slice. [ 3.276833] systemd[1]: Starting system-getty.slice.
Can anyone confirm this? Thanks.
[SOLVED]
According to this thread https://www.raspberrypi.org/forums/viewtopic.php?t=148713&p=978725 just adding the following line in the '/boot/config.txt' is enough to have '/dev/ttyS0' back again.
enable_uart=1
Thanks.
On 07/13/2016 12:03 PM, Jordi Sanfeliu wrote:
Hello,
I've discovered that with the new kernel the standard UART 16550 (/dev/ttyS0) is not detected:
with kernel 4.1.9-v7:
# dmesg | grep tty [ 0.000000] Kernel command line: 8250.nr_uarts=1 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=976 bcm2708_fb.fbheight=736 bcm2709.boardrev=0xa02082 bcm2709.serial=0xfa9d86a7 smsc95xx.macaddr=B8:27:EB:9D:86:A7 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait ipv6.disable=1 [ 0.001289] console [tty1] enabled [ 0.283910] 3f215040.uart: ttyS0 at MMIO 0x3f215040 (irq = 29, base_baud = 31250000) is a 16550 [ 0.998791] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 83, base_baud = 0) is a PL011 rev2 [ 2.511900] systemd[1]: Created slice system-getty.slice. [ 2.515620] systemd[1]: Starting system-getty.slice.
with kernel 4.4.14-v7:
# dmesg | grep tty [ 0.000000] Kernel command line: 8250.nr_uarts=0 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1232 bcm2708_fb.fbheight=992 bcm2709.boardrev=0xa02082 bcm2709.serial=0xda72ae64 smsc95xx.macaddr=B8:27:EB:72:AE:64 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait ipv6_disable=1 [ 0.001336] console [tty1] enabled [ 1.997145] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2 [ 3.271457] systemd[1]: Created slice system-getty.slice. [ 3.276833] systemd[1]: Starting system-getty.slice.
Can anyone confirm this? Thanks.
Hi Fabian,
I recompiled these for redsleeve. This seems also to work.
couple of comments though: - I got an install error: "cp: target `/boot/overlays/' is not a directory" maybe add this directory to the kernel rpm - and another: "line 6: /usr/sbin/dracut: No such file or directory" maybe depend on dracut (is this needed? it boots fine without)
Now only find out how to enable selinux :)
Jacco
On 07/11/2016 07:22 PM, Fabian Arrotin wrote:
Hi,
I just rebased the raspberry pi 2/3 kernel to 4.4.14, with a specific patch to cover also selinux/auditd support.
I'd like to have some additional testers (tested on my rpi2 and rpi3 boards). Create (for example) the /etc/yum.repos.d/kernel.repo file with the following content :
[kernel] name=rpi kernel baseurl=http://armv7.dev.centos.org/repodir/arm-kernels/rpi2-4.4.14/ gpgcheck=0 enabled=1
Then a traditional "yum update ; systemctl reboot" If you want to have selinux working, feel free to follow https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32?highlight=%28arm3... , except that for rpi2/rpi3, there is no /boot/exlinux/extlinux.conf, but rather edit /boot/cmdline.txt
Thanks for the feedback, and then we'll be able to sign/push those to mirrors (and also include those in newer images for rpi2/rpi3)
On 15/07/16 13:00, Jacco Ligthart wrote:
Hi Fabian,
I recompiled these for redsleeve. This seems also to work.
couple of comments though:
- I got an install error: "cp: target `/boot/overlays/' is not a directory" maybe add this directory to the kernel rpm
- and another: "line 6: /usr/sbin/dracut: No such file or directory" maybe depend on dracut (is this needed? it boots fine without)
Now only find out how to enable selinux :)
Jacco
Hi Jacco,
The .spec has this : Requires: dracut
And it's called in %post /usr/sbin/dracut /boot/initramfs-%{version}-%{release}.img %{version}-%{release} I'll have a look at the /boot/overlays thing
For selinux, it works fine and it's all included (via bcm2709_selinux_config.patch). Be sure that your /boot/cmdline.txt doesn't disable it, and that /etc/sysconfig/selinux is correctly configured :-)
Worth knowing that I'll be slow on emails (offline for summer holidays)
On 07/15/2016 01:10 PM, Fabian Arrotin wrote:
On 15/07/16 13:00, Jacco Ligthart wrote:
Hi Fabian,
I recompiled these for redsleeve. This seems also to work.
couple of comments though:
- I got an install error: "cp: target `/boot/overlays/' is not a directory" maybe add this directory to the kernel rpm
- and another: "line 6: /usr/sbin/dracut: No such file or directory" maybe depend on dracut (is this needed? it boots fine without)
Now only find out how to enable selinux :)
Jacco
Hi Jacco,
The .spec has this : Requires: dracut
And it's called in %post /usr/sbin/dracut /boot/initramfs-%{version}-%{release}.img %{version}-%{release}
$ rpm -qpR /tmp/raspberrypi2-kernel-4.4.14-v7.2.20160704gite98827a.el7.armv7hl.rpm
/bin/sh
/bin/sh
/bin/sh
rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1
This does not show dracut (or any of the other requires). Maybe we should do the requires in the kernel package section, in stead of the main section that does not really produce a package. (probably my bad :( ) This would also explains why I previously had similar issues with coreutils as requires.
I'll have a look at the /boot/overlays thing
For selinux, it works fine and it's all included (via bcm2709_selinux_config.patch). Be sure that your /boot/cmdline.txt doesn't disable it, and that /etc/sysconfig/selinux is correctly configured :-)
Not sure what happens: cmdline.txt has no reference to selinux at all.
the config should be OK: $ grep -v ^# /etc/selinux/config SELINUX=permissive SELINUXTYPE=targeted
It seems to start at boot time: $ dmesg |grep -i selinux [ 0.000657] SELinux: Initializing. [ 0.000705] SELinux: Starting in permissive mode [ 0.266061] SELinux: Registering netfilter hooks
But in the end it is disabled: $ getenforce Disabled
On 07/15/2016 06:34 AM, Jacco Ligthart wrote:
On 07/15/2016 01:10 PM, Fabian Arrotin wrote:
On 15/07/16 13:00, Jacco Ligthart wrote:
Hi Fabian,
I recompiled these for redsleeve. This seems also to work.
couple of comments though:
- I got an install error: "cp: target `/boot/overlays/' is not a directory" maybe add this directory to the kernel rpm
- and another: "line 6: /usr/sbin/dracut: No such file or directory" maybe depend on dracut (is this needed? it boots fine without)
Now only find out how to enable selinux :)
Jacco
Hi Jacco,
The .spec has this : Requires: dracut
And it's called in %post /usr/sbin/dracut /boot/initramfs-%{version}-%{release}.img %{version}-%{release}
$ rpm -qpR /tmp/raspberrypi2-kernel-4.4.14-v7.2.20160704gite98827a.el7.armv7hl.rpm
/bin/sh
/bin/sh
/bin/sh
rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1
This is that same on all the older kernels as well. I just looked at the 4.1.11 and 4.1.19 kernels, same requires.
For selinux, it works fine and it's all included (via bcm2709_selinux_config.patch). Be sure that your /boot/cmdline.txt doesn't disable it, and that /etc/sysconfig/selinux is correctly configured :-)
Not sure what happens: cmdline.txt has no reference to selinux at all.
the config should be OK: $ grep -v ^# /etc/selinux/config SELINUX=permissive SELINUXTYPE=targeted
It seems to start at boot time: $ dmesg |grep -i selinux [ 0.000657] SELinux: Initializing. [ 0.000705] SELinux: Starting in permissive mode [ 0.266061] SELinux: Registering netfilter hooks
But in the end it is disabled: $ getenforce Disabled
sorry about the noise. I did not notice that my test system was still in redsleeve6 mode. After booting redsleeve7 it is now happy relabeling.
Jacco
Hi Fabian,
I updated this to version 4.4.21, while fixing some bugs along the way.
See attached SPEC file.
Jacco
On 11-07-16 19:22, Fabian Arrotin wrote:
Hi,
I just rebased the raspberry pi 2/3 kernel to 4.4.14, with a specific patch to cover also selinux/auditd support.
I'd like to have some additional testers (tested on my rpi2 and rpi3 boards). Create (for example) the /etc/yum.repos.d/kernel.repo file with the following content :
[kernel] name=rpi kernel baseurl=http://armv7.dev.centos.org/repodir/arm-kernels/rpi2-4.4.14/ gpgcheck=0 enabled=1
Then a traditional "yum update ; systemctl reboot" If you want to have selinux working, feel free to follow https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32?highlight=%28arm3... , except that for rpi2/rpi3, there is no /boot/exlinux/extlinux.conf, but rather edit /boot/cmdline.txt
Thanks for the feedback, and then we'll be able to sign/push those to mirrors (and also include those in newer images for rpi2/rpi3)
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev
thinking this over during my commute this afternoon, I think we still overcomplicate it a bit :)
I started out with packaging binary blobs from github. One of the things I noticed was that different builds could have the same kernel version. To allow for both being present at the same system at the same time, I needed the ugly linking logic (specially in the /lib/modules directory). But now we build ourselves. we can control the kernel version and thus don't need the ugly links any more.
any thoughts?
Jacco
On 25-09-16 21:09, Jacco Ligthart wrote:
Hi Fabian,
I updated this to version 4.4.21, while fixing some bugs along the way.
See attached SPEC file.
Jacco
On 11-07-16 19:22, Fabian Arrotin wrote:
Hi,
I just rebased the raspberry pi 2/3 kernel to 4.4.14, with a specific patch to cover also selinux/auditd support.
I'd like to have some additional testers (tested on my rpi2 and rpi3 boards). Create (for example) the /etc/yum.repos.d/kernel.repo file with the following content :
[kernel] name=rpi kernel baseurl=http://armv7.dev.centos.org/repodir/arm-kernels/rpi2-4.4.14/ gpgcheck=0 enabled=1
Then a traditional "yum update ; systemctl reboot" If you want to have selinux working, feel free to follow https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32?highlight=%28arm3... , except that for rpi2/rpi3, there is no /boot/exlinux/extlinux.conf, but rather edit /boot/cmdline.txt
Thanks for the feedback, and then we'll be able to sign/push those to mirrors (and also include those in newer images for rpi2/rpi3)
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev
found another bug in %postun:
The whole reason for this section is to keep a working system after removing the *newest* kernel. I think for this to work correctly, we also need to revert the dtb's and the overlays. complicating factor is that the directory /usr/share/raspberrypi2-kernel/4.4.21-v7.1.20160924git0fe7fe3.el7 is not part of the %files section. it might not get removed on uninstall. This'll make it dificult to assess which dtb is the newest.
Jacco
PS disadvantage of the current logic is that it will always configure your system for the latest kernel, when removing a random kernel package. another concern is the sorting logic. it might find that f.i. 4.4.6 is 'newer' than 4.4.21
On 25-09-16 21:09, Jacco Ligthart wrote:
Hi Fabian,
I updated this to version 4.4.21, while fixing some bugs along the way.
See attached SPEC file.
Jacco
On 11-07-16 19:22, Fabian Arrotin wrote:
Hi,
I just rebased the raspberry pi 2/3 kernel to 4.4.14, with a specific patch to cover also selinux/auditd support.
I'd like to have some additional testers (tested on my rpi2 and rpi3 boards). Create (for example) the /etc/yum.repos.d/kernel.repo file with the following content :
[kernel] name=rpi kernel baseurl=http://armv7.dev.centos.org/repodir/arm-kernels/rpi2-4.4.14/ gpgcheck=0 enabled=1
Then a traditional "yum update ; systemctl reboot" If you want to have selinux working, feel free to follow https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32?highlight=%28arm3... , except that for rpi2/rpi3, there is no /boot/exlinux/extlinux.conf, but rather edit /boot/cmdline.txt
Thanks for the feedback, and then we'll be able to sign/push those to mirrors (and also include those in newer images for rpi2/rpi3)
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev
Arm-dev mailing list Arm-dev@centos.org https://lists.centos.org/mailman/listinfo/arm-dev