Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'berlin-dt-4.2-1' of git://git.infradead.org/users/hesselba/linux-berlin into next/dt

Merge "Berlin DT changes for v4.2" from Sebastian Hesselbarth:
- GPLv2/X11 dual licensing
- Mark Berlin DT bindings as unstable
- Updated binding documentation for reworked
chip/system ctrl nodes

* tag 'berlin-dt-4.2-1' of git://git.infradead.org/users/hesselba/linux-berlin:
Documentation: bindings: update the berlin chip and system ctrl doc
Documentation: bindings: move the Berlin clock documentation
Documentation: bindings: move the Berlin pinctrl documentation
Documentation: bindings: move the Berlin reset documentation
Documentation: bindings: update the Berlin controllers documentation
Documentation: bindings: berlin: consider our dt bindings as unstable
ARM: dts: berlin: relicense the BG2CD Google Chromecast dts under GPLv2/X11
ARM: dts: berlin: relicense the berlin2cd dtsi under GPLv2/X11
ARM: dts: berlin: relicense the BG2 Sony NSZ-GS7 dts under GPLv2/X11
ARM: dts: berlin: relicense the berlin2 dtsi under GPLv2/X11
ARM: dts: berlin: relicense the BG2Q Marvell DMP dts under GPLv2/X11
ARM: dts: berlin: relicense the berlin2q dtsi under GPLv2/X11

