aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-24 20:27:34 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-24 20:27:34 -0500
commit4d8880a0ee5b3cdf7927c6cf59a164f352e4f436 (patch)
treeb11c4af3b283f4850da11f4be856b7a432375720 /Documentation/devicetree/bindings
parent8e585a6c4abdef8562308f3f307aeea6cf168e8b (diff)
parente48ca29d30a10556eb7abd8d91980b8a57dabf10 (diff)
Merge tag 'devicetree-for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
Pull devicetree updates from Rob Herring: - Add new documents with guidelines for DT binding stability and review process. This is one of the outcomes of Kernel Summit DT discussions - Remove a bunch of device_type usage which is only for OF and deprecated with FDT - Fix a long standing issue with compatible string match ordering - Various minor binding documentation updates * tag 'devicetree-for-3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: dt-bindings: add rockchip vendor prefix serial: vt8500: Add missing binding document for arch-vt8500 serial driver. dt/bindings: submitting patches and ABI documents DT: Add vendor prefix for Emerging Display Technologies of: add vendor prefixe for EPFL of: add vendor prefix for Gumstix of: add vendor prefix for Ka-Ro electronics GmbH devicetree: macb: Document clock properties dts: bindings: trivial clock bindings doc fixes of: Fix __of_device_is_available check dt/bindings: Remove device_type "serial" from marvell,mv64360-mpsc dt/bindings: remove device_type "network" references dt/bindings: remove users of device_type "mdio" dt/bindings: Remove references to linux,phandle properties dt/bindings: Remove all references to device_type "ethernet-phy" of: irq: Ignore disabled intc's when searching map of: irq: Ignore disabled interrupt controllers OF: base: match each node compatible against all given matches first dt-bindings: add GIC-400 binding
Diffstat (limited to 'Documentation/devicetree/bindings')
-rw-r--r--Documentation/devicetree/bindings/ABI.txt39
-rw-r--r--Documentation/devicetree/bindings/arm/gic.txt1
-rw-r--r--Documentation/devicetree/bindings/clock/clock-bindings.txt2
-rw-r--r--Documentation/devicetree/bindings/marvell.txt8
-rw-r--r--Documentation/devicetree/bindings/net/macb.txt6
-rw-r--r--Documentation/devicetree/bindings/net/marvell-orion-net.txt3
-rw-r--r--Documentation/devicetree/bindings/net/phy.txt5
-rw-r--r--Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt2
-rw-r--r--Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt3
-rw-r--r--Documentation/devicetree/bindings/serial/vt8500-uart.txt26
-rw-r--r--Documentation/devicetree/bindings/submitting-patches.txt38
-rw-r--r--Documentation/devicetree/bindings/vendor-prefixes.txt5
12 files changed, 116 insertions, 22 deletions
diff --git a/Documentation/devicetree/bindings/ABI.txt b/Documentation/devicetree/bindings/ABI.txt
new file mode 100644
index 000000000000..d25f8d379680
--- /dev/null
+++ b/Documentation/devicetree/bindings/ABI.txt
@@ -0,0 +1,39 @@
1
2 Devicetree (DT) ABI
3
4I. Regarding stable bindings/ABI, we quote from the 2013 ARM mini-summit
5 summary document:
6
7 "That still leaves the question of, what does a stable binding look
8 like? Certainly a stable binding means that a newer kernel will not
9 break on an older device tree, but that doesn't mean the binding is
10 frozen for all time. Grant said there are ways to change bindings that
11 don't result in breakage. For instance, if a new property is added,
12 then default to the previous behaviour if it is missing. If a binding
13 truly needs an incompatible change, then change the compatible string
14 at the same time. The driver can bind against both the old and the
15 new. These guidelines aren't new, but they desperately need to be
16 documented."
17
18II. General binding rules
19
20 1) Maintainers, don't let perfect be the enemy of good. Don't hold up a
21 binding because it isn't perfect.
22
23 2) Use specific compatible strings so that if we need to add a feature (DMA)
24 in the future, we can create a new compatible string. See I.
25
26 3) Bindings can be augmented, but the driver shouldn't break when given
27 the old binding. ie. add additional properties, but don't change the
28 meaning of an existing property. For drivers, default to the original
29 behaviour when a newly added property is missing.
30
31 4) Don't submit bindings for staging or unstable. That will be decided by
32 the devicetree maintainers *after* discussion on the mailinglist.
33
34III. Notes
35
36 1) This document is intended as a general familiarization with the process as
37 decided at the 2013 Kernel Summit. When in doubt, the current word of the
38 devicetree maintainers overrules this document. In that situation, a patch
39 updating this document would be appreciated.
diff --git a/Documentation/devicetree/bindings/arm/gic.txt b/Documentation/devicetree/bindings/arm/gic.txt
index 3dfb0c0384f5..bae0d87a38b2 100644
--- a/Documentation/devicetree/bindings/arm/gic.txt
+++ b/Documentation/devicetree/bindings/arm/gic.txt
@@ -11,6 +11,7 @@ have PPIs or SGIs.
11Main node required properties: 11Main node required properties:
12 12
13- compatible : should be one of: 13- compatible : should be one of:
14 "arm,gic-400"
14 "arm,cortex-a15-gic" 15 "arm,cortex-a15-gic"
15 "arm,cortex-a9-gic" 16 "arm,cortex-a9-gic"
16 "arm,cortex-a7-gic" 17 "arm,cortex-a7-gic"
diff --git a/Documentation/devicetree/bindings/clock/clock-bindings.txt b/Documentation/devicetree/bindings/clock/clock-bindings.txt
index eb65d417f8c4..7c52c29d99fa 100644
--- a/Documentation/devicetree/bindings/clock/clock-bindings.txt
+++ b/Documentation/devicetree/bindings/clock/clock-bindings.txt
@@ -5,7 +5,7 @@ Sources of clock signal can be represented by any node in the device
5tree. Those nodes are designated as clock providers. Clock consumer 5tree. Those nodes are designated as clock providers. Clock consumer
6nodes use a phandle and clock specifier pair to connect clock provider 6nodes use a phandle and clock specifier pair to connect clock provider
7outputs to clock inputs. Similar to the gpio specifiers, a clock 7outputs to clock inputs. Similar to the gpio specifiers, a clock
8specifier is an array of one more more cells identifying the clock 8specifier is an array of zero, one or more cells identifying the clock
9output on a device. The length of a clock specifier is defined by the 9output on a device. The length of a clock specifier is defined by the
10value of a #clock-cells property in the clock provider node. 10value of a #clock-cells property in the clock provider node.
11 11
diff --git a/Documentation/devicetree/bindings/marvell.txt b/Documentation/devicetree/bindings/marvell.txt
index f7a0da6b4022..ea2b16ced49b 100644
--- a/Documentation/devicetree/bindings/marvell.txt
+++ b/Documentation/devicetree/bindings/marvell.txt
@@ -79,7 +79,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
79 Required properties: 79 Required properties:
80 - #address-cells : Should be <1> 80 - #address-cells : Should be <1>
81 - #size-cells : Should be <0> 81 - #size-cells : Should be <0>
82 - device_type : Should be "mdio"
83 - compatible : Should be "marvell,mv64360-mdio" 82 - compatible : Should be "marvell,mv64360-mdio"
84 83
85 Example: 84 Example:
@@ -87,7 +86,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
87 mdio { 86 mdio {
88 #address-cells = <1>; 87 #address-cells = <1>;
89 #size-cells = <0>; 88 #size-cells = <0>;
90 device_type = "mdio";
91 compatible = "marvell,mv64360-mdio"; 89 compatible = "marvell,mv64360-mdio";
92 90
93 ethernet-phy@0 { 91 ethernet-phy@0 {
@@ -132,7 +130,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
132 Ethernet port node 130 Ethernet port node
133 131
134 Required properties: 132 Required properties:
135 - device_type : Should be "network".
136 - compatible : Should be "marvell,mv64360-eth". 133 - compatible : Should be "marvell,mv64360-eth".
137 - reg : Should be <0>, <1>, or <2>, according to which registers 134 - reg : Should be <0>, <1>, or <2>, according to which registers
138 within the silicon block the device uses. 135 within the silicon block the device uses.
@@ -145,7 +142,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
145 142
146 Example Discovery Ethernet port node: 143 Example Discovery Ethernet port node:
147 ethernet@0 { 144 ethernet@0 {
148 device_type = "network";
149 compatible = "marvell,mv64360-eth"; 145 compatible = "marvell,mv64360-eth";
150 reg = <0>; 146 reg = <0>;
151 interrupts = <32>; 147 interrupts = <32>;
@@ -159,7 +155,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
159 c) Marvell Discovery PHY nodes 155 c) Marvell Discovery PHY nodes
160 156
161 Required properties: 157 Required properties:
162 - device_type : Should be "ethernet-phy"
163 - interrupts : <a> where a is the interrupt number for this phy. 158 - interrupts : <a> where a is the interrupt number for this phy.
164 - interrupt-parent : the phandle for the interrupt controller that 159 - interrupt-parent : the phandle for the interrupt controller that
165 services interrupts for this device. 160 services interrupts for this device.
@@ -167,7 +162,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
167 162
168 Example Discovery PHY node: 163 Example Discovery PHY node:
169 ethernet-phy@1 { 164 ethernet-phy@1 {
170 device_type = "ethernet-phy";
171 compatible = "broadcom,bcm5421"; 165 compatible = "broadcom,bcm5421";
172 interrupts = <76>; /* GPP 12 */ 166 interrupts = <76>; /* GPP 12 */
173 interrupt-parent = <&PIC>; 167 interrupt-parent = <&PIC>;
@@ -271,7 +265,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
271 serial port. 265 serial port.
272 266
273 Required properties: 267 Required properties:
274 - device_type : "serial"
275 - compatible : "marvell,mv64360-mpsc" 268 - compatible : "marvell,mv64360-mpsc"
276 - reg : Offset and length of the register set for this device 269 - reg : Offset and length of the register set for this device
277 - sdma : the phandle for the SDMA node used by this port 270 - sdma : the phandle for the SDMA node used by this port
@@ -288,7 +281,6 @@ prefixed with the string "marvell,", for Marvell Technology Group Ltd.
288 281
289 Example Discovery MPSCINTR node: 282 Example Discovery MPSCINTR node:
290 mpsc@8000 { 283 mpsc@8000 {
291 device_type = "serial";
292 compatible = "marvell,mv64360-mpsc"; 284 compatible = "marvell,mv64360-mpsc";
293 reg = <0x8000 0x38>; 285 reg = <0x8000 0x38>;
294 virtual-reg = <0xf1008000>; 286 virtual-reg = <0xf1008000>;
diff --git a/Documentation/devicetree/bindings/net/macb.txt b/Documentation/devicetree/bindings/net/macb.txt
index 4ff65047bb9a..70af2ec12b09 100644
--- a/Documentation/devicetree/bindings/net/macb.txt
+++ b/Documentation/devicetree/bindings/net/macb.txt
@@ -10,6 +10,10 @@ Required properties:
10- interrupts: Should contain macb interrupt 10- interrupts: Should contain macb interrupt
11- phy-mode: String, operation mode of the PHY interface. 11- phy-mode: String, operation mode of the PHY interface.
12 Supported values are: "mii", "rmii", "gmii", "rgmii". 12 Supported values are: "mii", "rmii", "gmii", "rgmii".
13- clock-names: Tuple listing input clock names.
14 Required elements: 'pclk', 'hclk'
15 Optional elements: 'tx_clk'
16- clocks: Phandles to input clocks.
13 17
14Optional properties: 18Optional properties:
15- local-mac-address: 6 bytes, mac address 19- local-mac-address: 6 bytes, mac address
@@ -22,4 +26,6 @@ Examples:
22 interrupts = <21>; 26 interrupts = <21>;
23 phy-mode = "rmii"; 27 phy-mode = "rmii";
24 local-mac-address = [3a 0e 03 04 05 06]; 28 local-mac-address = [3a 0e 03 04 05 06];
29 clock-names = "pclk", "hclk", "tx_clk";
30 clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>;
25 }; 31 };
diff --git a/Documentation/devicetree/bindings/net/marvell-orion-net.txt b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
index a73b79f227e1..c233b6114242 100644
--- a/Documentation/devicetree/bindings/net/marvell-orion-net.txt
+++ b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
@@ -32,7 +32,6 @@ Optional controller properties:
32* Ethernet port node 32* Ethernet port node
33 33
34Required port properties: 34Required port properties:
35 - device_type: shall be "network".
36 - compatible: shall be one of "marvell,orion-eth-port", 35 - compatible: shall be one of "marvell,orion-eth-port",
37 "marvell,kirkwood-eth-port". 36 "marvell,kirkwood-eth-port".
38 - reg: port number relative to ethernet controller, shall be 0, 1, or 2. 37 - reg: port number relative to ethernet controller, shall be 0, 1, or 2.
@@ -61,7 +60,6 @@ or
61mdio-bus { 60mdio-bus {
62 ... 61 ...
63 ethphy: ethernet-phy@8 { 62 ethphy: ethernet-phy@8 {
64 device_type = "ethernet-phy";
65 ... 63 ...
66 }; 64 };
67}; 65};
@@ -75,7 +73,6 @@ eth: ethernet-controller@72000 {
75 marvell,tx-checksum-limit = <1600>; 73 marvell,tx-checksum-limit = <1600>;
76 74
77 ethernet@0 { 75 ethernet@0 {
78 device_type = "network";
79 compatible = "marvell,orion-eth-port"; 76 compatible = "marvell,orion-eth-port";
80 reg = <0>; 77 reg = <0>;
81 interrupts = <29>; 78 interrupts = <29>;
diff --git a/Documentation/devicetree/bindings/net/phy.txt b/Documentation/devicetree/bindings/net/phy.txt
index 7cd18fbfcf71..85de6107b98f 100644
--- a/Documentation/devicetree/bindings/net/phy.txt
+++ b/Documentation/devicetree/bindings/net/phy.txt
@@ -2,7 +2,6 @@ PHY nodes
2 2
3Required properties: 3Required properties:
4 4
5 - device_type : Should be "ethernet-phy"
6 - interrupts : <a b> where a is the interrupt number and b is a 5 - interrupts : <a b> where a is the interrupt number and b is a
7 field that represents an encoding of the sense and level 6 field that represents an encoding of the sense and level
8 information for the interrupt. This should be encoded based on 7 information for the interrupt. This should be encoded based on
@@ -11,8 +10,6 @@ Required properties:
11 - interrupt-parent : the phandle for the interrupt controller that 10 - interrupt-parent : the phandle for the interrupt controller that
12 services interrupts for this device. 11 services interrupts for this device.
13 - reg : The ID number for the phy, usually a small integer 12 - reg : The ID number for the phy, usually a small integer
14 - linux,phandle : phandle for this node; likely referenced by an
15 ethernet controller node.
16 13
17Optional Properties: 14Optional Properties:
18 15
@@ -27,9 +24,7 @@ Example:
27 24
28ethernet-phy@0 { 25ethernet-phy@0 {
29 compatible = "ethernet-phy-ieee802.3-c22"; 26 compatible = "ethernet-phy-ieee802.3-c22";
30 linux,phandle = <2452000>;
31 interrupt-parent = <40000>; 27 interrupt-parent = <40000>;
32 interrupts = <35 1>; 28 interrupts = <35 1>;
33 reg = <0>; 29 reg = <0>;
34 device_type = "ethernet-phy";
35}; 30};
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
index 0e4269446580..29b28b8f9a89 100644
--- a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
+++ b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/network.txt
@@ -10,7 +10,6 @@ Currently defined compatibles:
10Example: 10Example:
11 11
12 ethernet@11300 { 12 ethernet@11300 {
13 device_type = "network";
14 compatible = "fsl,mpc8272-fcc-enet", 13 compatible = "fsl,mpc8272-fcc-enet",
15 "fsl,cpm2-fcc-enet"; 14 "fsl,cpm2-fcc-enet";
16 reg = <11300 20 8400 100 11390 1>; 15 reg = <11300 20 8400 100 11390 1>;
@@ -33,7 +32,6 @@ fsl,mdc-pin : pin of port C controlling mdio clock
33 32
34Example: 33Example:
35 mdio@10d40 { 34 mdio@10d40 {
36 device_type = "mdio";
37 compatible = "fsl,mpc8272ads-mdio-bitbang", 35 compatible = "fsl,mpc8272ads-mdio-bitbang",
38 "fsl,mpc8272-mdio-bitbang", 36 "fsl,mpc8272-mdio-bitbang",
39 "fsl,cpm2-mdio-bitbang"; 37 "fsl,cpm2-mdio-bitbang";
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
index c5b43061db3a..ec6ee2e864a2 100644
--- a/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
+++ b/Documentation/devicetree/bindings/powerpc/fsl/cpm_qe/qe/pincfg.txt
@@ -1,8 +1,6 @@
1* Pin configuration nodes 1* Pin configuration nodes
2 2
3Required properties: 3Required properties:
4- linux,phandle : phandle of this node; likely referenced by a QE
5 device.
6- pio-map : array of pin configurations. Each pin is defined by 6 4- pio-map : array of pin configurations. Each pin is defined by 6
7 integers. The six numbers are respectively: port, pin, dir, 5 integers. The six numbers are respectively: port, pin, dir,
8 open_drain, assignment, has_irq. 6 open_drain, assignment, has_irq.
@@ -29,7 +27,6 @@ Required properties:
29 27
30Example: 28Example:
31 ucc_pin@01 { 29 ucc_pin@01 {
32 linux,phandle = <140001>;
33 pio-map = < 30 pio-map = <
34 /* port pin dir open_drain assignment has_irq */ 31 /* port pin dir open_drain assignment has_irq */
35 0 3 1 0 1 0 /* TxD0 */ 32 0 3 1 0 1 0 /* TxD0 */
diff --git a/Documentation/devicetree/bindings/serial/vt8500-uart.txt b/Documentation/devicetree/bindings/serial/vt8500-uart.txt
new file mode 100644
index 000000000000..795c393d09c4
--- /dev/null
+++ b/Documentation/devicetree/bindings/serial/vt8500-uart.txt
@@ -0,0 +1,26 @@
1* VIA VT8500 and WonderMedia WM8xxx UART Controller
2
3Required properties:
4- compatible: should be "via,vt8500-uart"
5
6- reg: base physical address of the controller and length of memory mapped
7 region.
8
9- interrupts: hardware interrupt number
10
11- clocks: shall be the input parent clock phandle for the clock. This should
12 be the 24Mhz reference clock.
13
14Aliases may be defined to ensure the correct ordering of the uarts.
15
16Example:
17 aliases {
18 serial0 = &uart0;
19 };
20
21 uart0: serial@d8200000 {
22 compatible = "via,vt8500-uart";
23 reg = <0xd8200000 0x1040>;
24 interrupts = <32>;
25 clocks = <&clkuart0>;
26 };
diff --git a/Documentation/devicetree/bindings/submitting-patches.txt b/Documentation/devicetree/bindings/submitting-patches.txt
new file mode 100644
index 000000000000..042a0273b8ba
--- /dev/null
+++ b/Documentation/devicetree/bindings/submitting-patches.txt
@@ -0,0 +1,38 @@
1
2 Submitting devicetree (DT) binding patches
3
4I. For patch submitters
5
6 0) Normal patch submission rules from Documentation/SubmittingPatches
7 applies.
8
9 1) The Documentation/ portion of the patch should be a separate patch.
10
11 2) Submit the entire series to the devicetree mailinglist at
12
13 devicetree@vger.kernel.org
14
15II. For kernel maintainers
16
17 1) If you aren't comfortable reviewing a given binding, reply to it and ask
18 the devicetree maintainers for guidance. This will help them prioritize
19 which ones to review and which ones are ok to let go.
20
21 2) For driver (not subsystem) bindings: If you are comfortable with the
22 binding, and it hasn't received an Acked-by from the devicetree
23 maintainers after a few weeks, go ahead and take it.
24
25 Subsystem bindings (anything affecting more than a single device)
26 then getting a devicetree maintainer to review it is required.
27
28 3) For a series going though multiple trees, the binding patch should be
29 kept with the driver using the binding.
30
31III. Notes
32
33 0) Please see ...bindings/ABI.txt for details regarding devicetree ABI.
34
35 1) This document is intended as a general familiarization with the process as
36 decided at the 2013 Kernel Summit. When in doubt, the current word of the
37 devicetree maintainers overrules this document. In that situation, a patch
38 updating this document would be appreciated.
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 520596da7953..5780ffcd79af 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -27,13 +27,16 @@ cortina Cortina Systems, Inc.
27dallas Maxim Integrated Products (formerly Dallas Semiconductor) 27dallas Maxim Integrated Products (formerly Dallas Semiconductor)
28davicom DAVICOM Semiconductor, Inc. 28davicom DAVICOM Semiconductor, Inc.
29denx Denx Software Engineering 29denx Denx Software Engineering
30edt Emerging Display Technologies
30emmicro EM Microelectronic 31emmicro EM Microelectronic
32epfl Ecole Polytechnique Fédérale de Lausanne
31epson Seiko Epson Corp. 33epson Seiko Epson Corp.
32est ESTeem Wireless Modems 34est ESTeem Wireless Modems
33fsl Freescale Semiconductor 35fsl Freescale Semiconductor
34GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc. 36GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc.
35gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. 37gef GE Fanuc Intelligent Platforms Embedded Systems, Inc.
36gmt Global Mixed-mode Technology, Inc. 38gmt Global Mixed-mode Technology, Inc.
39gumstix Gumstix, Inc.
37haoyu Haoyu Microelectronic Co. Ltd. 40haoyu Haoyu Microelectronic Co. Ltd.
38hisilicon Hisilicon Limited. 41hisilicon Hisilicon Limited.
39hp Hewlett Packard 42hp Hewlett Packard
@@ -42,6 +45,7 @@ idt Integrated Device Technologies, Inc.
42img Imagination Technologies Ltd. 45img Imagination Technologies Ltd.
43intercontrol Inter Control Group 46intercontrol Inter Control Group
44isl Intersil 47isl Intersil
48karo Ka-Ro electronics GmbH
45lg LG Corporation 49lg LG Corporation
46linux Linux-specific binding 50linux Linux-specific binding
47lsi LSI Corp. (LSI Logic) 51lsi LSI Corp. (LSI Logic)
@@ -64,6 +68,7 @@ ralink Mediatek/Ralink Technology Corp.
64ramtron Ramtron International 68ramtron Ramtron International
65realtek Realtek Semiconductor Corp. 69realtek Realtek Semiconductor Corp.
66renesas Renesas Electronics Corporation 70renesas Renesas Electronics Corporation
71rockchip Fuzhou Rockchip Electronics Co., Ltd
67samsung Samsung Semiconductor 72samsung Samsung Semiconductor
68sbs Smart Battery System 73sbs Smart Battery System
69schindler Schindler 74schindler Schindler