kernel_build
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
kernel_build [2025/01/21 23:29] – ounsatn | kernel_build [2025/01/21 23:45] (current) – ounsatn | ||
---|---|---|---|
Line 33: | Line 33: | ||
Extract kernel source 5.15 with | Extract kernel source 5.15 with | ||
< | < | ||
+ | |||
+ | it will create a folder linux-5.15, this is what i call __**source tree**__ ( or kernel source ) | ||
{{http:// | {{http:// | ||
Line 54: | Line 56: | ||
apply dos2unix on each patches, and in folder patches ( extracted from patches-5.15.86-rt56) | apply dos2unix on each patches, and in folder patches ( extracted from patches-5.15.86-rt56) | ||
- | < | + | < |
cd patches | cd patches | ||
dos2unix *.patch </ | dos2unix *.patch </ | ||
- | Go to kernel | + | __Go to kernel |
Line 74: | Line 76: | ||
- | go to source tree folder : | + | __stay in source tree folder :__ |
Change localversion in file localversion-rt | Change localversion in file localversion-rt | ||
Line 87: | Line 89: | ||
It gives a file named " | It gives a file named " | ||
- | Copy this file in source tree as " | + | Copy this file in source tree folder |
- | + | go to source tree folder | |
- | go to source tree to build menuconfig | + | |
< | < | ||
+ | |||
{{http:// | {{http:// | ||
+ | |||
+ | |||
.config taken from force has features like : | .config taken from force has features like : | ||
- | - General Setup / Local version string, now it's empty (let it empty ) | + | - General Setup / Local version string, now it's empty (let it empty ) |
- | - General Setup / Preemption model => Fully Preemptible Kernel ( Real-Time ) : this give the rt56. | + | |
+ | - General Setup / Preemption model => Fully Preemptible Kernel ( Real-Time ) : this give the rt features. | ||
this option is only available after patching with rt56 patch. | this option is only available after patching with rt56 patch. | ||
+ | |||
+ | ( and of course other features ...) | ||
+ | |||
{{http:// | {{http:// | ||
Line 105: | Line 113: | ||
- | As we have the kernel configuration, | + | As we have the kernel configuration, |
- | To test kernel, i will compile a module which is not there by default , I will do it with " | + | To test kernel |
It's in : DeviceDrivers >> Input device support >> Joystick Interface | It's in : DeviceDrivers >> Input device support >> Joystick Interface | ||
+ | |||
Just put a M like below , then save & Exit menuconfig | Just put a M like below , then save & Exit menuconfig | ||
+ | |||
{{http:// | {{http:// | ||
- | Now when your back in source tree type | + | Now when your back in source tree folder |
< | < | ||
{{http:// | {{http:// | ||
- | then go to your module folder in source tree. | + | Then go to your module folder in source tree. |
- | For joystick we've checked it's in / | + | For joystick |
and launch : | and launch : | ||
+ | |||
< | < | ||
syntax is : make -C < | syntax is : make -C < | ||
Line 134: | Line 146: | ||
- | + | Make detects that you have checked | |
- | Make detects that you have check joystick device as module in kernel config, so it compiles the associated module source file. | + | |
Line 149: | Line 160: | ||
Now it's time to copy module on your force. | Now it's time to copy module on your force. | ||
+ | |||
On AKF : | On AKF : | ||
+ | |||
remount / partition in rw : | remount / partition in rw : | ||
+ | |||
< | < | ||
+ | |||
copy module file to / | copy module file to / | ||
- | Each time i copy a module, i try to respect the source tree path, so if you don't have drivers/ | + | Each time i copy a module, i try to respect the source tree path, so if you don't have **drivers/ |
- | then do command depmod | + | then do command depmod |
< | < | ||
+ | Issue command lsmod to see current loaded modules : | ||
+ | |||
+ | {{http:// | ||
+ | |||
+ | do modprobe joydev | ||
+ | |||
+ | Issue it again, tadaaaa it's there. | ||
+ | {{http:// | ||
kernel_build.1737498577.txt.gz · Last modified: 2025/01/21 23:29 by ounsatn