SARPi Project - Slackware ARM on a Raspberry Pi
Introducing the config.txt file...
When booting the Raspberry Pi, the config.txt file is read by the GPU before the ARM core is initialised. It can be used to set various system configuration parameters that you normally find in a conventional BIOS. There is an abundance of information on this file on the Raspberry Pi Foundation website, if you're interested in settings and features not covered in this tutorial.
One thing to remember is that whenever the config.txt file changes (i.e. you edit it) you should reboot your system to take on the new settings. The config.txt file allows you to allocate the amount of GPU and system RAM, load Device Tree overlays (if enabled), configure overscan settings, overclock, etc., and make it so you can boot into Slackware ARM using specific settings and parameters. Overscan is good to set prior to booting a new system for the first time because you can sometimes experience issues with the viewing area of your screen/display.
Sometimes the output of the screen/display exceeds the viewable area on your physical screen/display. So, under these circumstances you can never see the very edge of what's being displayed as it's outside your viewing area. This can affect both text and images. It's most annoying when you boot your Raspberry Pi to find that you cannot see your command prompt, or only part of it. There are ways to overcome this, by enabling overscan, and solutions to many other problems.
Below is an example Raspberry Pi config.txt file created by the SARPi Project. We have customised it a little and used some popular settings. We've also adding a hashed-out date, purely for our own reference.
You can, of course, create your very own customised config.txt file. See the official CONFIG-TXT Documentation tutorial.
# Some settings may impact device functionality. See above page for details.
# https://sarpi.penthux.net - 06 Sep 2016 - Raspberry Pi 3 config.txt
# uncomment to disable Device Tree (DT)
# uncomment if you get no picture on HDMI for a default "safe" mode
# uncomment if hdmi display is not detected and composite is being output
# uncomment if audio is not working
# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
# uncomment to force a console size. By default it will be display's size
# minus overscan
# uncomment to give the ACT LED a 'heartbeat' pulse
# uncomment to enable the I2C interface
# uncomment to load Device Tree overlay for DS3231 RTC
# uncomment to enable the SPI interface
# uncomment to enable the I2S interface
# uncomment to set the amount of GPU (video) RAM
Your existing config.txt file should look very similar to the example above, if you haven't already modified it.
What the uncommented settings in our config.txt file mean:
• gpu_mem=64 is telling the Raspberry Pi to allocate 64MB of RAM to the GPU. The rest goes to the system.
• dtoverlay=i2c-rtc,ds3231 is telling the system to load the Device Tree overlay for a DS3231 real time clock (RTC)
• overscan_left=5/overscan_right=5 is telling the display to set a margin 5 pixels inside the left/right edge.
• overscan_top=5/overscan_bottom=5 is telling the display to set a margin 5 pixels inside the top/bottom edge.
You have the option to add/change/remove any setting or value. It would certainly be beneficial to educate yourself with the plethora of config.txt parameters and find out what will enable you to get the most out of your Slackware ARM system and the purpose you intend for it. The Raspberry Pi Foundation - Documentation > Configuration > CONFIG-TXT page would be a good place to begin.
If you are planning to use desktop environments on your Slackware ARM system you might want to change the GPU RAM (gpu_mem=64) to a higher value, such as 128MB. Some features of the GPU do not work with low memory and it will automatically disable certain firmware features too. Under such circumstances, if you find a certain function or feature aren't working, try allocating more memory to the GPU before rebooting your system.
Editing the config.txt file
To edit the config.txt file you can use a program called 'nano', a simple text-editor built in to every version of Slackware Linux.
You may edit the config.txt file directly. There's no need to switch to the /boot directory where config.txt is located. To do this type the following on the command line:
You will find nano is easy to use, and is much like any other text-editor. When you want to save any changes made to the file you need to press and hold the 'CTRL' key and press the 'X' key (just once) at the same time. Then, when prompted to 'Save modified buffer?', you press 'Y' followed by the enter key. This will save the file under the same filename including all changes.
You may wish to further edit/modify your config.txt file at a later date, depending on your personal requirements. You can do so at any time by using the 'nano' command above as root user. After you have edited and saved the config.txt file, you should reboot your system for any new changes to take effect.
Continue to the final section of this tutorial... Post-installation information