Buildroot Tuning for Rock 3C
Description
SBC: Radxa Rock 3C (RK3566) Boot time: "Boot" is measured as power-on to first, visible SDL frame. Measurement method must be documented and repeatable. Storage: SquashFS, ext4 overlayfs on microSD at / Input: USB HID (keyboard, mouse, gamepad) Keyboard is required at boot. Mouse, gamepads can late load. Audio: ALSA (or equivalent) with HDMI out. Limit only to required codec/HDMI path. Video: Panfrost (Mali-G52 via Mesa DRM/KMS) Fixed 1280x720 @ 60Hz (use for boot-time measurement) No unused display outputs (DP, DSI, etc.) Network: Minimal WiFi and/or Ethernet. Must eventually connect and obtain DHCP/IP after boot. Not required at first-frame. User model: Single-user only (no multi-user features, no cgroups, no namespaces) Init system: Busybox. No getty/prompt. Direct auto-launch of SDL application. Kernel: Minimized to the smallest possible for our requirements. No debug, tracing, profiling, BPF, or unused subsystems. Output: HDMI (audio and video) Notes: "SDL" means SDL2 or SDL3, we can decide which one. Use Mesa with panfrost drivers (kmsro if needed). No X11 or Wayland overhead. SDL must target the DRM/KMS backend directly. Ensure CONFIG_BOOTDELAY=0 and/or remove the delay option. Networking can late load and is low priority. Kernel size (uncompressed) should be no more than 8MB (target ~7MB). Kernel should be LZ4 compressed after minimizing the size. No initramfs/initrd unless explicitly justified Modules only for late-loaded features. Networking (WiFi/Ethernet) must not delay first frame. No USB storage, USB networking, etc. USB OTG gadget late load, if possible.
I can provide an SDL test program.
Final deliverables required:
All configuration/build files, with exact Buildroot version. (including exact kernel.config used for both builds)
Notes on make procedure (how to create the images)
Release build a) flash-ready eMMC image (must be <3.0s boot, target 2.0s) b) flash-ready SD image (must be <4.0s boot, target 3.0s)
Debug build a) flash-ready SD image with printk/debug (boot does not need to match release specs)
Boot time measurement results (with method used) Budget: USD 30–250 Skills: Linux, Electronics, Troubleshooting, Microcontroller, Software Architecture, Documentation, Embedded Systems, Video Processing, Audio Engineering, Performance Tuning
Skills
Want AI to find more roles like this?
Upload your CV once. Get matched to relevant assignments automatically.