Tiny Core Linux
Tiny Core Base => TCB Q&A Forum => Topic started by: turingturtle on March 11, 2025, 03:37:17 PM
-
I want to use tiny core linux on Luckfox Pico Mini, can anyone please help me or guide me with some idea on how to do that.
-
Since it's ARM Cortex-A7 based (https://wiki.luckfox.com/Luckfox-Pico/Luckfox-Pico-RV1103/Luckfox-Pico-Plus-Mini/Luckfox-Pico-quick-start/), you'll need to build a custom Linux kernel and boot configuration for that, although you should be able to use the 32-bit PiCore extensions (the first Raspberry Pi 2 was ARM Cortex-A7). Or run TC in an x86 emulator and suffer the performance loss.
You might also need to strip things out of the regular core.gz filesystem if it won't boot in 64MB of RAM, but that should be possible (and you'd need to rebuild core.gz for the different Linux kernel anyway)
-
Since it's ARM Cortex-A7 based (https://wiki.luckfox.com/Luckfox-Pico/Luckfox-Pico-RV1103/Luckfox-Pico-Plus-Mini/Luckfox-Pico-quick-start/), you'll need to build a custom Linux kernel and boot configuration for that, although you should be able to use the 32-bit PiCore extensions (the first Raspberry Pi 2 was ARM Cortex-A7). Or run TC in an x86 emulator and suffer the performance loss.
You might also need to strip things out of the regular core.gz filesystem if it won't boot in 64MB of RAM, but that should be possible (and you'd need to rebuild core.gz for the different Linux kernel anyway)
I am a complete beginner in all these, can you explain in more easy terms, or point me in a direction where I can self explore learn and do this , few steps might be relly good
-
The first thing is to find an existing Linux distro built for the Luckfox Pico Mini, so you can see what drivers need to be enabled or patched in, and how the boot configuration works. Then compare that distro's Linux kernel configuration with the PiCore config (http://tinycorelinux.net/15.x/armhf/releases/RPi/src/kernel/6.6.47-piCore_.config), to build a kernel that should support booting PiCore. See Custom Kernel (https://wiki.tinycorelinux.net/doku.php?id=wiki:custom_kernel) on the TC Wiki, but using armhf instead of x86. Also see Remastering (https://wiki.tinycorelinux.net/doku.php?id=wiki:remastering) for rebuilding the initrd with drivers for your kernel build instead of for PiCore.
Setting up the boot configuration will depend of how the Luckfox Pico Mini's firmware works, so you'll have to find specific docs for that hardware or try and blindly copy an existing Linux distro that boots on it.
-
Thanks for the reply, can you also tell me about some resources from where I can learn this kind of development, I mean what domain exactly I am dealing with and how to know the fundamentals and basics of these
-
I'd suggest using "site:kernel.org" in web searches to find pages in the Linux Kernel Documentation (https://docs.kernel.org/#user-oriented-documentation) and mailing lists. The documentation is patchy and often confusingly organised (to me, anyway) so I find searching the easiest way to find specific answers in it. You may want to research kernel configuration options that way to reduce the number you enable and therefore make it easier to fit in 64MB of RAM.
That's the official place to find out about building/using the Linux kernel. For initially starting the kernel, you'll need to find instructions specific to your hardware because x86 bootloaders like Grub and SysLinux are irrelevant on ARM.
-
mostly for potential future thread visitors, a few links:
https://www.luckfox.com/Luckfox-Pico-Mini-A
https://wiki.luckfox.com/Luckfox-Pico/Download/
https://github.com/LuckfoxTECH/luckfox-pico
-
Thanks again man, but even that will be too overwhelming for me right now, have to learn the basics, but eventually i will do as you said, btw I found https://www.arm.com/resources/education/education-kits/embedded-linux (https://www.arm.com/resources/education/education-kits/embedded-linux) will start from this for now.