lkml.org 
[lkml]   [2020]   [Oct]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v5 80/80] ARM: dts: bcm2711: Enable the display pipeline
    Hi Maxime

    On Fri, 2 Oct 2020 at 16:19, Maxime Ripard <maxime@cerno.tech> wrote:
    >
    > Hi Tim,
    >
    > On Thu, Oct 01, 2020 at 11:15:46AM +0100, Tim Gover wrote:
    > > hdmi_enable_4k60=1 causes the firmware to select 3.3 GHz for the PLLC
    > > VCO to support a core-frequency of 550 MHz which is the minimum
    > > frequency required by the HVS at 4Kp60. The side effect is that if the
    > > display clock requirements are lower than 4Kp60 then you will see
    > > different core frequencies selected by DVFS.
    > >
    > > If enable_uart=1 and the mini-uart is selected (default unless
    > > bluetooth is disabled) then the firmware will pin the core-frequency
    > > to either core_freq max (500 or 550). Although, I think there is a way
    > > of pinning it to a lower fixed frequency.
    > >
    > > The table in overclocking.md defines options for setting the maximum
    > > core frequency but unless core_freq_min is specified DVFS will
    > > automatically pick the lowest idle frequency required by the display
    > > resolution.
    >
    > I'm wondering if there's some way to detect this from Linux? I guess it
    > would be nice to be able to at least detect a broken config to warn /
    > prevent an user that their situation is not going to be reliable / work
    > really well (like if they have a 4k display without hdmi_enable_4kp60
    > set, or the issue we're discussing here)

    The main filter in the firmware is the parameter
    hdmi_pixel_freq_limit. That can either be set manually from
    config.txt, or defaults appropriately based on hdmi_enable_4kp60.
    Under firmware_kms [1] I read back those values to use as a filter
    within crtc_mode_valid[2].
    I can't think of a nice way of exposing that without the vc4 driver
    gaining a DT link to the firmware, and that starts to get ugly.

    Dave

    [1] https://github.com/raspberrypi/linux/blob/rpi-5.9.y/drivers/gpu/drm/vc4/vc4_firmware_kms.c#L1859
    [2] https://github.com/raspberrypi/linux/blob/rpi-5.9.y/drivers/gpu/drm/vc4/vc4_firmware_kms.c#L1077

    \
     
     \ /
      Last update: 2020-10-02 17:57    [W:3.954 / U:0.312 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site