Slackware - ARMThis forum is for the discussion of Slackware ARM.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Slackwareaarch64-current (up-to-date) running on a Pi400.
Whilst this is mostly running OK, I'm having a couple of issues - most annoyingly an occasional system freeze when running Plasma.
I've spotted something during the initial boot process, before the kernel starts which may, or may not, be relevant!
After retrieving the images, but before booting the kernel, I see a couple of lines that appear to say:
Code:
Retrieving file: /dtb/ ##comment out for Pi400/broadcom/bcm2711-rpi-400.dtb
*** File notfound /dtb/ ##comment out for Pi400/broadcom/bcm2711-rpi-400.dtb ***
It rattles through so quickly, I had to video it and take a snapshot before I could work out what it said (see attached, though its reduced in size). I don't know if this is relevant, but I always worry when I see "file not found" - especially when it looks like a configuration file!
Secondly, the Pi400 doesn't completely shut down. However I try (sddm, halt or shutdown -h now) it goes through the motions, gets to the "system halted" line, but is still powered up.
The main power light is off, but the hat is still powered, and the text remains on screen, though the machine is unresponsive to the keyboard or mouse. It looks as if the CPU is being shut down, but not the GPU or main power.
I am happy to run any diagnostics anyone thinks might help to try and trace these anomalies, just tell me what to do!
From boot/extlinux/extlinux.conf remove the line that says:
Code:
FDTDIR /dtb/
The change log from April 14th mentions you should do the following:
Quote:
I think we've made progress on the video driver support on the Raspberry Pi4.
For RPi4 users, you might want to try the latest settings.
After upgrading to the new Kernel:
Enter the Raspberry Pi bootware directory:
# cd /boot/platform/hwm_bw
Backup the existing config (if you made changes):
# mv -f config.txt{,.bak}
Download and install the latest version:
# wget http://ftp.arm.slackware.com/slackwa...ets/config.txt
# reboot
New installations using this batch will have the new configuration out
of the box.
This should result in a small performance boost - it does here anyway!
Stuart has also accommodated us with a tool called "os-initrd-mgr". BEFORE upgrading to the April 20th change log, run as root:
Code:
os-initrd-mgr
Then upgrade your system. Then reboot.
EDIT: I forgot to mention that the Pi 400 is not directly integrated into Slackware Aarch64. For now it is unsupported. You are welcome to integrate it yourself. I do not own a Pi 400 to do the testing. To get it working on Slackware, you will need to read the documentation MoZes has provided.
It may be a quick edit of extlinux.conf. Then add the appropriate configurations in the config.txt located in /boot/platform/hwm_bw/. Once it boots, run os-initrd-mgr, which will pick up the necessary firmware. Check your logs to see what hardware is not loading.
You can test out missing drivers by creating your own /boot/local/load_kernel_modules.post. A very good example is listed in the same directory: load_kernel_modules.post.sample Add in missing kernel modules in that file. Re-execute os-initrd-mgr and reboot.
U-boot is already built with "rpi_arm64_defconfig" and the kernel should be set too. Post back here if something is missing.
@mralk3: Thanks for that advice! You were quite right about the extlinux.conf file. Funny thing is that I know I commented that out a while ago - probably when I first installed slackwareaarch64 - but it seems to have reappeared! I guess one of the updates must have over-written the file, and I missed it!
Anyway, that's one problem solved!
As suggested, I ran os-initrd-mgr, and it went through the motions. I didn't notice anything untoward. However, both before and after running it I get the following in dmesg:
Code:
$ dmesg | grep error
[ 12.628935] rtc-ds1307: probe of 1-0068 failed with error -121
[ 19.667936] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43456-sdio.raspberrypi,400.bin failed with error -2
[ 62.079705] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.080772] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.093822] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.103034] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.109107] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.111066] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 62.111712] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
[ 80.879646] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43456-sdio.raspberrypi,400.txt failed with error -2
[ 89.316191] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19
The rtc error is expected (no rtc present!). Wifi is working despite the brcmfmac error, and grepping for that indicates:
Code:
$ dmesg | grep brcmfmac43456
[ 19.658016] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43456-sdio for chip BCM4345/9
[ 19.667936] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43456-sdio.raspberrypi,400.bin failed with error -2
[ 19.671149] brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: brcm/brcmfmac43456-sdio.raspberrypi,400.bin
[ 80.879646] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43456-sdio.raspberrypi,400.txt failed with error -2
[ 80.879670] brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: brcm/brcmfmac43456-sdio.raspberrypi,400.txt
[ 142.430024] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43456-sdio for chip BCM4345/9
so it looks as if it is sorting itself out.
However, the messages about the hdmi-audio-codec keep repeating ad infinitum, which is strange, as I do get sound over hdmi!
Anyway, everything seems to be running smoothly again now, so thanks for your assistance!
Next job is to try and get VLC to compile, which I see you have replied to elsewhere! Again, many thanks!
Oh, and yes, I understand that Stuart doesn't have access to all the hardware that people are likely to use, and that he can't guarantee compatibility with the Pi400, but if I (and others) don't comment, it will never get sorted. I'm quite happy to help with debugging, though my programming skills are nearly 50 years out-of-date! I will need some pointers, if I'm to help!
OK, I finally managed to get vlc to compile, but I had to disable upnp, otherwise it would it would abort with an error about upnp!
Unfortunately, I have now stumbled across another issue which is a showstopper for me: the kernel appears to have been compiled without any dvb frontend devices! I have a PiHAT dvb tuner which "just works" on Raspbian and slarm64. When I tried it on slackwareaarch64, it doesn't work. When I tried to modprobe the cxd2880 module, it complained it didn't exist. A DVB-USB dongle I have also refused to work for a similar reason.
I'm not averse to building my own kernels - I've been doing it for years on x86(_64) when necessary - but the boot process and kernels here look like nothing I recognise!
I've also stumbled across something that may (or may not) be relevant on the graphics front - for Pis, anyway. There is something called rpivid-v4l2.dtbo. On slarm64 this gets loaded somehow, and a module called rpivid_mem gets created. From my (sketchy!) understanding, this seems to be something that may be necessary to get anything like acceptable video playback.
OK, I finally managed to get vlc to compile, but I had to disable upnp, otherwise it would it would abort with an error about upnp!
Unfortunately, I have now stumbled across another issue which is a showstopper for me: the kernel appears to have been compiled without any dvb frontend devices! I have a PiHAT dvb tuner which "just works" on Raspbian and slarm64. When I tried it on slackwareaarch64, it doesn't work. When I tried to modprobe the cxd2880 module, it complained it didn't exist. A DVB-USB dongle I have also refused to work for a similar reason.[/code]
I'll add support for this in the next Kernel update.
Quote:
I've also stumbled across something that may (or may not) be relevant on the graphics front - for Pis, anyway. There is something called rpivid-v4l2.dtbo. On slarm64 this gets loaded somehow, and a module called rpivid_mem gets created. From my (sketchy!) understanding, this seems to be something that may be necessary to get anything like acceptable video playback
You can always add the dtoverlay configueration to /boot/platform/hwm_bw/config.txt into the '[all]' section :
Code:
dtoverlay=rpivid-v4l2
However there's no such module in the mainline Kernel 5.17, so this might be a Raspberry Pi extension that is awaiting being merged into mainline?
Thanks for the prompt reply, Stuart. I'll give that overlay a go!
One other thing which I forgot to mention - I still can't get it to fully shutdown!
Whatever I try it stops with the board still powered. The penultimate line reads something about "kvm:exiting hardware virtualisation" (sometimes it stops at this point) followed by the usual "system halted" message. However, at this point the graphics ship is still powered, as is the HAT, and the power light is still on. The system is unresponsive, and the only way to fully shut it down is to remove the power lead (there is no switch on a 400).
Happy to try any suggestions, but don't know how to fault-find this any further.
UPDATE: No, the overlay didn't help! I don't know how they claim its 4K capable! Even on their own OS, it only plays 1K with the cpu at 90% on all cores! But at least it plays!
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.