BIOS reference

From Milkymist Wiki

Jump to: navigation, search

[edit] History

The Milkymist BIOS is based on FreeMAC, originally written for running on the ARM embedded processors of Prism54 Wi-Fi cards. It has undergone major modifications since then.

[edit] Boot process

The BIOS is the first program to be executed by the Milkymist SoC once the FPGA is configured. It is stored into off-chip flash and executed in place. Details of the boot process can be found in http://www.milkymist.org/socdoc/bios.pdf.

[edit] Commands

Output of the "help" command
Output of the "mw & rd" commands


Bios allow you runs some few commands but very useful if you know how use it:

 mr  :  read address space
 mr <address> [length]
 
 mw  :  write address space
 mw <address> <value> [count]

Remember when writing values ALL of then are 32 bits, or will be shirked to that size, so if you write:

mw 0xb0000800 0x03  : that’s actually 0x00000003 written in addresses  0xb0000800, 801, 802, 803 
mw 0xb0000801 0x03  : that’s actually 0x00000003 written in addresses  0xb0000800, 801, 802, 803 
mw 0xb0000800 0x11223344 : that’s actually 0x11223344 written in addresses  0xb0000800, 801, 802, 803 
mr 0xb0000800 4 : will return 11 22 33 44         ."3D
mr 0xb0000800 5 : will return 11 22 33 44 00      ."3D.

[count] assumes same length


GPIO Examples for the avnet board port.

mr 0x80001000 8

Read the status of push buttons (try touching some and read at the same time)

mw 0x80001004 1

Put LED 2 on

mw 0x80001004 2

Put LED 3 on

mw 0x80001004 2

Put LEDs off

mw 0x80001004 0
Personal tools