On Wed, Jun 16, 2021 at 2:20 PM Icenowy Zheng <[email protected]> wrote: > > I'm trying RK3399 with Linux. EFIFB never works as intended (maybe it's > because IOMMU is reconfigured), and rockchipdrmfb will be fb1 (leave > non-working EFIFB as fb0), makes fbcon unusable. > > The second problem has a proposed fix, but the first problem is > mystery. >
I think that figured out the mystery for your second problem too (if I understood what you meant correctly). The problem is that u-boot initializes the display controller and provides the setup framebuffer memory to the kernel as a GOP. But then the kernel re-initializes the HW again and mess with the resources needed by the display controller that were correctly setup by u-boot. Part of that is the IOMMU as you said, but also the clocks and power domains that Linux will disable because are "unused". So to have a GOP framebuffer that will be available until the rockchip DRM fb emulation takes over (with the patch mentioned by Peter), you will need the following kernel command line options: initcall_blacklist=rk_iommu_init clk_ignore_unused pd_ignore_unused Best regards, Javier

