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

ARM: dts: ipq4019: Add a few peripheral nodes

Now with the driver updates for some peripherals being there,
add i2c, spi, pcie, bam, qpic-nand, scm nodes to enhance the available
peripheral support.

Reviewed-by: Abhishek Sahu <absahu@codeaurora.org>
Signed-off-by: Sricharan R <sricharan@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>

authored by

Sricharan R and committed by
Andy Gross
18751940 c696a020

+146 -12
+1 -1
arch/arm/boot/dts/qcom-ipq4019-ap.dk01.1.dtsi
··· 69 69 status = "ok"; 70 70 }; 71 71 72 - spi_0: spi@78b5000 { 72 + spi@78b5000 { 73 73 pinctrl-0 = <&spi_0_pins>; 74 74 pinctrl-names = "default"; 75 75 status = "ok";
+145 -11
arch/arm/boot/dts/qcom-ipq4019.dtsi
··· 40 40 }; 41 41 42 42 aliases { 43 - spi0 = &spi_0; 44 - i2c0 = &i2c_0; 43 + spi0 = &blsp1_spi1; 44 + spi1 = &blsp1_spi2; 45 + i2c0 = &blsp1_i2c3; 46 + i2c1 = &blsp1_i2c4; 45 47 }; 46 48 47 49 cpus { ··· 122 120 }; 123 121 }; 124 122 123 + firmware { 124 + scm { 125 + compatible = "qcom,scm-ipq4019"; 126 + }; 127 + }; 128 + 125 129 timer { 126 130 compatible = "arm,armv7-timer"; 127 131 interrupts = <1 2 0xf08>, ··· 173 165 #gpio-cells = <2>; 174 166 interrupt-controller; 175 167 #interrupt-cells = <2>; 176 - interrupts = <0 208 0>; 168 + interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 177 169 }; 178 170 179 171 blsp_dma: dma@7884000 { 180 172 compatible = "qcom,bam-v1.7.0"; 181 173 reg = <0x07884000 0x23000>; 182 - interrupts = <GIC_SPI 238 IRQ_TYPE_NONE>; 174 + interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 183 175 clocks = <&gcc GCC_BLSP1_AHB_CLK>; 184 176 clock-names = "bam_clk"; 185 177 #dma-cells = <1>; ··· 187 179 status = "disabled"; 188 180 }; 189 181 190 - spi_0: spi@78b5000 { 182 + blsp1_spi1: spi@78b5000 { /* BLSP1 QUP1 */ 191 183 compatible = "qcom,spi-qup-v2.2.1"; 192 184 reg = <0x78b5000 0x600>; 193 185 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; ··· 196 188 clock-names = "core", "iface"; 197 189 #address-cells = <1>; 198 190 #size-cells = <0>; 191 + dmas = <&blsp_dma 5>, <&blsp_dma 4>; 192 + dma-names = "rx", "tx"; 199 193 status = "disabled"; 200 194 }; 201 195 202 - i2c_0: i2c@78b7000 { 196 + blsp1_spi2: spi@78b6000 { /* BLSP1 QUP2 */ 197 + compatible = "qcom,spi-qup-v2.2.1"; 198 + reg = <0x78b6000 0x600>; 199 + interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 200 + clocks = <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>, 201 + <&gcc GCC_BLSP1_AHB_CLK>; 202 + clock-names = "core", "iface"; 203 + #address-cells = <1>; 204 + #size-cells = <0>; 205 + dmas = <&blsp_dma 7>, <&blsp_dma 6>; 206 + dma-names = "rx", "tx"; 207 + status = "disabled"; 208 + }; 209 + 210 + blsp1_i2c3: i2c@78b7000 { /* BLSP1 QUP3 */ 203 211 compatible = "qcom,i2c-qup-v2.2.1"; 204 212 reg = <0x78b7000 0x600>; 205 213 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; ··· 224 200 clock-names = "iface", "core"; 225 201 #address-cells = <1>; 226 202 #size-cells = <0>; 203 + dmas = <&blsp_dma 9>, <&blsp_dma 8>; 204 + dma-names = "rx", "tx"; 227 205 status = "disabled"; 228 206 }; 229 207 208 + blsp1_i2c4: i2c@78b8000 { /* BLSP1 QUP4 */ 209 + compatible = "qcom,i2c-qup-v2.2.1"; 210 + reg = <0x78b8000 0x600>; 211 + interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 212 + clocks = <&gcc GCC_BLSP1_AHB_CLK>, 213 + <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>; 214 + clock-names = "iface", "core"; 215 + #address-cells = <1>; 216 + #size-cells = <0>; 217 + dmas = <&blsp_dma 11>, <&blsp_dma 10>; 218 + dma-names = "rx", "tx"; 219 + status = "disabled"; 220 + }; 230 221 231 222 cryptobam: dma@8e04000 { 232 223 compatible = "qcom,bam-v1.7.0"; 233 224 reg = <0x08e04000 0x20000>; 234 - interrupts = <GIC_SPI 207 0>; 225 + interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>; 235 226 clocks = <&gcc GCC_CRYPTO_AHB_CLK>; 236 227 clock-names = "bam_clk"; 237 228 #dma-cells = <1>; ··· 314 275 blsp1_uart1: serial@78af000 { 315 276 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 316 277 reg = <0x78af000 0x200>; 317 - interrupts = <0 107 0>; 278 + interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 318 279 status = "disabled"; 319 280 clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, 320 281 <&gcc GCC_BLSP1_AHB_CLK>; ··· 326 287 serial@78b0000 { 327 288 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 328 289 reg = <0x78b0000 0x200>; 329 - interrupts = <0 108 0>; 290 + interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 330 291 status = "disabled"; 331 292 clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, 332 293 <&gcc GCC_BLSP1_AHB_CLK>; ··· 346 307 restart@4ab000 { 347 308 compatible = "qcom,pshold"; 348 309 reg = <0x4ab000 0x4>; 310 + }; 311 + 312 + pcie0: pci@40000000 { 313 + compatible = "qcom,pcie-ipq4019", "snps,dw-pcie"; 314 + reg = <0x40000000 0xf1d 315 + 0x40000f20 0xa8 316 + 0x80000 0x2000 317 + 0x40100000 0x1000>; 318 + reg-names = "dbi", "elbi", "parf", "config"; 319 + device_type = "pci"; 320 + linux,pci-domain = <0>; 321 + bus-range = <0x00 0xff>; 322 + num-lanes = <1>; 323 + #address-cells = <3>; 324 + #size-cells = <2>; 325 + 326 + ranges = <0x81000000 0 0x40200000 0x40200000 0 0x00100000 327 + 0x82000000 0 0x48000000 0x48000000 0 0x10000000>; 328 + 329 + interrupts = <GIC_SPI 141 IRQ_TYPE_EDGE_RISING>; 330 + interrupt-names = "msi"; 331 + #interrupt-cells = <1>; 332 + interrupt-map-mask = <0 0 0 0x7>; 333 + interrupt-map = <0 0 0 1 &intc 0 142 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 334 + <0 0 0 2 &intc 0 143 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 335 + <0 0 0 3 &intc 0 144 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 336 + <0 0 0 4 &intc 0 145 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 337 + clocks = <&gcc GCC_PCIE_AHB_CLK>, 338 + <&gcc GCC_PCIE_AXI_M_CLK>, 339 + <&gcc GCC_PCIE_AXI_S_CLK>; 340 + clock-names = "aux", 341 + "master_bus", 342 + "slave_bus"; 343 + 344 + resets = <&gcc PCIE_AXI_M_ARES>, 345 + <&gcc PCIE_AXI_S_ARES>, 346 + <&gcc PCIE_PIPE_ARES>, 347 + <&gcc PCIE_AXI_M_VMIDMT_ARES>, 348 + <&gcc PCIE_AXI_S_XPU_ARES>, 349 + <&gcc PCIE_PARF_XPU_ARES>, 350 + <&gcc PCIE_PHY_ARES>, 351 + <&gcc PCIE_AXI_M_STICKY_ARES>, 352 + <&gcc PCIE_PIPE_STICKY_ARES>, 353 + <&gcc PCIE_PWR_ARES>, 354 + <&gcc PCIE_AHB_ARES>, 355 + <&gcc PCIE_PHY_AHB_ARES>; 356 + reset-names = "axi_m", 357 + "axi_s", 358 + "pipe", 359 + "axi_m_vmid", 360 + "axi_s_xpu", 361 + "parf", 362 + "phy", 363 + "axi_m_sticky", 364 + "pipe_sticky", 365 + "pwr", 366 + "ahb", 367 + "phy_ahb"; 368 + 369 + status = "disabled"; 370 + }; 371 + 372 + qpic_bam: dma@7984000 { 373 + compatible = "qcom,bam-v1.7.0"; 374 + reg = <0x7984000 0x1a000>; 375 + interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 376 + clocks = <&gcc GCC_QPIC_CLK>; 377 + clock-names = "bam_clk"; 378 + #dma-cells = <1>; 379 + qcom,ee = <0>; 380 + status = "disabled"; 381 + }; 382 + 383 + nand: qpic-nand@79b0000 { 384 + compatible = "qcom,ipq4019-nand"; 385 + reg = <0x79b0000 0x1000>; 386 + #address-cells = <1>; 387 + #size-cells = <0>; 388 + clocks = <&gcc GCC_QPIC_CLK>, 389 + <&gcc GCC_QPIC_AHB_CLK>; 390 + clock-names = "core", "aon"; 391 + 392 + dmas = <&qpic_bam 0>, 393 + <&qpic_bam 1>, 394 + <&qpic_bam 2>; 395 + dma-names = "tx", "rx", "cmd"; 396 + status = "disabled"; 397 + 398 + nand@0 { 399 + reg = <0>; 400 + 401 + nand-ecc-strength = <4>; 402 + nand-ecc-step-size = <512>; 403 + nand-bus-width = <8>; 404 + }; 349 405 }; 350 406 351 407 wifi0: wifi@a000000 { ··· 476 342 <GIC_SPI 45 IRQ_TYPE_EDGE_RISING>, 477 343 <GIC_SPI 46 IRQ_TYPE_EDGE_RISING>, 478 344 <GIC_SPI 47 IRQ_TYPE_EDGE_RISING>, 479 - <GIC_SPI 168 IRQ_TYPE_NONE>; 345 + <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>; 480 346 interrupt-names = "msi0", "msi1", "msi2", "msi3", 481 347 "msi4", "msi5", "msi6", "msi7", 482 348 "msi8", "msi9", "msi10", "msi11", ··· 518 384 <GIC_SPI 61 IRQ_TYPE_EDGE_RISING>, 519 385 <GIC_SPI 62 IRQ_TYPE_EDGE_RISING>, 520 386 <GIC_SPI 63 IRQ_TYPE_EDGE_RISING>, 521 - <GIC_SPI 169 IRQ_TYPE_NONE>; 387 + <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>; 522 388 interrupt-names = "msi0", "msi1", "msi2", "msi3", 523 389 "msi4", "msi5", "msi6", "msi7", 524 390 "msi8", "msi9", "msi10", "msi11",