// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 
 | 
/* 
 | 
 * Copyright (C) 2016 Marvell Technology Group Ltd. 
 | 
 * 
 | 
 * Device Tree file for the Armada 8040 SoC, made of an AP806 Quad and 
 | 
 * two CP110. 
 | 
 */ 
 | 
  
 | 
#include "armada-ap806-quad.dtsi" 
 | 
#include "armada-80x0.dtsi" 
 | 
  
 | 
/ { 
 | 
    model = "Marvell Armada 8040"; 
 | 
    compatible = "marvell,armada8040", "marvell,armada-ap806-quad", 
 | 
             "marvell,armada-ap806"; 
 | 
}; 
 | 
  
 | 
&cp0_pcie0 { 
 | 
    iommu-map = 
 | 
        <0x0   &smmu 0x480 0x20>, 
 | 
        <0x100 &smmu 0x4a0 0x20>, 
 | 
        <0x200 &smmu 0x4c0 0x20>; 
 | 
    iommu-map-mask = <0x031f>; 
 | 
}; 
 | 
  
 | 
/* The RTC requires external oscillator. But on Aramda 80x0, the RTC clock 
 | 
 * in CP master is not connected (by package) to the oscillator. So 
 | 
 * disable it. However, the RTC clock in CP slave is connected to the 
 | 
 * oscillator so this one is let enabled. 
 | 
 */ 
 | 
&cp0_rtc { 
 | 
    status = "disabled"; 
 | 
}; 
 | 
  
 | 
&cp0_sata0 { 
 | 
    iommus = <&smmu 0x444>; 
 | 
}; 
 | 
  
 | 
&cp0_sdhci0 { 
 | 
    iommus = <&smmu 0x445>; 
 | 
}; 
 | 
  
 | 
&cp0_usb3_0 { 
 | 
    iommus = <&smmu 0x440>; 
 | 
}; 
 | 
  
 | 
&cp0_usb3_1 { 
 | 
    iommus = <&smmu 0x441>; 
 | 
}; 
 | 
  
 | 
&cp1_sata0 { 
 | 
    iommus = <&smmu 0x454>; 
 | 
}; 
 | 
  
 | 
&cp1_usb3_0 { 
 | 
    iommus = <&smmu 0x450>; 
 | 
}; 
 | 
  
 | 
&cp1_usb3_1 { 
 | 
    iommus = <&smmu 0x451>; 
 | 
}; 
 |