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

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'devicetree-fixes-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

Pull DeviceTree fixes from Rob Herring:
- Silence bogus warning for of_irq_parse_pci
- Fix typo in ARM idle-states binding doc and dts files
- Various minor binding documentation updates

* tag 'devicetree-fixes-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
Documentation: arm: Fix typo in the idle-states bindings examples
gpio: mention in DT binding doc that <name>-gpio is deprecated
of_pci_irq: Silence bogus "of_irq_parse_pci() failed ..." messages.
devicetree: bindings: Extend the bma180 bindings with bma250 info
of: thermal: Mark cooling-*-level properties optional
of: thermal: Fix inconsitency between cooling-*-state and cooling-*-level
Docs: dt: add #msi-cells to GICv3 ITS binding
of: add vendor prefix for Socionext Inc.

+46 -27
+5
Documentation/devicetree/bindings/arm/gic-v3.txt
··· 57 57 These nodes must have the following properties: 58 58 - compatible : Should at least contain "arm,gic-v3-its". 59 59 - msi-controller : Boolean property. Identifies the node as an MSI controller 60 + - #msi-cells: Must be <1>. The single msi-cell is the DeviceID of the device 61 + which will generate the MSI. 60 62 - reg: Specifies the base physical address and size of the ITS 61 63 registers. 62 64 ··· 85 83 gic-its@2c200000 { 86 84 compatible = "arm,gic-v3-its"; 87 85 msi-controller; 86 + #msi-cells = <1>; 88 87 reg = <0x0 0x2c200000 0 0x200000>; 89 88 }; 90 89 }; ··· 110 107 gic-its@2c200000 { 111 108 compatible = "arm,gic-v3-its"; 112 109 msi-controller; 110 + #msi-cells = <1>; 113 111 reg = <0x0 0x2c200000 0 0x200000>; 114 112 }; 115 113 116 114 gic-its@2c400000 { 117 115 compatible = "arm,gic-v3-its"; 118 116 msi-controller; 117 + #msi-cells = <1>; 119 118 reg = <0x0 0x2c400000 0 0x200000>; 120 119 }; 121 120 };
+1 -1
Documentation/devicetree/bindings/arm/idle-states.txt
··· 497 497 }; 498 498 499 499 idle-states { 500 - entry-method = "arm,psci"; 500 + entry-method = "psci"; 501 501 502 502 CPU_RETENTION_0_0: cpu-retention-0-0 { 503 503 compatible = "arm,idle-state";
+3 -1
Documentation/devicetree/bindings/gpio/gpio.txt
··· 16 16 GPIO properties should be named "[<name>-]gpios", with <name> being the purpose 17 17 of this GPIO for the device. While a non-existent <name> is considered valid 18 18 for compatibility reasons (resolving to the "gpios" property), it is not allowed 19 - for new bindings. 19 + for new bindings. Also, GPIO properties named "[<name>-]gpio" are valid and old 20 + bindings use it, but are only supported for compatibility reasons and should not 21 + be used for newer bindings since it has been deprecated. 20 22 21 23 GPIO properties can contain one or more GPIO phandles, but only in exceptional 22 24 cases should they contain more than one. If your device uses several GPIOs with
+6 -2
Documentation/devicetree/bindings/iio/accel/bma180.txt
··· 1 - * Bosch BMA180 triaxial acceleration sensor 1 + * Bosch BMA180 / BMA250 triaxial acceleration sensor 2 2 3 3 http://omapworld.com/BMA180_111_1002839.pdf 4 + http://ae-bst.resource.bosch.com/media/products/dokumente/bma250/bst-bma250-ds002-05.pdf 4 5 5 6 Required properties: 6 7 7 - - compatible : should be "bosch,bma180" 8 + - compatible : should be "bosch,bma180" or "bosch,bma250" 8 9 - reg : the I2C address of the sensor 9 10 10 11 Optional properties: ··· 14 13 15 14 - interrupts : interrupt mapping for GPIO IRQ, it should by configured with 16 15 flags IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING 16 + For the bma250 the first interrupt listed must be the one 17 + connected to the INT1 pin, the second (optional) interrupt 18 + listed must be the one connected to the INT2 pin. 17 19 18 20 Example: 19 21
+14 -13
Documentation/devicetree/bindings/thermal/thermal.txt
··· 55 55 the different fan speeds possible. Cooling states are referred to by 56 56 single unsigned integers, where larger numbers mean greater heat 57 57 dissipation. The precise set of cooling states associated with a device 58 - (as referred to be the cooling-min-state and cooling-max-state 58 + (as referred to by the cooling-min-level and cooling-max-level 59 59 properties) should be defined in a particular device's binding. 60 60 For more examples of cooling devices, refer to the example sections below. 61 61 62 62 Required properties: 63 - - cooling-min-state: An integer indicating the smallest 64 - Type: unsigned cooling state accepted. Typically 0. 65 - Size: one cell 66 - 67 - - cooling-max-state: An integer indicating the largest 68 - Type: unsigned cooling state accepted. 69 - Size: one cell 70 - 71 63 - #cooling-cells: Used to provide cooling device specific information 72 64 Type: unsigned while referring to it. Must be at least 2, in order 73 65 Size: one cell to specify minimum and maximum cooling state used ··· 68 76 the maximum cooling state requested in the reference. 69 77 See Cooling device maps section below for more details 70 78 on how consumers refer to cooling devices. 79 + 80 + Optional properties: 81 + - cooling-min-level: An integer indicating the smallest 82 + Type: unsigned cooling state accepted. Typically 0. 83 + Size: one cell 84 + 85 + - cooling-max-level: An integer indicating the largest 86 + Type: unsigned cooling state accepted. 87 + Size: one cell 71 88 72 89 * Trip points 73 90 ··· 226 225 396000 950000 227 226 198000 850000 228 227 >; 229 - cooling-min-state = <0>; 230 - cooling-max-state = <3>; 228 + cooling-min-level = <0>; 229 + cooling-max-level = <3>; 231 230 #cooling-cells = <2>; /* min followed by max */ 232 231 }; 233 232 ... ··· 241 240 */ 242 241 fan0: fan@0x48 { 243 242 ... 244 - cooling-min-state = <0>; 245 - cooling-max-state = <9>; 243 + cooling-min-level = <0>; 244 + cooling-max-level = <9>; 246 245 #cooling-cells = <2>; /* min followed by max */ 247 246 }; 248 247 };
+1
Documentation/devicetree/bindings/vendor-prefixes.txt
··· 203 203 skyworks Skyworks Solutions, Inc. 204 204 smsc Standard Microsystems Corporation 205 205 snps Synopsys, Inc. 206 + socionext Socionext Inc. 206 207 solidrun SolidRun 207 208 solomon Solomon Systech Limited 208 209 sony Sony Corporation
+1 -1
arch/arm64/boot/dts/mediatek/mt8173.dtsi
··· 81 81 }; 82 82 83 83 idle-states { 84 - entry-method = "arm,psci"; 84 + entry-method = "psci"; 85 85 86 86 CPU_SLEEP_0: cpu-sleep-0 { 87 87 compatible = "arm,idle-state";
+1 -1
arch/arm64/boot/dts/rockchip/rk3368.dtsi
··· 106 106 }; 107 107 108 108 idle-states { 109 - entry-method = "arm,psci"; 109 + entry-method = "psci"; 110 110 111 111 cpu_sleep: cpu-sleep-0 { 112 112 compatible = "arm,idle-state";
+14 -8
drivers/of/of_pci_irq.c
··· 38 38 */ 39 39 rc = pci_read_config_byte(pdev, PCI_INTERRUPT_PIN, &pin); 40 40 if (rc != 0) 41 - return rc; 42 - /* No pin, exit */ 41 + goto err; 42 + /* No pin, exit with no error message. */ 43 43 if (pin == 0) 44 44 return -ENODEV; 45 45 ··· 53 53 ppnode = pci_bus_to_OF_node(pdev->bus); 54 54 55 55 /* No node for host bridge ? give up */ 56 - if (ppnode == NULL) 57 - return -EINVAL; 56 + if (ppnode == NULL) { 57 + rc = -EINVAL; 58 + goto err; 59 + } 58 60 } else { 59 61 /* We found a P2P bridge, check if it has a node */ 60 62 ppnode = pci_device_to_OF_node(ppdev); ··· 88 86 out_irq->args[0] = pin; 89 87 laddr[0] = cpu_to_be32((pdev->bus->number << 16) | (pdev->devfn << 8)); 90 88 laddr[1] = laddr[2] = cpu_to_be32(0); 91 - return of_irq_parse_raw(laddr, out_irq); 89 + rc = of_irq_parse_raw(laddr, out_irq); 90 + if (rc) 91 + goto err; 92 + return 0; 93 + err: 94 + dev_err(&pdev->dev, "of_irq_parse_pci() failed with rc=%d\n", rc); 95 + return rc; 92 96 } 93 97 EXPORT_SYMBOL_GPL(of_irq_parse_pci); 94 98 ··· 113 105 int ret; 114 106 115 107 ret = of_irq_parse_pci(dev, &oirq); 116 - if (ret) { 117 - dev_err(&dev->dev, "of_irq_parse_pci() failed with rc=%d\n", ret); 108 + if (ret) 118 109 return 0; /* Proper return code 0 == NO_IRQ */ 119 - } 120 110 121 111 return irq_create_of_mapping(&oirq); 122 112 }