CompanyRemote

Buildroot Tuning for Rock 3C

Project-Based

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:

  1. All configuration/build files, with exact Buildroot version. (including exact kernel.config used for both builds)

  2. Notes on make procedure (how to create the images)

  3. 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)

  4. Debug build a) flash-ready SD image with printk/debug (boot does not need to match release specs)

  5. 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

LinuxMicrocontrollerSoftware ArchitectureTroubleshootingEmbedded SystemsPerformance TuningVideo ProcessingAudio EngineeringDocumentationElectronics

Want AI to find more roles like this?

Upload your CV once. Get matched to relevant assignments automatically.

Try personalized matching