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

Merge tag 'socfpga_dts_updates_for_v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into arm/late

SoCFPGA dts updates for v5.19
- dtschema fix SPI NOR node
- correct dt-bindings doc for Altera gpio driver
- add support for n6000 Agilex platform and dt-bindings documentation

* tag 'socfpga_dts_updates_for_v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
arm64: dts: intel: add device tree for n6000
dt-bindings: intel: add binding for Intel n6000
dt-bindings: soc: add bindings for Intel HPS Copy Engine
dt-bindings: gpio: altera: correct interrupt-cells
ARM: dts: socfpga: align SPI NOR node name with dtschema

Link: https://lore.kernel.org/r/20220519232317.16079-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+128 -8
+1
Documentation/devicetree/bindings/arm/intel,socfpga.yaml
··· 18 18 items: 19 19 - enum: 20 20 - intel,n5x-socdk 21 + - intel,socfpga-agilex-n6000 21 22 - intel,socfpga-agilex-socdk 22 23 - const: intel,socfpga-agilex 23 24
+3 -2
Documentation/devicetree/bindings/gpio/gpio-altera.txt
··· 9 9 - The second cell is reserved and is currently unused. 10 10 - gpio-controller : Marks the device node as a GPIO controller. 11 11 - interrupt-controller: Mark the device node as an interrupt controller 12 - - #interrupt-cells : Should be 1. The interrupt type is fixed in the hardware. 12 + - #interrupt-cells : Should be 2. The interrupt type is fixed in the hardware. 13 13 - The first cell is the GPIO offset number within the GPIO controller. 14 + - The second cell is the interrupt trigger type and level flags. 14 15 - interrupts: Specify the interrupt. 15 16 - altr,interrupt-type: Specifies the interrupt trigger type the GPIO 16 17 hardware is synthesized. This field is required if the Altera GPIO controller ··· 39 38 altr,interrupt-type = <IRQ_TYPE_EDGE_RISING>; 40 39 #gpio-cells = <2>; 41 40 gpio-controller; 42 - #interrupt-cells = <1>; 41 + #interrupt-cells = <2>; 43 42 interrupt-controller; 44 43 };
+51
Documentation/devicetree/bindings/soc/intel/intel,hps-copy-engine.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 + # Copyright (C) 2022, Intel Corporation 3 + %YAML 1.2 4 + --- 5 + $id: "http://devicetree.org/schemas/soc/intel/intel,hps-copy-engine.yaml#" 6 + $schema: "http://devicetree.org/meta-schemas/core.yaml#" 7 + 8 + title: Intel HPS Copy Engine 9 + 10 + maintainers: 11 + - Matthew Gerlach <matthew.gerlach@linux.intel.com> 12 + 13 + description: | 14 + The Intel Hard Processor System (HPS) Copy Engine is an IP block used to copy 15 + a bootable image from host memory to HPS DDR. Additionally, there is a 16 + register the HPS can use to indicate the state of booting the copied image as 17 + well as a keep-a-live indication to the host. 18 + 19 + properties: 20 + compatible: 21 + const: intel,hps-copy-engine 22 + 23 + '#dma-cells': 24 + const: 1 25 + 26 + reg: 27 + maxItems: 1 28 + 29 + required: 30 + - compatible 31 + - reg 32 + 33 + additionalProperties: false 34 + 35 + examples: 36 + - | 37 + bus@80000000 { 38 + compatible = "simple-bus"; 39 + reg = <0x80000000 0x60000000>, 40 + <0xf9000000 0x00100000>; 41 + reg-names = "axi_h2f", "axi_h2f_lw"; 42 + #address-cells = <2>; 43 + #size-cells = <1>; 44 + ranges = <0x00000000 0x00000000 0xf9000000 0x00001000>; 45 + 46 + dma-controller@0 { 47 + compatible = "intel,hps-copy-engine"; 48 + reg = <0x00000000 0x00000000 0x00001000>; 49 + #dma-cells = <1>; 50 + }; 51 + };
+1 -1
arch/arm/boot/dts/socfpga_arria10_socdk_qspi.dts
··· 9 9 &qspi { 10 10 status = "okay"; 11 11 12 - flash0: n25q00@0 { 12 + flash0: flash@0 { 13 13 #address-cells = <1>; 14 14 #size-cells = <1>; 15 15 compatible = "micron,mt25qu02g", "jedec,spi-nor";
+1 -1
arch/arm/boot/dts/socfpga_cyclone5_socdk.dts
··· 121 121 &qspi { 122 122 status = "okay"; 123 123 124 - flash0: n25q00@0 { 124 + flash0: flash@0 { 125 125 #address-cells = <1>; 126 126 #size-cells = <1>; 127 127 compatible = "micron,mt25qu02g", "jedec,spi-nor";
+1 -1
arch/arm/boot/dts/socfpga_cyclone5_sodia.dts
··· 113 113 &qspi { 114 114 status = "okay"; 115 115 116 - flash0: n25q512a@0 { 116 + flash0: flash@0 { 117 117 #address-cells = <1>; 118 118 #size-cells = <1>; 119 119 compatible = "micron,n25q512a", "jedec,spi-nor";
+2 -2
arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts
··· 221 221 &qspi { 222 222 status = "okay"; 223 223 224 - n25q128@0 { 224 + flash@0 { 225 225 #address-cells = <1>; 226 226 #size-cells = <1>; 227 227 compatible = "micron,n25q128", "jedec,spi-nor"; ··· 238 238 cdns,tslch-ns = <4>; 239 239 }; 240 240 241 - n25q00@1 { 241 + flash@1 { 242 242 #address-cells = <1>; 243 243 #size-cells = <1>; 244 244 compatible = "micron,mt25qu02g", "jedec,spi-nor";
+2 -1
arch/arm64/boot/dts/intel/Makefile
··· 1 1 # SPDX-License-Identifier: GPL-2.0-only 2 - dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_socdk.dtb \ 2 + dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_n6000.dtb \ 3 + socfpga_agilex_socdk.dtb \ 3 4 socfpga_agilex_socdk_nand.dtb \ 4 5 socfpga_n5x_socdk.dtb 5 6 dtb-$(CONFIG_ARCH_KEEMBAY) += keembay-evm.dtb
+66
arch/arm64/boot/dts/intel/socfpga_agilex_n6000.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0 2 + /* 3 + * Copyright (C) 2021-2022, Intel Corporation 4 + */ 5 + #include "socfpga_agilex.dtsi" 6 + 7 + / { 8 + model = "SoCFPGA Agilex n6000"; 9 + compatible = "intel,socfpga-agilex-n6000", "intel,socfpga-agilex"; 10 + 11 + aliases { 12 + serial0 = &uart1; 13 + serial1 = &uart0; 14 + ethernet0 = &gmac0; 15 + ethernet1 = &gmac1; 16 + ethernet2 = &gmac2; 17 + }; 18 + 19 + chosen { 20 + stdout-path = "serial0:115200n8"; 21 + }; 22 + 23 + memory@0 { 24 + device_type = "memory"; 25 + /* We expect the bootloader to fill in the reg */ 26 + reg = <0 0 0 0>; 27 + }; 28 + 29 + soc { 30 + bus@80000000 { 31 + compatible = "simple-bus"; 32 + reg = <0x80000000 0x60000000>, 33 + <0xf9000000 0x00100000>; 34 + reg-names = "axi_h2f", "axi_h2f_lw"; 35 + #address-cells = <2>; 36 + #size-cells = <1>; 37 + ranges = <0x00000000 0x00000000 0xf9000000 0x00001000>; 38 + 39 + dma-controller@0 { 40 + compatible = "intel,hps-copy-engine"; 41 + reg = <0x00000000 0x00000000 0x00001000>; 42 + #dma-cells = <1>; 43 + }; 44 + }; 45 + }; 46 + }; 47 + 48 + &osc1 { 49 + clock-frequency = <25000000>; 50 + }; 51 + 52 + &uart0 { 53 + status = "okay"; 54 + }; 55 + 56 + &uart1 { 57 + status = "okay"; 58 + }; 59 + 60 + &watchdog0 { 61 + status = "okay"; 62 + }; 63 + 64 + &fpga_mgr { 65 + status = "disabled"; 66 + };