• Douglas Anderson's avatar
    soc: rockchip: Set the proper PWM for rk3288 · bbdc00a7
    Douglas Anderson authored
    The rk3288 SoC has two PWM implementations available, the "old"
    implementation and the "new" one.  You can switch between the two of
    them by flipping a bit in the grf.
    
    The "old" implementation is the default at chip power up but isn't the
    one that's officially supposed to be used.  ...and, in fact, the
    driver that gets selected in Linux using the rk3288 device tree only
    supports the "new" implementation.
    
    Long ago I tried to get a switch to the right IP block landed in the
    PWM driver (search for "rk3288: Switch to use the proper PWM IP") but
    that got rejected.  In the mean time the grf has grown a full-fledged
    driver that already sets other random bits like this.  That means we
    can now get the fix landed.
    
    For those wondering how things could have possibly worked for the last
    4.5 years, folks have mostly been relying on the bootloader to set
    this bit.  ...but occasionally folks have pointed back to my old patch
    series [1] in downstream kernels.
    
    [1] https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1391597.htmlSigned-off-by: default avatarDouglas Anderson <dianders@chromium.org>
    Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
    bbdc00a7
grf.c 4.68 KB