mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
dddd564dbb
some new clk drivers and updates for old ones. The diff is pretty spread out across a handful of different SoC clk drivers for Broadcom, TI, Qualcomm, Renesas, Rockchip, Samsung, and Allwinner, mostly due to the introduction of new drivers. Core: - New clk bulk get APIs - Clk divider APIs gained the ability to consider a different parent than the current one New Drivers: - Renesas r8a779{0,1,2,4} CPG/MSSR - TI Keystone SCI firmware controlled clks and OMAP4 clkctrl - Qualcomm IPQ8074 SoCs - Cortina Systems Gemini (SL3516/CS3516) - Rockchip rk3128 SoCs - Allwinner A83T clk control units - Broadcom Stingray SoCs - CPU clks for Mediatek MT8173/MT2701/MT7623 SoCs Removed Drivers: - Old non-DT version of the Realview clk driver Updates: - Renesas Kconfig/Makefile cleanups - Amlogic CEC EE clk support - Improved Armada 7K/8K cp110 clk support - Rockchip clk id exposing, critical clk markings - Samsung converted to clk_hw registration APIs - Fixes for Samsung exynos5420 audio clks - USB2 clks for Hisilicon hi3798cv200 SoC and video/camera clks for hi3660 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAABCAAGBQJZXujtAAoJEK0CiJfG5JUl8vIQAKbcH3rX+CS4jrg7Hs2Ghnhn ZbTf7vZYa6K7iuL7JHITEScAQ8+l0Bl7eWSfJZRt4oUW3Jt4F+AIs8qBofZAWn4M m+kDHs/IfAUITZp/unM/ogFfVcboZObjAK/A2yyRVyMxRkIyyUb6r7SDVpCpGyxU 1YDAdis2M3F5J9CGV/tpmobnksMUlCnJlI0OGtMUnvY6mDkf8Re89sayMnQ/1Mgp CL1YwnqZ0L6rT664IMo74bB7UNjXdMZsuCeITkU+hMVq4NMXErKCcn8lHvP9P+uP AoZ8bf9WaQ/CglGFeeFrNQGUf+tiTlYxlVvvNFXR5+rmhu/yKxNI67APaupeERVl jMISKAC/A+C1j6JVMCqjM3d75F47SzuZQuQY0ZD0DWoqP9PBzV6IyThHIqWrN5O4 IceLmD8BrwW+h8bs2SIubIygOGMMqGhVi2XaAAWpmRke7JzmSFOOyE3YGPisaBAq EcIF2i2jJ6Ja4rClgfQKOsx25MOILsIp/sMU6iC7U1h4NDj8yP5A13n60U6DuZhu ttjN+bXugR81R+bWyzC6Zl/KXF83Ka3ZSJs+XblunPRGKt2q6Kj12HBspkWL1QjY aLEEg3fpI/ovQoTMXHj7/G1MD60rxoHCuOjBwSWEQBzA1MiHol+ab/mZKfPsy50C 116G1XJgtgrLxE00iZ6K =Yar+ -----END PGP SIGNATURE----- Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux Pull clk updates from Stephen Boyd: "This time we've got one core change to introduce a bulk clk_get API, some new clk drivers and updates for old ones. The diff is pretty spread out across a handful of different SoC clk drivers for Broadcom, TI, Qualcomm, Renesas, Rockchip, Samsung, and Allwinner, mostly due to the introduction of new drivers. Core: - New clk bulk get APIs - Clk divider APIs gained the ability to consider a different parent than the current one New Drivers: - Renesas r8a779{0,1,2,4} CPG/MSSR - TI Keystone SCI firmware controlled clks and OMAP4 clkctrl - Qualcomm IPQ8074 SoCs - Cortina Systems Gemini (SL3516/CS3516) - Rockchip rk3128 SoCs - Allwinner A83T clk control units - Broadcom Stingray SoCs - CPU clks for Mediatek MT8173/MT2701/MT7623 SoCs Removed Drivers: - Old non-DT version of the Realview clk driver Updates: - Renesas Kconfig/Makefile cleanups - Amlogic CEC EE clk support - Improved Armada 7K/8K cp110 clk support - Rockchip clk id exposing, critical clk markings - Samsung converted to clk_hw registration APIs - Fixes for Samsung exynos5420 audio clks - USB2 clks for Hisilicon hi3798cv200 SoC and video/camera clks for hi3660" * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (147 commits) clk: gemini: Read status before using the value clk: scpi: error when clock fails to register clk: at91: Add sama5d2 suspend/resume gpio: dt-bindings: Add documentation for gpio controllers on Armada 7K/8K clk: keystone: TI_SCI_PROTOCOL is needed for clk driver clk: samsung: audss: Fix silent hang on Exynos4412 due to disabled EPLL clk: uniphier: provide NAND controller clock rate clk: hisilicon: add usb2 clocks for hi3798cv200 SoC clk: Add Gemini SoC clock controller clk: iproc: Remove __init marking on iproc_pll_clk_setup() clk: bcm: Add clocks for Stingray SOC dt-bindings: clk: Extend binding doc for Stingray SOC clk: mediatek: export cpu multiplexer clock for MT8173 SoCs clk: mediatek: export cpu multiplexer clock for MT2701/MT7623 SoCs clk: mediatek: add missing cpu mux causing Mediatek cpufreq can't work clk: renesas: cpg-mssr: Use of_device_get_match_data() helper clk: hi6220: add acpu clock clk: zx296718: export I2S mux clocks clk: imx7d: create clocks behind rawnand clock gate clk: hi3660: Set PPLL2 to 2880M ...
96 lines
3.1 KiB
Plaintext
96 lines
3.1 KiB
Plaintext
* Marvell EBU GPIO controller
|
|
|
|
Required properties:
|
|
|
|
- compatible : Should be "marvell,orion-gpio", "marvell,mv78200-gpio",
|
|
"marvell,armadaxp-gpio" or "marvell,armada-8k-gpio".
|
|
|
|
"marvell,orion-gpio" should be used for Orion, Kirkwood, Dove,
|
|
Discovery (except MV78200) and Armada 370. "marvell,mv78200-gpio"
|
|
should be used for the Discovery MV78200.
|
|
|
|
"marvel,armadaxp-gpio" should be used for all Armada XP SoCs
|
|
(MV78230, MV78260, MV78460).
|
|
|
|
"marvell,armada-8k-gpio" should be used for the Armada 7K and 8K
|
|
SoCs (either from AP or CP), see
|
|
Documentation/devicetree/bindings/arm/marvell/cp110-system-controller0.txt
|
|
and
|
|
Documentation/devicetree/bindings/arm/marvell/ap806-system-controller.txt
|
|
for specific details about the offset property.
|
|
|
|
- reg: Address and length of the register set for the device. Only one
|
|
entry is expected, except for the "marvell,armadaxp-gpio" variant
|
|
for which two entries are expected: one for the general registers,
|
|
one for the per-cpu registers. Not used for marvell,armada-8k-gpio.
|
|
|
|
- interrupts: The list of interrupts that are used for all the pins
|
|
managed by this GPIO bank. There can be more than one interrupt
|
|
(example: 1 interrupt per 8 pins on Armada XP, which means 4
|
|
interrupts per bank of 32 GPIOs).
|
|
|
|
- interrupt-controller: identifies the node as an interrupt controller
|
|
|
|
- #interrupt-cells: specifies the number of cells needed to encode an
|
|
interrupt source. Should be two.
|
|
The first cell is the GPIO number.
|
|
The second cell is used to specify flags:
|
|
bits[3:0] trigger type and level flags:
|
|
1 = low-to-high edge triggered.
|
|
2 = high-to-low edge triggered.
|
|
4 = active high level-sensitive.
|
|
8 = active low level-sensitive.
|
|
|
|
- gpio-controller: marks the device node as a gpio controller
|
|
|
|
- ngpios: number of GPIOs this controller has
|
|
|
|
- #gpio-cells: Should be two. The first cell is the pin number. The
|
|
second cell is reserved for flags, unused at the moment.
|
|
|
|
Optional properties:
|
|
|
|
In order to use the GPIO lines in PWM mode, some additional optional
|
|
properties are required.
|
|
|
|
- compatible: Must contain "marvell,armada-370-gpio"
|
|
|
|
- reg: an additional register set is needed, for the GPIO Blink
|
|
Counter on/off registers.
|
|
|
|
- reg-names: Must contain an entry "pwm" corresponding to the
|
|
additional register range needed for PWM operation.
|
|
|
|
- #pwm-cells: Should be two. The first cell is the GPIO line number. The
|
|
second cell is the period in nanoseconds.
|
|
|
|
- clocks: Must be a phandle to the clock for the GPIO controller.
|
|
|
|
Example:
|
|
|
|
gpio0: gpio@d0018100 {
|
|
compatible = "marvell,armadaxp-gpio";
|
|
reg = <0xd0018100 0x40>,
|
|
<0xd0018800 0x30>;
|
|
ngpios = <32>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
interrupts = <16>, <17>, <18>, <19>;
|
|
};
|
|
|
|
gpio1: gpio@18140 {
|
|
compatible = "marvell,armada-370-gpio";
|
|
reg = <0x18140 0x40>, <0x181c8 0x08>;
|
|
reg-names = "gpio", "pwm";
|
|
ngpios = <17>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
#pwm-cells = <2>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
interrupts = <87>, <88>, <89>;
|
|
clocks = <&coreclk 0>;
|
|
};
|