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

Reply via email to