Raspberry Pi 3のLinuxって、32ビットということを知ったので、
早速、ソースコードを見てみました。
公式ブログのRASPBERRY PI 3 ON SALE NOW AT $35の後半にも
早速、ソースコードを見てみました。
公式ブログのRASPBERRY PI 3 ON SALE NOW AT $35の後半にも
引用 At launch, we are using the same 32-bit Raspbian userland that we use on other Raspberry Pi devices; over the next few months we will investigate whether there is value in moving to 64-bit mode.とあります。
linux/arch/arm64/boot/dtsにはbroadcomがありません。
linux/arch/arm/boot/dtsにありました。
bcm2710-rpi-3-b.dts。bcm2710.dtsi見たら、
linux/arch/arm/boot/dtsにありました。
bcm2710-rpi-3-b.dts。bcm2710.dtsi見たら、
cpus: cpus { #address-cells = <1>; #size-cells = <0>; v7_cpu0: cpu@0 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x000>; clock-frequency = <800000000>; }; v7_cpu1: cpu@1 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x001>; clock-frequency = <800000000>; }; v7_cpu2: cpu@2 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x002>; clock-frequency = <800000000>; }; v7_cpu3: cpu@3 { device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x003>; clock-frequency = <800000000>; }; };のように、CPUがCortex-A7になっています。
Raspberry PiのブートシーケンスをGoogle君に聞いてみたら、
How does Raspberry Pi boot?に
How does Raspberry Pi boot?に
1)、電源をオンした時は、ARMコアはオフで、GPUコアがオン。 2)、GPUコアがSoC内部ROMのFSBLを実行し、SDカード内のSSBL(bootcode.bin)を L2キャッシュにロードし、実行。 3)、bootcode.binがSDRAMをイネーブルにし、TSBL(loader.bin)をSDカードから SDRAMにロードし、実行。 4)、loader.binがGPUファームウェア(start.elf)をロードし、 5)、start.elfがconfig.txt, cmdline.txt, kernel.imgをロード。 loader.binは必要ないかも。にように、GPUコアがブートローダーを実行するんですね。