Initial mainline video capture and camera support for Rockchip RK3588

collabora.com

85 points

mfilion

a day ago


25 comments

Aurornis 20 hours ago

Great to see progress on mainlining more support for common and powerful chips.

The work required to get this one piece into mainline over 5-6 years reveals why most chip vendors aren’t aiming for mainline by default:

> A few iterations of the rkcif driver later, the basic driver providing support for the PX30 VIP and the RK3568 VICAP was accepted (October 2025). After more than five years of development, including 25 iterations and three renamings, this was a major milestone. On the other hand, there was still a lot to do, of course. For instance, the Rockchip MIPI CSI-2 receiver unit that is coupled closely to the VICAP required a mainline driver as well.

It’s never as simple as submitting existing work upstream and making a few changes. It takes a lot of development and a willingness to rewrite everything, possibly multiple times, to track the goals of upstream.

  • Palomides 19 hours ago

    I really feel like that should be table stakes if your entire business is making chips to run Linux, though

    after working professionally with their stuff I'm really not a fan of Rockchip

    • Aurornis 19 hours ago

      I wish everything was mainlined right away, too, but I’m realistic about what it takes to get that done.

      There are chip providers that put more emphasis on mainline support but even those aren’t fully mainlined and their chips are generally much more expensive.

    • le-mark 13 hours ago

      Is there a SOC you prefer, why? Linux support seems about on par with most?

    • packetlost 19 hours ago

      Why is that? IME pretty much all of their software is a mess and the hardware has some bugs/issues iirc but is otherwise ok?

      • mcmcmc 18 hours ago
        2 more

        > all of their software is a mess and the hardware has some bugs/issues

        Is that not enough of a reason?

  • yjftsjthsd-h 18 hours ago

    > why most chip vendors aren’t aiming for mainline by default:

    > It’s never as simple as submitting existing work upstream and making a few changes.

    If they had started by working with upstream, then they wouldn't have to go through unnecessary revisions trying to adapt the thing they already wrote.

    • Aurornis 14 hours ago

      The part I quoted was from a team that was working with upstream, not the RockChip team.

      They were experienced with working with upstream and it still took them that long to do it.

  • chucklenorris 12 hours ago

    wow, i have a few of these laying around. i also bought some imx678 sensors i wanted to use with them. i tried pretty hard to make a driver work with these but it was impossible to get the isp working without modifying the kernel itself so i gave up. That convinced me to never buy hw that doesn't have drivers in the mainline kernel.

  • tov_objorkin 14 hours ago

    The product has a typical lifespan of 3–5 years, they just don't need LTS. RKISP(ImageSignalProcessor) is piece of code glued to the kernel, fast and cheap. The mainstream version provides proper integration with Linux multimedia subsystems.

4fterd4rk 19 hours ago

I guess I don't understand... why would the SOC manufacturer spend the money on integrating this stuff if they don't intend on also spending the money to enable it on the software side?

  • MisterTea 18 hours ago

    They did, jut not mainline. People forget these are embedded chips - they are intended to go inside of something and do one thing. These chips lack auto hardware discovery because the manufacturer assumes the customer will only turn on the hardware peripherals they need for their specific use case and build a static kernel image to meet that requirement. They ship a product that will likely see few, if any software updates and end up in a landfill.

    It's because of the Raspberry Pi foundation we have this perception that embedded Arm chips are like general purpose desktop computers that run Linux desktops. The original Pi SoC was designed for TV set top boxes, STB's hence the loopy booting from GPU which was likely part of some obfuscated secure boot chain to thwart STB hackers. The Pi was a throw away hobby toy based on a chip Broadcom was going to scrap so they got a dumpster deal. It took a lot of effort for the community to fully reverse the Broadcom SoC and bring all the Pi hardware to mainline.

    • frankharv 12 hours ago

      I agree with much of what you say. Adding a second display port was not something anybody needed.

      Desktop computer was a reach. Even for BeagleBone.

      I am surprised RK3566 and RK3568 still don't have good UEFI-EDK2 support.

      RK3588 has great UEFI-EDK2 support. I wish somebody would backport RK356x and RK3399 boards....

      The pace of development is too fast. We don't need more aarch64 CPU but better support. RISC-V adds to the mayhem.

      Like we need that...

      The Open Source Hardware Dream.

  • EdNutting 19 hours ago

    Software != Linux Mainline.

    Software exists from the vendor, but it’s not open source and/or not part of Linux mainline.

    Hence the effort to develop an open source (and mainlined) alternative.

    Whether this is a good use of effort and/or whether you believe the vendor should be doing the Linux development or not, and/or whether they should open-source their proprietary drivers, will depend on your personal views.

  • Manuel_D 16 hours ago

    So that they can sell licenses to proprietary software implementations on top of selling the hardware.

bullen 19 hours ago

Some 3588 CMs are sold out.

So it might be too late as 3688 will be too hot...

Just like routers get dd-wrt when sold out!

jauntywundrkind 18 hours ago

Worth noting that, well, alas, camera support is incredibly incredibly incredibly cursed, period. It feels like, broadly, with all the image blocks, everyone makes really neat really good hardware thats chock-a-block full of capabilities that are un- or poorly documented or really hard to support for reasons, etc. Its a pretty bespoke high throughput pipeline with a lot of special domain knowledge very unlike anything else on computing.

Intel's IPU6 has been a ~4 year travail to get going (thankfully IPU7 landed fairly quickly however!) https://www.phoronix.com/news/Intel-IPU6-Camera-Challenge-25 https://www.phoronix.com/news/Intel-IPU7-Linux-6.17

AMD similarly has only just gotten the Strix Halo ISP near working: https://www.phoronix.com/news/AMD-ISP4-For-Linux-7.2

The whole video world seems like a nightmare. Difficult world of hardware. Just the worst Intellectual Property hostage taking banditry from awful awful valent legally predatory people everywhere, a dark forest ready to leap out of the dark and attack you if you dare use a computing to deal in bits that represent moving images.

  • ironman1478 16 hours ago

    I work in this field and this is 100 percent true. It's really hard to learn about too. A lot of textbooks go over the algorithms in the chips in an idealized form. The actual versions are so messy and different that the textbooks aren't even useful sometimes, especially if you work on custom ISPs. It's cursed, but it's fun.

    • skoocda 14 hours ago

      Are there any resources you would recommend for learning about real implementations?

  • XorNot 14 hours ago

    Wait is IPU6 working now? My work laptop has it and the only thing I know is it might work provided I use some user space relay driver and a bunch of other things.

    Has this situation improved?

    • jauntywundrkind 13 hours ago

      I looked and looked and looked. I don't know why but IPU7 is reported to be pretty good. But IPU6 might still be in perpetual limbo; I don't know. What kernel are you on btw? Sorry for your pain.

ACCount37 16 hours ago

Good. Video capture on second grade Linux SoCs is hell - lots of blobs and weird custom vendor SDKs that work with the vendor's own happy path use case demos and nothing else.

I hope that the more SoCs get mainline V4L2, the more likely the future SoCs are going to be to use it instead of doing something non-standard and awful.

rasz 12 hours ago

>RK3588 ISP, as the vendor kernel driver is not upstreamable for various reasons

Its always IP. Afair even Raspberry Pi didnt open ISP, and support for MIPI took yeaaaaars.