Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 33c1f638 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull clk updates from Stephen Boyd:
 "The clk changes for this release cycle are mostly dominated by new
  device support in terms of LoC, but there has been some cleanup in the
  core as well as the usual minor clk additions to various drivers.

  Core:
   - parent tracking has been simplified
   - CLK_IS_ROOT is now a no-op flag, cleaning up drivers has started
   - of_clk_init() doesn't consider disabled DT nodes anymore
   - clk_unregister() had an error path bug squashed
   - of_clk_get_parent_count() has been fixed to only return unsigned ints
   - HAVE_MACH_CLKDEV is removed now that the last arch user (ARM) is gone

  New Drivers:
   - NXP LPC18xx creg
   - QCOM IPQ4019 GCC
   - TI dm814x ADPLL
   - i.MX6QP

  Updates:
   - Cyngus audio clks found on Broadcom iProc devices
   - Non-critical fixes for BCM2385 PLLs
   - Samsung exynos5433 updates for clk id errors, HDMI support,
     suspend/resume simplifications
   - USB, CAN, LVDS, and FCP clks on shmobile devices
   - sunxi got support for more clks on new SoCs and went through a
     minor refactoring/rewrite to use a simpler factor clk construct
   - rockchip added some more clk ids and added suport for fraction
     dividers
   - QCOM GDSCs in msm8996
   - A new devm helper to make adding custom actions simpler (acked by Greg)"

* tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (197 commits)
  clk: bcm2835: fix check of error code returned by devm_ioremap_resource()
  clk: renesas: div6: use RENESAS for #define
  clk: renesas: Rename header file renesas.h
  clk: max77{686,802}: Remove CLK_IS_ROOT
  clk: versatile: Remove CLK_IS_ROOT
  clk: sunxi: Remove use of variable length array
  clk: fixed-rate: Remove CLK_IS_ROOT
  clk: qcom: Remove CLK_IS_ROOT
  doc: dt: add documentation for lpc1850-creg-clk driver
  clk: add lpc18xx creg clk driver
  clk: lpc32xx: fix compilation warning
  clk: xgene: Add missing parenthesis when clearing divider value
  clk: mb86s7x: Remove CLK_IS_ROOT
  clk: x86: Remove clkdev.h and clk.h includes
  clk: x86: Remove CLK_IS_ROOT
  clk: mvebu: Remove CLK_IS_ROOT
  clk: renesas: move drivers to renesas directory
  clk: si5{14,351,70}: Remove CLK_IS_ROOT
  clk: scpi: Remove CLK_IS_ROOT
  clk: s2mps11: Remove CLK_IS_ROOT
  ...
parents a24e3d41 4d3ac666
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -8,7 +8,10 @@ Required properties:
- compatible : shall be "adi,axi-clkgen-1.00.a" or "adi,axi-clkgen-2.00.a".
- #clock-cells : from common clock binding; Should always be set to 0.
- reg : Address and length of the axi-clkgen register set.
- clocks : Phandle and clock specifier for the parent clock.
- clocks : Phandle and clock specifier for the parent clock(s). This must
	either reference one clock if only the first clock input is connected or two
	if both clock inputs are connected. For the later case the clock connected
	to the first input must be specified first.

Optional properties:
- clock-output-names : From common clock binding.
+6 −0
Original line number Diff line number Diff line
@@ -92,6 +92,7 @@ PLL and leaf clock compatible strings for Cygnus are:
    "brcm,cygnus-lcpll0"
    "brcm,cygnus-mipipll"
    "brcm,cygnus-asiu-clk"
    "brcm,cygnus-audiopll"

The following table defines the set of PLL/clock index and ID for Cygnus.
These clock IDs are defined in:
@@ -131,6 +132,11 @@ These clock IDs are defined in:
    ch4_unused mipipll          5       BCM_CYGNUS_MIPIPLL_CH4_UNUSED
    ch5_unused mipipll          6       BCM_CYGNUS_MIPIPLL_CH5_UNUSED

    audiopll   crystal          0       BCM_CYGNUS_AUDIOPLL
    ch0_audio  audiopll         1       BCM_CYGNUS_AUDIOPLL_CH0
    ch1_audio  audiopll         2       BCM_CYGNUS_AUDIOPLL_CH1
    ch2_audio  audiopll         3       BCM_CYGNUS_AUDIOPLL_CH2

Northstar and Northstar Plus
------
PLL and leaf clock compatible strings for Northstar and Northstar Plus are:
+52 −0
Original line number Diff line number Diff line
* NXP LPC1850 CREG clocks

The NXP LPC18xx/43xx CREG (Configuration Registers) block contains
control registers for two low speed clocks. One of the clocks is a
32 kHz oscillator driver with power up/down and clock gating. Next
is a fixed divider that creates a 1 kHz clock from the 32 kHz osc.

These clocks are used by the RTC and the Event Router peripherials.
The 32 kHz can also be routed to other peripherials to enable low
power modes.

This binding uses the common clock binding:
    Documentation/devicetree/bindings/clock/clock-bindings.txt

Required properties:
- compatible:
	Should be "nxp,lpc1850-creg-clk"
- #clock-cells:
	Shall have value <1>.
- clocks:
	Shall contain a phandle to the fixed 32 kHz crystal.

The creg-clk node must be a child of the creg syscon node.

The following clocks are available from the clock node.

Clock ID	Name
   0		 1 kHz clock
   1		32 kHz Oscillator

Example:
soc {
	creg: syscon@40043000 {
		compatible = "nxp,lpc1850-creg", "syscon", "simple-mfd";
		reg = <0x40043000 0x1000>;

		creg_clk: clock-controller {
			compatible = "nxp,lpc1850-creg-clk";
			clocks = <&xtal32>;
			#clock-cells = <1>;
		};

		...
	};

	rtc: rtc@40046000 {
		...
		clocks = <&creg_clk 0>, <&ccu1 CLK_CPU_BUS>;
		clock-names = "rtc", "reg";
		...
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ Required properties :
			"qcom,gcc-apq8064"
			"qcom,gcc-apq8084"
			"qcom,gcc-ipq8064"
			"qcom,gcc-ipq4019"
			"qcom,gcc-msm8660"
			"qcom,gcc-msm8916"
			"qcom,gcc-msm8960"
+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ Examples
		reg = <0 0xe6e88000 0 64>;
		interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&cpg CPG_MOD 310>;
		clock-names = "sci_ick";
		clock-names = "fck";
		dmas = <&dmac1 0x13>, <&dmac1 0x12>;
		dma-names = "tx", "rx";
		power-domains = <&cpg>;
Loading