[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
slackwarearm:development_refguide_di [2022/03/22 11:54 (UTC)] – mozes | slackwarearm:development_refguide_di [2024/01/21 12:28 (UTC)] (current) – [Brain Dump] Kernel module loader example mralk3 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | <note warning> | + | <note warning> |
+ | |||
+ | |||
+ | |||
Line 7: | Line 11: | ||
| Version | | Version | ||
| Author | | Author | ||
+ | |||
+ | ==== Brain Dump ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
Line 24: | Line 34: | ||
This document is aimed at advanced Slackware and Linux users. | This document is aimed at advanced Slackware and Linux users. | ||
+ | |||
+ | ====== Slackware ARM Development Kit ====== | ||
+ | |||
+ | Using any of the build system referenced here requires the [[http:// | ||
+ | |||
+ | The Slackware ARM Development Kit is contained within the ' | ||
====== | ====== | ||
The boot loader employed on the RockPro64 and PineBook Pro is [[https:// | The boot loader employed on the RockPro64 and PineBook Pro is [[https:// | ||
+ | |||
+ | ==== Secure Boot ==== | ||
+ | |||
+ | Presently none of the bootware assets supplied by Slackware ARM are signed. | ||
+ | |||
+ | If the Hardware Model you're interested mandates Secure Boot, you'll need to figure this out for yourself. | ||
+ | |||
==== Trusted Firmware-A (ARM Trusted Firmware) ==== | ==== Trusted Firmware-A (ARM Trusted Firmware) ==== | ||
Line 42: | Line 65: | ||
==== U-Boot Boot Loader ==== | ==== U-Boot Boot Loader ==== | ||
- | ======= Recovery / Initialisation SD Card image ======= | + | ==== Recovery / Initialisation SD Card image ==== |
- | * Needs script work to create one | ||
- | ======= U-Boot configured to boot from SPI Flash ======= | + | ==== U-Boot configured to boot from SPI Flash ==== |
- | ======= U-Boot configured to boot from SD Card ======= | + | ==== U-Boot configured to boot from SD Card ==== |
Built and available but not used for either the Operating System Installation nor Operating System Proper. | Built and available but not used for either the Operating System Installation nor Operating System Proper. | ||
Line 56: | Line 78: | ||
* OS and Installer Bootware for SD cards | * OS and Installer Bootware for SD cards | ||
- | |||
Line 64: | Line 85: | ||
^ Script | ^ Script | ||
- | | / | ||
- | | / | ||
| / | | / | ||
| / | | / | ||
- | | / | + | | / |
+ | |||
+ | ==== Slackware ARM Post Installation Setup Scripts ==== | ||
+ | |||
+ | |||
+ | The Slackware ARM post installation setup scripts are contained within '' | ||
+ | |||
+ | ''/ | ||
+ | |||
+ | These post installation setup scripts are to configure the Operating System, but the scripts are not part of any Slackware package (unlike the rest of the post installation scripts within Slackware). | ||
+ | ^ Script | ||
+ | | bootloader-flash | Installing the Boot Loader onto SPI Flash | Not Raspberry Pi | | ||
+ | | setconsole | ||
+ | | os-initrd-mgr | Configures the OS InitRD (Operating System Initial RAM Disk) | All | | ||
+ | | removeinstaller | Removes the Slackware Installer from the /boot partition | All | | ||
+ | | hwm-os-configure | Helper launch script for Hardware Model-specific configuration (see below) | - | | ||
- | ==== Operating System Configuration (per Hardware Model) | + | == Operating System Configuration (per Hardware Model) == |
- | / | + | '' |
This runs helper scripts found within the Slackware Installer. | This runs helper scripts found within the Slackware Installer. | ||
Line 111: | Line 145: | ||
====== Slackware Operating System ====== | ====== Slackware Operating System ====== | ||
+ | ==== Packages ==== | ||
+ | |||
+ | Slackware ARM needs to modify some packages and add new ones. Below follows a list of the packages that have been added or modified. | ||
+ | |||
+ | === Package: a/ | ||
+ | |||
+ | ^ Hardware Model | Rock Pro64 / Pinebook Pro | | ||
+ | ^ Asset ^ Src ^ | ||
+ | | platform/ | ||
+ | | platform/ | ||
+ | | platform/ | ||
+ | |||
+ | |||
+ | |||
+ | ^ Hardware Model | Raspberry Pi 4| | ||
+ | ^ Asset ^ Src ^ | ||
+ | | platform/ | ||
+ | | platform/ | ||
+ | | platform/ | ||
+ | |||
+ | |||
+ | ^ Change Management Process ^ | ||
+ | | Provide the origin of the patch set (one or more URLs - https, git, etc.) and they will be retrieved from there. | | ||
+ | |||
+ | <note warning> | ||
+ | |||
+ | ====== Serial Console System Login ====== | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | To enable a TTY that presents a OS login prompt, which enables system access via the Serial adapter. | ||
+ | All Hardware Models must support this. | ||
+ | |||
+ | ^ Package Series ^ Package ^ Asset changed ^ Src ^ | ||
+ | | a | sysvinit-scripts | / | ||
+ | |||
+ | The additions script has inline documentation. | ||
+ | |||
+ | ^ Change Management Process ^ | ||
+ | | This is a simple script and should not be made more complex, because this code typically never changes, thus modularising it serves no utility. Please email a diff to the Slackware ARM devel mailing list and it will be applied | | ||
+ | |||
+ | ====== Linux Virtual Console (Local Console (HDMI video, USB Keyboard / Mouse )) ====== | ||
+ | |||
+ | ==== Console Video Display ==== | ||
+ | |||
+ | Set within the Kernel Module Loader. | ||
+ | Variable name.. | ||
+ | |||
+ | ==== X11/Xorg Window System ==== | ||
+ | |||
+ | Package: x/x11-skel | ||
+ | Asset: doinst.sh | ||
+ | |||
+ | The x11-skel package' | ||
+ | Xorg to automatically configure the video display. | ||
+ | |||
+ | Other Hardware Models contain configuration within this doinst.sh script. | ||
+ | |||
+ | ====== Slackware Operating System Post Boot Configuration ====== | ||
+ | |||
+ | Package: a/ | ||
+ | Assets: / | ||
+ | These scripts perform such things as setting the LCD panel brightness, setting fan speeds, etc. | ||
+ | |||
+ | Used on the RockPro64, Pinebook Pro. | ||
===== Kernel ===== | ===== Kernel ===== | ||
Line 116: | Line 215: | ||
< | < | ||
- | ^ Package Series ^ Package ^ Asset ^ Src ^ | + | ^ Hardware Model ^ Package Series ^ Package ^ Asset ^ Src ^ |
- | | k | kernel-source | configs/ | + | |All | k | kernel-source | configs/ |
^Change Management Process^ | ^Change Management Process^ | ||
Line 167: | Line 266: | ||
| Email the new configuration to the Slackware ARM devel mailing list, or provide a URL from which it may be obtained. | | | Email the new configuration to the Slackware ARM devel mailing list, or provide a URL from which it may be obtained. | | ||
- | ====== Hardware Model Firmware ====== | ||
- | ^ Package Series ^ Package ^ Asset ^ Src ^ | + | * Note about modprobe.d within installer and os-initrd-mgr conditionally installing the correct version depending on the Hardware Model. |
- | | a | kernel-firmware | platform/ | + | SOC_NAME in the Kernel module loader plugins needs to match the file name. |
- | | | | platform/ | + | |
- | | | |platform/ | + | |
- | ^ Change Management Process ^ | + | | source/ |
- | | Provide the origin of the patch set (one or more URLs - https, git, etc.) and they will be retrieved from there. | | + | |
- | <note warning> | + | These are populated by /load_kernel_modules at run time, depending on which Hardware |
- | + | ||
- | ====== Serial Console System Login ====== | + | |
- | + | ||
- | <note important> | + | |
- | + | ||
- | To enable a TTY that presents a OS login prompt, which enables system access via the Serial adapter. | + | |
- | All Hardware | + | |
- | + | ||
- | ^ Package Series ^ Package ^ Asset changed ^ Src ^ | + | |
- | | a | sysvinit-scripts | / | + | |
- | + | ||
- | The additions script has inline documentation. | + | |
- | + | ||
- | ^ Change Management Process ^ | + | |
- | | This is a simple script and should not be made more complex, because this code typically never changes, thus modularising it serves no utility. Please email a diff to the Slackware ARM devel mailing list and it will be applied | | + | |
- | + | ||
- | ====== Linux Virtual Console (Local Console (HDMI video, USB Keyboard / Mouse )) ====== | + | |
- | + | ||
- | ==== Console Video Display ==== | + | |
- | + | ||
- | Set within | + | |
- | Variable name.. | + | |
- | + | ||
- | ==== X11/Xorg Window System ==== | + | |
- | + | ||
- | Package: x/ | + | |
- | Asset: doinst.sh | + | |
- | + | ||
- | The x11-skel package' | + | |
- | Xorg to automatically configure the video display. | + | |
- | + | ||
- | Other Hardware Models contain configuration within this doinst.sh script. | + | |
- | + | ||
- | ====== Slackware Operating System Post Boot Configuration ====== | + | |
- | + | ||
- | Package: a/sysvinit-scripts | + | |
- | Assets: / | + | |
- | These scripts perform such things as setting the LCD panel brightness, setting fan speeds, etc. | + | |
- | + | ||
- | Used on the RockPro64, Pinebook Pro. | + | |
+ | <note important> | ||
====== Hardware Management ====== | ====== Hardware Management ====== |