Ok guys, here is my first question on how to change to another kernel version. I’m using a BBG for my omni-robot project, and started opting for using the PRU’s to generate accurate variable frequency PWM signals for my stepper motors (my c code was still showing the occasional delays in frequency pulses due to the non-realtime nature of the kernel). At the time, I was using linux-image-4.1.15-bone-rt-r18. I’m not yet convinced to use the remoteproc driver to handle the PRU’s, and would like to use the uio driver instead. It boils down to two questions in the end:
- is it possible to install another kernel image, and how is this done exactly? Unfortunately I managed to get my image on the sd-card unbootable when installing another kernel (bone-kernel instead of ti-kernel). I guess that uEnv.txt is not correctly updated when switching kernels. Actually I forgot to install the kernel headers in the same pass, and this lead to a series of upgrade errors maybe causing the booting issue. I might be able to restore my image somehow if possible, although I still can use the data by just inserting the SD card in my PC.
That let me wonder secondly, I now downloaded a more recent sd-card image (bone-debian-8.4-lxqt-4gb-armhf-2016-05-13-4gb.img with 4.4.9-ti-r25 kernel), but what does this image exactly contain? In the end I’m looking for a kernel version supporting PRU uio drivers enabling me to use the prussdrv.h in my c files. I understood that the bone-kernel is to be used instead of the ti-kernel, although when now having a quick peek into what drivers are actually loaded I see to my surprise uio_pdrv_genirq, so I guess the naming convention of “ti” kernels was changed somewhere in the past, although not entirely sure if this was correct in the first place.
I made a dump of available kernels of this release, and shows a huge amount of kernels, which more or less show some understandable (but also less understandable) variations. There’s for instance
as well as
and more flavours combinations.
Here’s my guess when reading some forum posts:
ti: (with remoteproc instead of uio PRU driver?)
bone: (with uio instead of remoteproc PRU driver?)
dbg: (meaning debug?)
rt: (meaning soft realtime?)
- The “ti” version seems to be dropped starting the 4.5.0 series kernel, so I guess remoteproc was dropped in the end with newer kernels altogether?
So I think I’m fine with the new downloaded image but feels a bit fuzzy hit& miss if this is the correct one. Anyone some hints or tips where to find some more details on the kernel versioning?