1. 04 2月, 2016 1 次提交
    • H
      clk: rockchip: convert manually created factor clocks to the new type · 36714529
      Heiko Stuebner 提交于
      Clean up the init code and move the creation of factor clocks to the
      appropriate positions coming from the clock architecture diagrams.
      
      This also unifies the artificial separation of the hclk_vcodec etc clocks
      again.
      
      We do keep the separate definition of some watchdog and usb480m pseudo
      clocks for now, as they're not real factor clocks from the clock-tree
      but placeholders for fixes to come (usb480m gets supplied by the
      missing driver for the new usbphy type and the watchdog-gate is sitting
      somewhere else together which we cannot model currently).
      Signed-off-by: NHeiko Stuebner <heiko@sntech.de>
      36714529
  2. 25 1月, 2016 7 次提交
  3. 21 12月, 2015 1 次提交
    • H
      clk: rockchip: only enter pll slow-mode directly before reboots on rk3288 · dfff24bd
      Heiko Stuebner 提交于
      As commit 1d33929e ("clk: rockchip: switch PLLs to slow mode before
      reboot for rk3288") states, switching the PLLs to slow-mode is only
      necessary when rebooting using the soft-reset done through the CRU.
      
      The dwc2 controllers used create really big number of interrupts in
      special constellations involving usb-hubs and their number is so high,
      it can even overwhelm the interrupt handler if the cpu-speed os to low.
      
      Right now the PLLs are put into slow-mode in a shutdown syscore_ops
      callback which means it happens on all reboots (not only the soft-reset
      ones) and even on poweroff actions.
      
      This can result in the system not powering off and getting stuck instead,
      so we should move the slow-mode change nearer to the actual reboot action.
      
      For this we introduce the possiblity to also set a callback that gets
      called from the restart-handler directly prior to restarting the system
      and move the shutdown-callback to this new option.
      
      With this the slow-mode switch is done only on the necessary reboots
      and also has a smaller possibility of causing artifacts.
      
      Fixes: 1d33929e ("clk: rockchip: switch PLLs to slow mode before reboot for rk3288")
      Signed-off-by: NHeiko Stuebner <heiko.stuebner@collabora.com>
      Reviewed-by: NDouglas Anderson <dianders@chromium.org>
      dfff24bd
  4. 03 12月, 2015 2 次提交
  5. 02 12月, 2015 1 次提交
    • C
      clk: rockchip: Force rk3368 PWM clock (and its parents) on · a7ce4050
      Caesar Wang 提交于
      Most rk3368 boards (especially those with Pmic that followed the lead
      from rk3368-evb-act8846) have a PWM regulator on them for vdd_logic.
      This is the main voltage for all kinds of misc stuff including the
      memory controller.
      
      On these boards it is critically important to make sure that the PWM
      never ever glitches and never loses its clock. Any glitch could
      crash the system.
      
      Right now there are no users of the PWM regulator and also Linux
      thinks that the PWM regulator is disabled.  Things happen to work
      because firmware configured the PWM and Linux doesn't touch it.
      ..and the PWM's clock is marked as "ignore unused".
      
      ...but things _stop_ working if we turn off serial console.  Why?
      Because:
          1. Serial console shares a parent clock with the PWM (pclk_cpu)
          2. If we have no serial console then nobody is holding pclk_cpu on
             at reboot time.  It gets disabled.
      
      We need to fix a lot of the above problems, but until we get
      everything right the cleanest "hack" seems like it is to just keep
      the "rk_pwm" clock on always.
      Signed-off-by: NCaesar Wang <wxt@rock-chips.com>
      Signed-off-by: NHeiko Stuebner <heiko@sntech.de>
      a7ce4050
  6. 15 9月, 2015 1 次提交
  7. 07 7月, 2015 1 次提交