I need to recompile my current Beaglebone Black Linux kernel (4.4.91) to set CONFIG_STRICT_DEVMEM=n.
This will allow the use of mmap to access the SPI interface hardware directly, among other things.
So far…
I have loaded the latest version of arm-linux-gnueabihf gcc.
Cloned the latest kernel source (https://github.com/beagleboard/linux/git) which is currently 4.4.91.
Modified the kernel config options to set CONFIG_STRICT_DEVMEM=n.
Compiled the kernel.
Cloned, patched, and compiled u-boot.
At this point the instructions that I have been following diverge and are more concerned with creating a bootable image
on the SD card for testing or for replacing the entire contents of the eMMC on the Beaglebone.
What I want to do is replace the existing kernel on eMMC with minimal impact to the current configuration.
My current filesystem is BeagleBoard.org Debian Image 2016-05-13.
Can someone explain the process to replace the kernel on eMMC?
First cat ./include/generated/utsrelease.h in your build directory:
You'll see something similar like:
#define UTS_RELEASE "4.14.12-00004-gdb0cd0519e45"
That's your Kernel Version, then just follow this:
Copy zImage to /boot/vmlinuz-`Kernel Version`
Copy *.dtb to /boot/dtbs/`Kernel Version`/
Copy modules to /lib/modules/`Kernel Version`
Edit /boot/uEnv.txt and update uname_r=`Kernel Version`
Regards,
Robert,
Thanks that was just what I needed.
I have successfully rebooted the system with the new kernel.
I did have to do some more research since I had neglected to compile and install the modules to a folder, but I was able to get through that.
One thing that bothers me is whether I need to do anything about the kernel headers.
I was wondering since I still can not access /dev/mem.
There is something locking me out that I need to find and change.
I know that the c program that I have to access /dev/mem works since I was able to get it to work with an older kernel but I was forced to upgrade because with the older kernel the pru_rproc driver did not work.
Dennis
Thank you very much, this worked well!
Please, could you tell me, what is the default make path of kernel modules? A have not found them after compilation.
Dne úterý 9. ledna 2018 22:49:08 UTC+1 Dennis K napsal(a):
Thank You very much, it works well!
Please, could you tell me, what is the default path of module compiling output? I have compiled kernel and modules, kernel is in ./linux/arch/arm/boot/, but I can not find .ko files anywhere…
Many thanks.
Dne pátek 5. ledna 2018 22:08:14 UTC+1 RobertCNelson napsal(a):