User Tools

Site Tools


kernel_modules

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
kernel_modules [2026-06-08 06:50 UTC (3 months ago)] – [Building] fredchankernel_modules [2026-07-31 01:18 UTC (4 weeks ago)] (current) – [Building] fix missing filename fredchan
Line 12: Line 12:
   - Obtain the Linux kernel config from the PM3, located at ''/proc/config.gz''. Unzip this file to ''.config'' in the root of the kernel source.   - Obtain the Linux kernel config from the PM3, located at ''/proc/config.gz''. Unzip this file to ''.config'' in the root of the kernel source.
   - In ''.config'', change the line ''CONFIG_LOCALVERSION_AUTO=y'' to ''CONFIG_LOCALVERSION_AUTO=n''.   - In ''.config'', change the line ''CONFIG_LOCALVERSION_AUTO=y'' to ''CONFIG_LOCALVERSION_AUTO=n''.
-  - If you're trying to build kernel modules that are already in the Linux source code, set the appropriate config options to ''m''. For example, setting ''CONFIG_SLIP=m'' enabled SLIP support to be compiled to ''drivers/net/slip/.ko''.+  - If you're trying to build kernel modules that are already in the Linux source code, set the appropriate config options to ''m''. For example, setting ''CONFIG_SLIP=m'' enabled SLIP support to be compiled to ''drivers/net/slip/slip.ko''.
   - In ''Makefile'', change the line ''EXTRAVERSION ='' to ''EXTRAVERSION = -fsl-imx-INIT-004'', or whatever comes after the PM3's ''uname -r'' for you.   - In ''Makefile'', change the line ''EXTRAVERSION ='' to ''EXTRAVERSION = -fsl-imx-INIT-004'', or whatever comes after the PM3's ''uname -r'' for you.
   - In ''/scripts/dtc/dtc-lexer.lex.c'' and ''/scripts/dtc/dtc-lexer.lex.c_shipped'', change ''YYLTYPE yylloc;'' to ''extern YYLTYPE yylloc;''   - In ''/scripts/dtc/dtc-lexer.lex.c'' and ''/scripts/dtc/dtc-lexer.lex.c_shipped'', change ''YYLTYPE yylloc;'' to ''extern YYLTYPE yylloc;''
   - Run ''git add .'' and ''git commit''.   - Run ''git add .'' and ''git commit''.
-  - Run ''make LOCALVERSION= -C . modules''+  - Run ''make LOCALVERSION= -C . modules''
 +    * If you are using Dockcross and you are in a bash environment inside the container, you may need to run ''sudo make'' instead of just ''make''.
   - ''scp'' your new kernel module to the PM3 and load it with ''insmod your_module.ko''. If it fails, check ''dmesg'' to see what's wrong.   - ''scp'' your new kernel module to the PM3 and load it with ''insmod your_module.ko''. If it fails, check ''dmesg'' to see what's wrong.
  
Line 28: Line 29:
 </code> </code>
 Then double check: Then double check:
-  * That ''CONFIG_LOCALVERSION_AUTO=n'' is set ''.config''.+  * That ''CONFIG_LOCALVERSION_AUTO=n'' is set in ''.config''.
   * That your ''make'' command has the option ''LOCALVERSION= ''.   * That your ''make'' command has the option ''LOCALVERSION= ''.
   * That you have no uncommitted changes according to git.   * That you have no uncommitted changes according to git.
kernel_modules.1780901423.txt.gz · Last modified: by fredchan