clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order
authorSamuel Holland <samuel@sholland.org>
Sun, 29 Dec 2019 02:59:22 +0000 (20:59 -0600)
committerMaxime Ripard <maxime@cerno.tech>
Thu, 2 Jan 2020 09:28:47 +0000 (10:28 +0100)
commit0c545240aebc2ccb8f661dc54283a14d64659804
treed750a31730f12d9a50b1db022b4adfec6b1688e2
parent675a6d467b432c8b4a0703ded02e6ef068e0c7e9
clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order

According to the BSP source code, both the AR100 and R_APB2 clocks have
PLL_PERIPH0 as mux index 3, not 2 as it was on previous chips. The pre-
divider used for PLL_PERIPH0 should be changed to index 3 to match.

This was verified by running a rough benchmark on the AR100 with various
clock settings:

        | mux | pre-divider | iterations/second | clock source |
        |=====|=============|===================|==============|
        |   0 |           0 |  19033   (stable) |       osc24M |
        |   2 |           5 |  11466 (unstable) |  iosc/osc16M |
        |   2 |          17 |  11422 (unstable) |  iosc/osc16M |
        |   3 |           5 |  85338   (stable) |  pll-periph0 |
        |   3 |          17 |  27167   (stable) |  pll-periph0 |

The relative performance numbers all match up (with pll-periph0 running
at its default 600MHz).

Signed-off-by: Samuel Holland <samuel@sholland.org>
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
drivers/clk/sunxi-ng/ccu-sun50i-h6-r.c