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.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

Pull DeviceTree fixes from Rob Herring:

- Fix irq msi-map calculation for nonzero rid-base.

- Binding doc updates for GICv3, fsl-imx-uart, and S3C RTC.

* tag 'devicetree-fixes-for-4.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
rtc: s3c: Document required clocks in the DT binding
serial: fsl-imx-uart: Fix typo in fsl,dte-mode description
dt-bindings: arm, gic-v3: require that reserved cells are always 0
of/irq: Fix msi-map calculation for nonzero rid-base

+17 -5
+2 -3
Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.txt
··· 24 24 1 = edge triggered 25 25 4 = level triggered 26 26 27 - Cells 4 and beyond are reserved for future use. When the 1st cell 28 - has a value of 0 or 1, cells 4 and beyond act as padding, and may be 29 - ignored. It is recommended that padding cells have a value of 0. 27 + Cells 4 and beyond are reserved for future use and must have a value 28 + of 0 if present. 30 29 31 30 - reg : Specifies base physical address(s) and size of the GIC 32 31 registers, in the following order:
+6
Documentation/devicetree/bindings/rtc/s3c-rtc.txt
··· 14 14 interrupt number is the rtc alarm interrupt and second interrupt number 15 15 is the rtc tick interrupt. The number of cells representing a interrupt 16 16 depends on the parent interrupt controller. 17 + - clocks: Must contain a list of phandle and clock specifier for the rtc 18 + and source clocks. 19 + - clock-names: Must contain "rtc" and "rtc_src" entries sorted in the 20 + same order as the clocks property. 17 21 18 22 Example: 19 23 ··· 25 21 compatible = "samsung,s3c6410-rtc"; 26 22 reg = <0x10070000 0x100>; 27 23 interrupts = <44 0 45 0>; 24 + clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>; 25 + clock-names = "rtc", "rtc_src"; 28 26 };
+1 -1
Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
··· 9 9 - fsl,uart-has-rtscts : Indicate the uart has rts and cts 10 10 - fsl,irda-mode : Indicate the uart supports irda mode 11 11 - fsl,dte-mode : Indicate the uart works in DTE mode. The uart works 12 - is DCE mode by default. 12 + in DCE mode by default. 13 13 14 14 Note: Each uart controller should have an alias correctly numbered 15 15 in "aliases" node.
+8 -1
drivers/of/irq.c
··· 635 635 msi_base = be32_to_cpup(msi_map + 2); 636 636 rid_len = be32_to_cpup(msi_map + 3); 637 637 638 + if (rid_base & ~map_mask) { 639 + dev_err(parent_dev, 640 + "Invalid msi-map translation - msi-map-mask (0x%x) ignores rid-base (0x%x)\n", 641 + map_mask, rid_base); 642 + return rid_out; 643 + } 644 + 638 645 msi_controller_node = of_find_node_by_phandle(phandle); 639 646 640 647 matched = (masked_rid >= rid_base && ··· 661 654 if (!matched) 662 655 return rid_out; 663 656 664 - rid_out = masked_rid + msi_base; 657 + rid_out = masked_rid - rid_base + msi_base; 665 658 dev_dbg(dev, 666 659 "msi-map at: %s, using mask %08x, rid-base: %08x, msi-base: %08x, length: %08x, rid: %08x -> %08x\n", 667 660 dev_name(parent_dev), map_mask, rid_base, msi_base,