+305 -96
+22 -78
Documentation/devicetree/bindings/arm/marvell,berlin.txt
··· 1 1 Marvell Berlin SoC Family Device Tree Bindings 2 2 --------------------------------------------------------------- 3 3 4 + Work in progress statement: 5 + 6 + Device tree files and bindings applying to Marvell Berlin SoCs and boards are 7 + considered "unstable". Any Marvell Berlin device tree binding may change at any 8 + time. Be sure to use a device tree binary and a kernel image generated from the 9 + same source tree. 10 + 11 + Please refer to Documentation/devicetree/bindings/ABI.txt for a definition of a 12 + stable binding/ABI. 13 + 14 + --------------------------------------------------------------- 15 + 4 16 Boards with a SoC of the Marvell Berlin family, e.g. Armada 1500 5 17 shall have the following properties: 6 18 ··· 61 49 different functions which are described below. 62 50 63 51 Required properties: 64 - - compatible: shall be one of 65 - "marvell,berlin2-chip-ctrl" for BG2 66 - "marvell,berlin2cd-chip-ctrl" for BG2CD 67 - "marvell,berlin2q-chip-ctrl" for BG2Q 52 + - compatible: 53 + * the first and second values must be: 54 + "simple-mfd", "syscon" 68 55 - reg: address and length of following register sets for 69 56 BG2/BG2CD: chip control register set 70 57 BG2Q: chip control register set and cpu pll registers ··· 74 63 individual registers dealing with pinmux, padmux, and reset. 75 64 76 65 Required properties: 77 - - compatible: should be one of 78 - "marvell,berlin2-system-ctrl" for BG2 79 - "marvell,berlin2cd-system-ctrl" for BG2CD 80 - "marvell,berlin2q-system-ctrl" for BG2Q 66 + - compatible: 67 + * the first and second values must be: 68 + "simple-mfd", "syscon" 81 69 - reg: address and length of the system control register set 82 - 83 - * Clock provider binding 84 - 85 - As clock related registers are spread among the chip control registers, the 86 - chip control node also provides the clocks. Marvell Berlin2 (BG2, BG2CD, BG2Q) 87 - SoCs share the same IP for PLLs and clocks, with some minor differences in 88 - features and register layout. 89 - 90 - Required properties: 91 - - #clock-cells: shall be set to 1 92 - - clocks: clock specifiers referencing the core clock input clocks 93 - - clock-names: array of strings describing the input clock specifiers above. 94 - Allowed clock-names for the reference clocks are 95 - "refclk" for the SoCs osciallator input on all SoCs, 96 - and SoC-specific input clocks for 97 - BG2/BG2CD: "video_ext0" for the external video clock input 98 - 99 - Clocks provided by core clocks shall be referenced by a clock specifier 100 - indexing one of the provided clocks. Refer to dt-bindings/clock/berlin<soc>.h 101 - for the corresponding index mapping. 102 - 103 - * Pin controller binding 104 - 105 - Pin control registers are part of both register sets, chip control and system 106 - control. The pins controlled are organized in groups, so no actual pin 107 - information is needed. 108 - 109 - A pin-controller node should contain subnodes representing the pin group 110 - configurations, one per function. Each subnode has the group name and the muxing 111 - function used. 112 - 113 - Be aware the Marvell Berlin datasheets use the keyword 'mode' for what is called 114 - a 'function' in the pin-controller subsystem. 115 - 116 - Required subnode-properties: 117 - - groups: a list of strings describing the group names. 118 - - function: a string describing the function used to mux the groups. 119 - 120 - * Reset controller binding 121 - 122 - A reset controller is part of the chip control registers set. The chip control 123 - node also provides the reset. The register set is not at the same offset between 124 - Berlin SoCs. 125 - 126 - Required property: 127 - - #reset-cells: must be set to 2 128 70 129 71 Example: 130 72 131 73 chip: chip-control@ea0000 { 132 - compatible = "marvell,berlin2-chip-ctrl"; 133 - #clock-cells = <1>; 134 - #reset-cells = <2>; 74 + compatible = "simple-mfd", "syscon"; 135 75 reg = <0xea0000 0x400>; 136 - clocks = <&refclk>, <&externaldev 0>; 137 - clock-names = "refclk", "video_ext0"; 138 76 139 - spi1_pmux: spi1-pmux { 140 - groups = "G0"; 141 - function = "spi1"; 142 - }; 77 + /* sub-device nodes */ 143 78 }; 144 79 145 80 sysctrl: system-controller@d000 { 146 - compatible = "marvell,berlin2-system-ctrl"; 81 + compatible = "simple-mfd", "syscon"; 147 82 reg = <0xd000 0x100>; 148 83 149 - uart0_pmux: uart0-pmux { 150 - groups = "GSM4"; 151 - function = "uart0"; 152 - }; 153 - 154 - uart1_pmux: uart1-pmux { 155 - groups = "GSM5"; 156 - function = "uart1"; 157 - }; 158 - 159 - uart2_pmux: uart2-pmux { 160 - groups = "GSM3"; 161 - function = "uart2"; 162 - }; 84 + /* sub-device nodes */ 163 85 };
+31
Documentation/devicetree/bindings/clock/marvell,berlin.txt
··· 1 + Device Tree Clock bindings for Marvell Berlin 2 + 3 + This binding uses the common clock binding[1]. 4 + 5 + [1] Documentation/devicetree/bindings/clock/clock-bindings.txt 6 + 7 + Clock related registers are spread among the chip control registers. Berlin 8 + clock node should be a sub-node of the chip controller node. Marvell Berlin2 9 + (BG2, BG2CD, BG2Q) SoCs share the same IP for PLLs and clocks, with some 10 + minor differences in features and register layout. 11 + 12 + Required properties: 13 + - compatible: must be "marvell,berlin2-clk" or "marvell,berlin2q-clk" 14 + - #clock-cells: must be 1 15 + - clocks: must be the input parent clock phandle 16 + - clock-names: name of the input parent clock 17 + Allowed clock-names for the reference clocks are 18 + "refclk" for the SoCs oscillator input on all SoCs, 19 + and SoC-specific input clocks for 20 + BG2/BG2CD: "video_ext0" for the external video clock input 21 + 22 + 23 + Example: 24 + 25 + chip_clk: clock { 26 + compatible = "marvell,berlin2q-clk"; 27 + 28 + #clock-cells = <1>; 29 + clocks = <&refclk>; 30 + clock-names = "refclk"; 31 + };
+43
Documentation/devicetree/bindings/pinctrl/berlin,pinctrl.txt
··· 1 + * Pin-controller driver for the Marvell Berlin SoCs 2 + 3 + Pin control registers are part of both chip controller and system 4 + controller register sets. Pin controller nodes should be a sub-node of 5 + either the chip controller or system controller node. The pins 6 + controlled are organized in groups, so no actual pin information is 7 + needed. 8 + 9 + A pin-controller node should contain subnodes representing the pin group 10 + configurations, one per function. Each subnode has the group name and 11 + the muxing function used. 12 + 13 + Be aware the Marvell Berlin datasheets use the keyword 'mode' for what 14 + is called a 'function' in the pin-controller subsystem. 15 + 16 + Required properties: 17 + - compatible: should be one of: 18 + "marvell,berlin2-soc-pinctrl", 19 + "marvell,berlin2-system-pinctrl", 20 + "marvell,berlin2cd-soc-pinctrl", 21 + "marvell,berlin2cd-system-pinctrl", 22 + "marvell,berlin2q-soc-pinctrl", 23 + "marvell,berlin2q-system-pinctrl" 24 + 25 + Required subnode-properties: 26 + - groups: a list of strings describing the group names. 27 + - function: a string describing the function used to mux the groups. 28 + 29 + Example: 30 + 31 + sys_pinctrl: pin-controller { 32 + compatible = "marvell,berlin2q-system-pinctrl"; 33 + 34 + uart0_pmux: uart0-pmux { 35 + groups = "GSM12"; 36 + function = "uart0"; 37 + }; 38 + }; 39 + 40 + &uart0 { 41 + pinctrl-0 = <&uart0_pmux>; 42 + pinctrl-names = "default"; 43 + };
+23
Documentation/devicetree/bindings/reset/berlin,reset.txt
··· 1 + Marvell Berlin reset controller 2 + =============================== 3 + 4 + Please also refer to reset.txt in this directory for common reset 5 + controller binding usage. 6 + 7 + The reset controller node must be a sub-node of the chip controller 8 + node on Berlin SoCs. 9 + 10 + Required properties: 11 + - compatible: should be "marvell,berlin2-reset" 12 + - #reset-cells: must be set to 2 13 + 14 + Example: 15 + 16 + chip_rst: reset { 17 + compatible = "marvell,berlin2-reset"; 18 + #reset-cells = <2>; 19 + }; 20 + 21 + &usb_phy0 { 22 + resets = <&chip_rst 0x104 12>; 23 + };
+31 -3
arch/arm/boot/dts/berlin2-sony-nsz-gs7.dts
··· 3 3 * 4 4 * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> 5 5 * 6 - * This file is licensed under the terms of the GNU General Public 7 - * License version 2. This program is licensed "as is" without any 8 - * warranty of any kind, whether express or implied. 6 + * This file is dual-licensed: you can use it either under the terms 7 + * of the GPL or the X11 license, at your option. Note that this dual 8 + * licensing only applies to this file, and not this project as a 9 + * whole. 10 + * 11 + * a) This file is licensed under the terms of the GNU General Public 12 + * License version 2. This program is licensed "as is" without any 13 + * warranty of any kind, whether express or implied. 14 + * 15 + * Or, alternatively, 16 + * 17 + * b) Permission is hereby granted, free of charge, to any person 18 + * obtaining a copy of this software and associated documentation 19 + * files (the "Software"), to deal in the Software without 20 + * restriction, including without limitation the rights to use, 21 + * copy, modify, merge, publish, distribute, sublicense, and/or 22 + * sell copies of the Software, and to permit persons to whom the 23 + * Software is furnished to do so, subject to the following 24 + * conditions: 25 + * 26 + * The above copyright notice and this permission notice shall be 27 + * included in all copies or substantial portions of the Software. 28 + * 29 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 30 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 31 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 32 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 33 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 34 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 35 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 36 + * OTHER DEALINGS IN THE SOFTWARE. 9 37 */ 10 38 11 39 /dts-v1/;
+31 -3
arch/arm/boot/dts/berlin2.dtsi
··· 6 6 * based on GPL'ed 2.6 kernel sources 7 7 * (c) Marvell International Ltd. 8 8 * 9 - * This file is licensed under the terms of the GNU General Public 10 - * License version 2. This program is licensed "as is" without any 11 - * warranty of any kind, whether express or implied. 9 + * This file is dual-licensed: you can use it either under the terms 10 + * of the GPL or the X11 license, at your option. Note that this dual 11 + * licensing only applies to this file, and not this project as a 12 + * whole. 13 + * 14 + * a) This file is licensed under the terms of the GNU General Public 15 + * License version 2. This program is licensed "as is" without any 16 + * warranty of any kind, whether express or implied. 17 + * 18 + * Or, alternatively, 19 + * 20 + * b) Permission is hereby granted, free of charge, to any person 21 + * obtaining a copy of this software and associated documentation 22 + * files (the "Software"), to deal in the Software without 23 + * restriction, including without limitation the rights to use, 24 + * copy, modify, merge, publish, distribute, sublicense, and/or 25 + * sell copies of the Software, and to permit persons to whom the 26 + * Software is furnished to do so, subject to the following 27 + * conditions: 28 + * 29 + * The above copyright notice and this permission notice shall be 30 + * included in all copies or substantial portions of the Software. 31 + * 32 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 33 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 34 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 35 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 36 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 37 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 38 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 39 + * OTHER DEALINGS IN THE SOFTWARE. 12 40 */ 13 41 14 42 #include "skeleton.dtsi"
+31 -3
arch/arm/boot/dts/berlin2cd-google-chromecast.dts
··· 3 3 * 4 4 * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> 5 5 * 6 - * This file is licensed under the terms of the GNU General Public 7 - * License version 2. This program is licensed "as is" without any 8 - * warranty of any kind, whether express or implied. 6 + * This file is dual-licensed: you can use it either under the terms 7 + * of the GPL or the X11 license, at your option. Note that this dual 8 + * licensing only applies to this file, and not this project as a 9 + * whole. 10 + * 11 + * a) This file is licensed under the terms of the GNU General Public 12 + * License version 2. This program is licensed "as is" without any 13 + * warranty of any kind, whether express or implied. 14 + * 15 + * Or, alternatively, 16 + * 17 + * b) Permission is hereby granted, free of charge, to any person 18 + * obtaining a copy of this software and associated documentation 19 + * files (the "Software"), to deal in the Software without 20 + * restriction, including without limitation the rights to use, 21 + * copy, modify, merge, publish, distribute, sublicense, and/or 22 + * sell copies of the Software, and to permit persons to whom the 23 + * Software is furnished to do so, subject to the following 24 + * conditions: 25 + * 26 + * The above copyright notice and this permission notice shall be 27 + * included in all copies or substantial portions of the Software. 28 + * 29 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 30 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 31 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 32 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 33 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 34 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 35 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 36 + * OTHER DEALINGS IN THE SOFTWARE. 9 37 */ 10 38 11 39 /dts-v1/;
+31 -3
arch/arm/boot/dts/berlin2cd.dtsi
··· 6 6 * based on GPL'ed 2.6 kernel sources 7 7 * (c) Marvell International Ltd. 8 8 * 9 - * This file is licensed under the terms of the GNU General Public 10 - * License version 2. This program is licensed "as is" without any 11 - * warranty of any kind, whether express or implied. 9 + * This file is dual-licensed: you can use it either under the terms 10 + * of the GPL or the X11 license, at your option. Note that this dual 11 + * licensing only applies to this file, and not this project as a 12 + * whole. 13 + * 14 + * a) This file is licensed under the terms of the GNU General Public 15 + * License version 2. This program is licensed "as is" without any 16 + * warranty of any kind, whether express or implied. 17 + * 18 + * Or, alternatively, 19 + * 20 + * b) Permission is hereby granted, free of charge, to any person 21 + * obtaining a copy of this software and associated documentation 22 + * files (the "Software"), to deal in the Software without 23 + * restriction, including without limitation the rights to use, 24 + * copy, modify, merge, publish, distribute, sublicense, and/or 25 + * sell copies of the Software, and to permit persons to whom the 26 + * Software is furnished to do so, subject to the following 27 + * conditions: 28 + * 29 + * The above copyright notice and this permission notice shall be 30 + * included in all copies or substantial portions of the Software. 31 + * 32 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 33 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 34 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 35 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 36 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 37 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 38 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 39 + * OTHER DEALINGS IN THE SOFTWARE. 12 40 */ 13 41 14 42 #include "skeleton.dtsi"
+31 -3
arch/arm/boot/dts/berlin2q-marvell-dmp.dts
··· 1 1 /* 2 2 * Copyright (C) 2014 Antoine Ténart <antoine.tenart@free-electrons.com> 3 3 * 4 - * This file is licensed under the terms of the GNU General Public 5 - * License version 2. This program is licensed "as is" without any 6 - * warranty of any kind, whether express or implied. 4 + * This file is dual-licensed: you can use it either under the terms 5 + * of the GPL or the X11 license, at your option. Note that this dual 6 + * licensing only applies to this file, and not this project as a 7 + * whole. 8 + * 9 + * a) This file is licensed under the terms of the GNU General Public 10 + * License version 2. This program is licensed "as is" without any 11 + * warranty of any kind, whether express or implied. 12 + * 13 + * Or, alternatively, 14 + * 15 + * b) Permission is hereby granted, free of charge, to any person 16 + * obtaining a copy of this software and associated documentation 17 + * files (the "Software"), to deal in the Software without 18 + * restriction, including without limitation the rights to use, 19 + * copy, modify, merge, publish, distribute, sublicense, and/or 20 + * sell copies of the Software, and to permit persons to whom the 21 + * Software is furnished to do so, subject to the following 22 + * conditions: 23 + * 24 + * The above copyright notice and this permission notice shall be 25 + * included in all copies or substantial portions of the Software. 26 + * 27 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 28 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 29 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 30 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 31 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 32 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 33 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 34 + * OTHER DEALINGS IN THE SOFTWARE. 7 35 */ 8 36 9 37 /dts-v1/;
+31 -3
arch/arm/boot/dts/berlin2q.dtsi
··· 1 1 /* 2 2 * Copyright (C) 2014 Antoine Ténart <antoine.tenart@free-electrons.com> 3 3 * 4 - * This file is licensed under the terms of the GNU General Public 5 - * License version 2. This program is licensed "as is" without any 6 - * warranty of any kind, whether express or implied. 4 + * This file is dual-licensed: you can use it either under the terms 5 + * of the GPL or the X11 license, at your option. Note that this dual 6 + * licensing only applies to this file, and not this project as a 7 + * whole. 8 + * 9 + * a) This file is licensed under the terms of the GNU General Public 10 + * License version 2. This program is licensed "as is" without any 11 + * warranty of any kind, whether express or implied. 12 + * 13 + * Or, alternatively, 14 + * 15 + * b) Permission is hereby granted, free of charge, to any person 16 + * obtaining a copy of this software and associated documentation 17 + * files (the "Software"), to deal in the Software without 18 + * restriction, including without limitation the rights to use, 19 + * copy, modify, merge, publish, distribute, sublicense, and/or 20 + * sell copies of the Software, and to permit persons to whom the 21 + * Software is furnished to do so, subject to the following 22 + * conditions: 23 + * 24 + * The above copyright notice and this permission notice shall be 25 + * included in all copies or substantial portions of the Software. 26 + * 27 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 28 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 29 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 30 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 31 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 32 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 33 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 34 + * OTHER DEALINGS IN THE SOFTWARE. 7 35 */ 8 36 9 37 #include <dt-bindings/clock/berlin2q.h>