The Sam460ex Haiku port

Complications for this port comes from the fact that the CPU used was designed for embedded devices, and has a much simpler MMU than the one on desktop machines. As a result, completely different memory management code needs to be written.

U-Boot commands

no-fdt no-initrd

seems the U-Boot input buffer is quite limited, can’t paste much more on single line in minicom

setenv ipaddr 192.168.4.100; tftpboot 0x4000000 192.168.4.2:haiku_loader_linux.ub; bootm 0x4000000

with FDT and tgz as initrd

setenv ipaddr 192.168.4.100 tftpboot 0x4000000 192.168.4.2:haiku_loader_linux.ub tftpboot 0x8000000 192.168.4.2:haiku_initrd.ub tftpboot 0xc000000 192.168.4.2:sam460ex.dtb fdt addr 0xc000000 fdt header bootm 0x4000000 0x8000000 0xc000000 plop

for environment

setenv booth1 ‘setenv ipaddr 192.168.4.100; tftpboot 0x4000000 192.168.4.2:haiku_loader_linux.ub’ setenv booth2 ‘tftpboot 0x8000000 192.168.4.2:haiku_initrd.ub’ setenv booth3 ‘tftpboot 0xc000000 192.168.4.2:sam460ex.dtb’ setenv booth4 ‘bootm 0x4000000 0x8000000 0xc000000 plop’ setenv booth ‘run booth1; run booth2; run booth3; run booth4’ saveenv run booth

TODOs

  • U-Boot API?

  • move Partenope hack to proper official U-Boot API?

  • reserved regs?

    BoardSetup +=:? TARGET_BOOT_CCFLAGS += -ffixed-r2 -ffixed-r14 -ffixed-r29 ; TARGET_BOOT_C++FLAGS += -ffixed-r2 -ffixed-r14 -ffixed-r29 ;

  • kdebug/disasm/ppc http://code.google.com/p/ppcd/

Other ports

PowerPC information

Classic

Book-E

ePAPR

amcc 4x0

Freescale 440

This version has a different mmu!!

FDT

Sam440 dts

OpenFirmware framebuffer

(not really usable from U-Boot (yet?))