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

Merge tag 'juno-updates-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into next/dt64

ARMv8 Vexpress/Juno DT updates for v4.13

1. Adds support for Coresight CPU debug MMIO interface on all Juno variants.

2. Enables support for few SMMUs on Juno which were previously disabled
waiting for IOMMU-backed DMA API support to be stabilised.

* tag 'juno-updates-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
arm64: dts: juno: enable some SMMUs
arm64: dts: juno: add coresight CPU debug nodes

Signed-off-by: Olof Johansson <olof@lixom.net>

+126 -4
+54 -4
arch/arm64/boot/dts/arm/juno-base.dtsi
··· 53 53 #global-interrupts = <1>; 54 54 dma-coherent; 55 55 power-domains = <&scpi_devpd 0>; 56 - status = "disabled"; 57 56 }; 58 57 59 58 gic: interrupt-controller@2c010000 { ··· 201 202 }; 202 203 }; 203 204 205 + cpu_debug0: cpu_debug@22010000 { 206 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 207 + reg = <0x0 0x22010000 0x0 0x1000>; 208 + 209 + clocks = <&soc_smc50mhz>; 210 + clock-names = "apb_pclk"; 211 + power-domains = <&scpi_devpd 0>; 212 + }; 213 + 204 214 etm0: etm@22040000 { 205 215 compatible = "arm,coresight-etm4x", "arm,primecell"; 206 216 reg = <0 0x22040000 0 0x1000>; ··· 260 252 }; 261 253 }; 262 254 255 + cpu_debug1: cpu_debug@22110000 { 256 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 257 + reg = <0x0 0x22110000 0x0 0x1000>; 258 + 259 + clocks = <&soc_smc50mhz>; 260 + clock-names = "apb_pclk"; 261 + power-domains = <&scpi_devpd 0>; 262 + }; 263 + 263 264 etm1: etm@22140000 { 264 265 compatible = "arm,coresight-etm4x", "arm,primecell"; 265 266 reg = <0 0x22140000 0 0x1000>; ··· 281 264 remote-endpoint = <&cluster0_funnel_in_port1>; 282 265 }; 283 266 }; 267 + }; 268 + 269 + cpu_debug2: cpu_debug@23010000 { 270 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 271 + reg = <0x0 0x23010000 0x0 0x1000>; 272 + 273 + clocks = <&soc_smc50mhz>; 274 + clock-names = "apb_pclk"; 275 + power-domains = <&scpi_devpd 0>; 284 276 }; 285 277 286 278 etm2: etm@23040000 { ··· 356 330 }; 357 331 }; 358 332 333 + cpu_debug3: cpu_debug@23110000 { 334 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 335 + reg = <0x0 0x23110000 0x0 0x1000>; 336 + 337 + clocks = <&soc_smc50mhz>; 338 + clock-names = "apb_pclk"; 339 + power-domains = <&scpi_devpd 0>; 340 + }; 341 + 359 342 etm3: etm@23140000 { 360 343 compatible = "arm,coresight-etm4x", "arm,primecell"; 361 344 reg = <0 0x23140000 0 0x1000>; ··· 379 344 }; 380 345 }; 381 346 347 + cpu_debug4: cpu_debug@23210000 { 348 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 349 + reg = <0x0 0x23210000 0x0 0x1000>; 350 + 351 + clocks = <&soc_smc50mhz>; 352 + clock-names = "apb_pclk"; 353 + power-domains = <&scpi_devpd 0>; 354 + }; 355 + 382 356 etm4: etm@23240000 { 383 357 compatible = "arm,coresight-etm4x", "arm,primecell"; 384 358 reg = <0 0x23240000 0 0x1000>; ··· 400 356 remote-endpoint = <&cluster1_funnel_in_port2>; 401 357 }; 402 358 }; 359 + }; 360 + 361 + cpu_debug5: cpu_debug@23310000 { 362 + compatible = "arm,coresight-cpu-debug", "arm,primecell"; 363 + reg = <0x0 0x23310000 0x0 0x1000>; 364 + 365 + clocks = <&soc_smc50mhz>; 366 + clock-names = "apb_pclk"; 367 + power-domains = <&scpi_devpd 0>; 403 368 }; 404 369 405 370 etm5: etm@23340000 { ··· 599 546 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 600 547 #iommu-cells = <1>; 601 548 #global-interrupts = <1>; 602 - status = "disabled"; 603 549 }; 604 550 605 551 smmu_hdlcd0: iommu@7fb20000 { ··· 608 556 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 609 557 #iommu-cells = <1>; 610 558 #global-interrupts = <1>; 611 - status = "disabled"; 612 559 }; 613 560 614 561 smmu_usb: iommu@7fb30000 { ··· 618 567 #iommu-cells = <1>; 619 568 #global-interrupts = <1>; 620 569 dma-coherent; 621 - status = "disabled"; 622 570 }; 623 571 624 572 dma@7ff00000 {
+24
arch/arm64/boot/dts/arm/juno-r1.dts
··· 281 281 &stm_out_port { 282 282 remote-endpoint = <&csys1_funnel_in_port0>; 283 283 }; 284 + 285 + &cpu_debug0 { 286 + cpu = <&A57_0>; 287 + }; 288 + 289 + &cpu_debug1 { 290 + cpu = <&A57_1>; 291 + }; 292 + 293 + &cpu_debug2 { 294 + cpu = <&A53_0>; 295 + }; 296 + 297 + &cpu_debug3 { 298 + cpu = <&A53_1>; 299 + }; 300 + 301 + &cpu_debug4 { 302 + cpu = <&A53_2>; 303 + }; 304 + 305 + &cpu_debug5 { 306 + cpu = <&A53_3>; 307 + };
+24
arch/arm64/boot/dts/arm/juno-r2.dts
··· 281 281 &stm_out_port { 282 282 remote-endpoint = <&csys1_funnel_in_port0>; 283 283 }; 284 + 285 + &cpu_debug0 { 286 + cpu = <&A72_0>; 287 + }; 288 + 289 + &cpu_debug1 { 290 + cpu = <&A72_1>; 291 + }; 292 + 293 + &cpu_debug2 { 294 + cpu = <&A53_0>; 295 + }; 296 + 297 + &cpu_debug3 { 298 + cpu = <&A53_1>; 299 + }; 300 + 301 + &cpu_debug4 { 302 + cpu = <&A53_2>; 303 + }; 304 + 305 + &cpu_debug5 { 306 + cpu = <&A53_3>; 307 + };
+24
arch/arm64/boot/dts/arm/juno.dts
··· 268 268 }; 269 269 }; 270 270 }; 271 + 272 + &cpu_debug0 { 273 + cpu = <&A57_0>; 274 + }; 275 + 276 + &cpu_debug1 { 277 + cpu = <&A57_1>; 278 + }; 279 + 280 + &cpu_debug2 { 281 + cpu = <&A53_0>; 282 + }; 283 + 284 + &cpu_debug3 { 285 + cpu = <&A53_1>; 286 + }; 287 + 288 + &cpu_debug4 { 289 + cpu = <&A53_2>; 290 + }; 291 + 292 + &cpu_debug5 { 293 + cpu = <&A53_3>; 294 + };