Loading Documentation/devicetree/bindings/clock/alphascale,acc.txt 0 → 100644 +115 −0 Original line number Diff line number Diff line Alphascale Clock Controller The ACC (Alphascale Clock Controller) is responsible of choising proper clock source, setting deviders and clock gates. Required properties for the ACC node: - compatible: must be "alphascale,asm9260-clock-controller" - reg: must contain the ACC register base and size - #clock-cells : shall be set to 1. Simple one-cell clock specifier format is used, where the only cell is used as an index of the clock inside the provider. It is encouraged to use dt-binding for clock index definitions. SoC specific dt-binding should be included to the device tree descriptor. For example Alphascale ASM9260: #include <dt-bindings/clock/alphascale,asm9260.h> This binding contains two types of clock providers: _AHB_ - AHB gate; _SYS_ - adjustable clock source. Not all peripheral have _SYS_ clock provider. All clock specific details can be found in the SoC documentation. CLKID_AHB_ROM 0 CLKID_AHB_RAM 1 CLKID_AHB_GPIO 2 CLKID_AHB_MAC 3 CLKID_AHB_EMI 4 CLKID_AHB_USB0 5 CLKID_AHB_USB1 6 CLKID_AHB_DMA0 7 CLKID_AHB_DMA1 8 CLKID_AHB_UART0 9 CLKID_AHB_UART1 10 CLKID_AHB_UART2 11 CLKID_AHB_UART3 12 CLKID_AHB_UART4 13 CLKID_AHB_UART5 14 CLKID_AHB_UART6 15 CLKID_AHB_UART7 16 CLKID_AHB_UART8 17 CLKID_AHB_UART9 18 CLKID_AHB_I2S0 19 CLKID_AHB_I2C0 20 CLKID_AHB_I2C1 21 CLKID_AHB_SSP0 22 CLKID_AHB_IOCONFIG 23 CLKID_AHB_WDT 24 CLKID_AHB_CAN0 25 CLKID_AHB_CAN1 26 CLKID_AHB_MPWM 27 CLKID_AHB_SPI0 28 CLKID_AHB_SPI1 29 CLKID_AHB_QEI 30 CLKID_AHB_QUADSPI0 31 CLKID_AHB_CAMIF 32 CLKID_AHB_LCDIF 33 CLKID_AHB_TIMER0 34 CLKID_AHB_TIMER1 35 CLKID_AHB_TIMER2 36 CLKID_AHB_TIMER3 37 CLKID_AHB_IRQ 38 CLKID_AHB_RTC 39 CLKID_AHB_NAND 40 CLKID_AHB_ADC0 41 CLKID_AHB_LED 42 CLKID_AHB_DAC0 43 CLKID_AHB_LCD 44 CLKID_AHB_I2S1 45 CLKID_AHB_MAC1 46 CLKID_SYS_CPU 47 CLKID_SYS_AHB 48 CLKID_SYS_I2S0M 49 CLKID_SYS_I2S0S 50 CLKID_SYS_I2S1M 51 CLKID_SYS_I2S1S 52 CLKID_SYS_UART0 53 CLKID_SYS_UART1 54 CLKID_SYS_UART2 55 CLKID_SYS_UART3 56 CLKID_SYS_UART4 56 CLKID_SYS_UART5 57 CLKID_SYS_UART6 58 CLKID_SYS_UART7 59 CLKID_SYS_UART8 60 CLKID_SYS_UART9 61 CLKID_SYS_SPI0 62 CLKID_SYS_SPI1 63 CLKID_SYS_QUADSPI 64 CLKID_SYS_SSP0 65 CLKID_SYS_NAND 66 CLKID_SYS_TRACE 67 CLKID_SYS_CAMM 68 CLKID_SYS_WDT 69 CLKID_SYS_CLKOUT 70 CLKID_SYS_MAC 71 CLKID_SYS_LCD 72 CLKID_SYS_ADCANA 73 Example of clock consumer with _SYS_ and _AHB_ sinks. uart4: serial@80010000 { compatible = "alphascale,asm9260-uart"; reg = <0x80010000 0x4000>; clocks = <&acc CLKID_SYS_UART4>, <&acc CLKID_AHB_UART4>; interrupts = <19>; status = "disabled"; }; Clock consumer with only one, _AHB_ sink. timer0: timer@80088000 { compatible = "alphascale,asm9260-timer"; reg = <0x80088000 0x4000>; clocks = <&acc CLKID_AHB_TIMER0>; interrupts = <29>; }; Documentation/devicetree/bindings/vendor-prefixes.txt +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ adi Analog Devices, Inc. aeroflexgaisler Aeroflex Gaisler AB ak Asahi Kasei Corp. allwinner Allwinner Technology Co., Ltd. alphascale AlphaScale Integrated Circuits Systems, Inc. altr Altera Corp. amcc Applied Micro Circuits Corporation (APM, formally AMCC) amd Advanced Micro Devices (AMD), Inc. Loading arch/arm/boot/dts/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -628,7 +628,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \ mt6592-evb.dtb \ mt8127-moose.dtb \ mt8135-evbp1.dtb dtb-$(CONFIG_MACH_ASM9260) += alphascale-asm9260-devkit.dtb endif always := $(dtb-y) Loading arch/arm/boot/dts/alphascale-asm9260-devkit.dts 0 → 100644 +13 −0 Original line number Diff line number Diff line /* * Copyright 2014 Oleksij Rempel <linux@rempel-privat.de> * * Licensed under the X11 license or the GPL v2 (or later) */ /dts-v1/; #include "alphascale-asm9260.dtsi" / { model = "Alphascale asm9260 Development Kit"; compatible = "alphascale,asm9260devkit", "alphascale,asm9260"; }; arch/arm/boot/dts/alphascale-asm9260.dtsi 0 → 100644 +63 −0 Original line number Diff line number Diff line /* * Copyright 2014 Oleksij Rempel <linux@rempel-privat.de> * * Licensed under the X11 license or the GPL v2 (or later) */ #include "skeleton.dtsi" #include <dt-bindings/clock/alphascale,asm9260.h> / { interrupt-parent = <&icoll>; memory { device_type = "memory"; reg = <0x20000000 0x2000000>; }; cpus { #address-cells = <0>; #size-cells = <0>; cpu { compatible = "arm,arm926ej-s"; device_type = "cpu"; clocks = <&acc CLKID_SYS_CPU>; }; }; osc24m: oscillator { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <24000000>; clock-accuracy = <30000>; }; soc { #address-cells = <1>; #size-cells = <1>; compatible = "simple-bus"; ranges; acc: clock-controller@80040000 { compatible = "alphascale,asm9260-clock-controller"; #clock-cells = <1>; clocks = <&osc24m>; reg = <0x80040000 0x204>; }; icoll: interrupt-controller@80054000 { compatible = "alphascale,asm9260-icoll"; interrupt-controller; #interrupt-cells = <1>; reg = <0x80054000 0x200>; }; timer0: timer@80088000 { compatible = "alphascale,asm9260-timer"; reg = <0x80088000 0x4000>; clocks = <&acc CLKID_AHB_TIMER0>; interrupts = <29>; }; }; }; Loading
Documentation/devicetree/bindings/clock/alphascale,acc.txt 0 → 100644 +115 −0 Original line number Diff line number Diff line Alphascale Clock Controller The ACC (Alphascale Clock Controller) is responsible of choising proper clock source, setting deviders and clock gates. Required properties for the ACC node: - compatible: must be "alphascale,asm9260-clock-controller" - reg: must contain the ACC register base and size - #clock-cells : shall be set to 1. Simple one-cell clock specifier format is used, where the only cell is used as an index of the clock inside the provider. It is encouraged to use dt-binding for clock index definitions. SoC specific dt-binding should be included to the device tree descriptor. For example Alphascale ASM9260: #include <dt-bindings/clock/alphascale,asm9260.h> This binding contains two types of clock providers: _AHB_ - AHB gate; _SYS_ - adjustable clock source. Not all peripheral have _SYS_ clock provider. All clock specific details can be found in the SoC documentation. CLKID_AHB_ROM 0 CLKID_AHB_RAM 1 CLKID_AHB_GPIO 2 CLKID_AHB_MAC 3 CLKID_AHB_EMI 4 CLKID_AHB_USB0 5 CLKID_AHB_USB1 6 CLKID_AHB_DMA0 7 CLKID_AHB_DMA1 8 CLKID_AHB_UART0 9 CLKID_AHB_UART1 10 CLKID_AHB_UART2 11 CLKID_AHB_UART3 12 CLKID_AHB_UART4 13 CLKID_AHB_UART5 14 CLKID_AHB_UART6 15 CLKID_AHB_UART7 16 CLKID_AHB_UART8 17 CLKID_AHB_UART9 18 CLKID_AHB_I2S0 19 CLKID_AHB_I2C0 20 CLKID_AHB_I2C1 21 CLKID_AHB_SSP0 22 CLKID_AHB_IOCONFIG 23 CLKID_AHB_WDT 24 CLKID_AHB_CAN0 25 CLKID_AHB_CAN1 26 CLKID_AHB_MPWM 27 CLKID_AHB_SPI0 28 CLKID_AHB_SPI1 29 CLKID_AHB_QEI 30 CLKID_AHB_QUADSPI0 31 CLKID_AHB_CAMIF 32 CLKID_AHB_LCDIF 33 CLKID_AHB_TIMER0 34 CLKID_AHB_TIMER1 35 CLKID_AHB_TIMER2 36 CLKID_AHB_TIMER3 37 CLKID_AHB_IRQ 38 CLKID_AHB_RTC 39 CLKID_AHB_NAND 40 CLKID_AHB_ADC0 41 CLKID_AHB_LED 42 CLKID_AHB_DAC0 43 CLKID_AHB_LCD 44 CLKID_AHB_I2S1 45 CLKID_AHB_MAC1 46 CLKID_SYS_CPU 47 CLKID_SYS_AHB 48 CLKID_SYS_I2S0M 49 CLKID_SYS_I2S0S 50 CLKID_SYS_I2S1M 51 CLKID_SYS_I2S1S 52 CLKID_SYS_UART0 53 CLKID_SYS_UART1 54 CLKID_SYS_UART2 55 CLKID_SYS_UART3 56 CLKID_SYS_UART4 56 CLKID_SYS_UART5 57 CLKID_SYS_UART6 58 CLKID_SYS_UART7 59 CLKID_SYS_UART8 60 CLKID_SYS_UART9 61 CLKID_SYS_SPI0 62 CLKID_SYS_SPI1 63 CLKID_SYS_QUADSPI 64 CLKID_SYS_SSP0 65 CLKID_SYS_NAND 66 CLKID_SYS_TRACE 67 CLKID_SYS_CAMM 68 CLKID_SYS_WDT 69 CLKID_SYS_CLKOUT 70 CLKID_SYS_MAC 71 CLKID_SYS_LCD 72 CLKID_SYS_ADCANA 73 Example of clock consumer with _SYS_ and _AHB_ sinks. uart4: serial@80010000 { compatible = "alphascale,asm9260-uart"; reg = <0x80010000 0x4000>; clocks = <&acc CLKID_SYS_UART4>, <&acc CLKID_AHB_UART4>; interrupts = <19>; status = "disabled"; }; Clock consumer with only one, _AHB_ sink. timer0: timer@80088000 { compatible = "alphascale,asm9260-timer"; reg = <0x80088000 0x4000>; clocks = <&acc CLKID_AHB_TIMER0>; interrupts = <29>; };
Documentation/devicetree/bindings/vendor-prefixes.txt +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ adi Analog Devices, Inc. aeroflexgaisler Aeroflex Gaisler AB ak Asahi Kasei Corp. allwinner Allwinner Technology Co., Ltd. alphascale AlphaScale Integrated Circuits Systems, Inc. altr Altera Corp. amcc Applied Micro Circuits Corporation (APM, formally AMCC) amd Advanced Micro Devices (AMD), Inc. Loading
arch/arm/boot/dts/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -628,7 +628,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \ mt6592-evb.dtb \ mt8127-moose.dtb \ mt8135-evbp1.dtb dtb-$(CONFIG_MACH_ASM9260) += alphascale-asm9260-devkit.dtb endif always := $(dtb-y) Loading
arch/arm/boot/dts/alphascale-asm9260-devkit.dts 0 → 100644 +13 −0 Original line number Diff line number Diff line /* * Copyright 2014 Oleksij Rempel <linux@rempel-privat.de> * * Licensed under the X11 license or the GPL v2 (or later) */ /dts-v1/; #include "alphascale-asm9260.dtsi" / { model = "Alphascale asm9260 Development Kit"; compatible = "alphascale,asm9260devkit", "alphascale,asm9260"; };
arch/arm/boot/dts/alphascale-asm9260.dtsi 0 → 100644 +63 −0 Original line number Diff line number Diff line /* * Copyright 2014 Oleksij Rempel <linux@rempel-privat.de> * * Licensed under the X11 license or the GPL v2 (or later) */ #include "skeleton.dtsi" #include <dt-bindings/clock/alphascale,asm9260.h> / { interrupt-parent = <&icoll>; memory { device_type = "memory"; reg = <0x20000000 0x2000000>; }; cpus { #address-cells = <0>; #size-cells = <0>; cpu { compatible = "arm,arm926ej-s"; device_type = "cpu"; clocks = <&acc CLKID_SYS_CPU>; }; }; osc24m: oscillator { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <24000000>; clock-accuracy = <30000>; }; soc { #address-cells = <1>; #size-cells = <1>; compatible = "simple-bus"; ranges; acc: clock-controller@80040000 { compatible = "alphascale,asm9260-clock-controller"; #clock-cells = <1>; clocks = <&osc24m>; reg = <0x80040000 0x204>; }; icoll: interrupt-controller@80054000 { compatible = "alphascale,asm9260-icoll"; interrupt-controller; #interrupt-cells = <1>; reg = <0x80054000 0x200>; }; timer0: timer@80088000 { compatible = "alphascale,asm9260-timer"; reg = <0x80088000 0x4000>; clocks = <&acc CLKID_AHB_TIMER0>; interrupts = <29>; }; }; };