| // SPDX-License-Identifier: GPL-2.0 |
| #include "bcm283x.dtsi" |
| #include "bcm2835-common.dtsi" |
| |
| / { |
| compatible = "brcm,bcm2835"; |
| |
| cpus { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| cpu@0 { |
| device_type = "cpu"; |
| compatible = "arm,arm1176jzf-s"; |
| reg = <0x0>; |
| /* Source for d/i-cache-line-size and d/i-cache-sets |
| * https://developer.arm.com/documentation/ddi0301 |
| * /h/level-one-memory-system/cache-organization?lang=en |
| * |
| * Source for d/i-cache-size |
| * https://forums.raspberrypi.com/viewtopic.php?t=98428 |
| * |
| * NOTE: The BCM2835 has a L2 cache but it is dedicated to the GPU |
| * It can be shared with the CPU through fw settings, |
| * but this is not recommended. |
| */ |
| d-cache-size = <0x4000>; |
| d-cache-line-size = <16>; |
| d-cache-sets = <256>; // 16KiB(size)/16(line-size)=1024ways/4-way set |
| i-cache-size = <0x4000>; |
| i-cache-line-size = <16>; |
| i-cache-sets = <256>; // 16KiB(size)/16(line-size)=1024ways/4-way set |
| }; |
| }; |
| |
| soc { |
| ranges = <0x7e000000 0x20000000 0x02000000>; |
| dma-ranges = <0x40000000 0x00000000 0x20000000>; |
| }; |
| |
| arm-pmu { |
| compatible = "arm,arm1176-pmu"; |
| }; |
| }; |
| |
| &cpu_thermal { |
| coefficients = <(-538) 407000>; |
| }; |
| |
| /* enable thermal sensor with the correct compatible property set */ |
| &thermal { |
| compatible = "brcm,bcm2835-thermal"; |
| status = "okay"; |
| }; |