User:Pbansal

From REU@MU
Revision as of 23:40, 14 June 2017 by Pbansal (Talk | contribs)

Jump to: navigation, search

Priya.jpg


Marquette Senior

My research project focuses on porting Embedded Xinu into our new, multi-core Raspberry Pi 3s. While my project has just begun, my log thus far is below.

Day 1:
Orientation

Day 2:
Booted Raspbian onto Raspberry Pi 3
Realized Pi is 64 bit and not 32 bit... Found new cross-compiler since old one won't work
Attempted to boot Xinu onto Pi 3 (not yet there)

Day 3:
Got a bare metal program (taken from Tristan Gingold) to boot on the Rasberry Pi and turn on a light

Day 4:
Tried booting a light version of Xinu taken from an old Operating System's homework (didn't work)
Started to convert the code that turned the light on in the C file to assembly (ARM64) to see if the booting process just wasn't getting to the C file

Day 5:
Converted C to assembly using the compiler (which we should have just done before)
Found that booting process wasn't getting to C file but was getting to assembly
Fixed code so light would turn on even when code was in C file
Still not receiving any input from the serial connection

Day 6:
Got serial connection working using mini-UART
Receiving wrong characters using pl011

Day 7:
Tried to find what the correct baud rate should be set to for pl011 (tried being the operative word)

Day 8:
Nothing to see here

Day 9:
Did a lot of research about UART
Found someone online who is a Raspberry Pi developer who got the pl011 driver to work for Raspbian
Attempted to communicate with Pi developer, but didn't receive much helpful information

Day 10:
Got the pl011 driver to work!
Checked to see if receive is also working, and it is

Day 11:
Started looking at and understanding the assembly code in full Xinu
Changed some of the assembly code to work with AArch64
Talked to our mentor about future plans
Started commenting out drivers and other components so that we can start from the bottom


Phone: (414) 379-0802

Upgrading Embedded Xinu for the Multi-Core Raspberry Pi 3