Hi all, This is my progress so far:
=== Week 1 === * Read U-Boot SPL code for AM335x to figure how it could be used to load custom binaries. * Set up the BeagleBone Black, experiment with U-Boot command line. * Started reading the available ARM Packages in edk2 to see what all can be reused.
=== Week 2 === * Saw portions of the StarterWare code to see how it does things. * Wrote a bare metal application to print a character stream over UART as per the TRM [1], facing some problems with initialization.
=== Next === * Debug the bare-metal binary, otherwise load it from U-Boot instead of MLO * Study the HisiPkg code and start implementing features for AM335x according to UEFI specs.
===Week 3 === * Got the standalone binary working through U-Boot [1] * git init [2] * Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal === * Build a dummy edk2 image to print over UART and load it from the SPL.
[1] http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART as
per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 === * Built a UEFI image loadable from SPL to print to UART from SEC * Cleaned up dependencies
=== Next === * Set up JTAG * Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1] http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART as
per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of
MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1] http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART as
per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of
MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Hey Bill,
I am now going with getting the UEFI console running instead of implementing the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 === * Configured JTAG debugger with OpenOCD * Started working to bring up UEFI console
=== Next === * Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1]
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART
as per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of
MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 === * Built Shell.efi with BeagleBoneBlackPkg * Could not launch from SEC; dependencies unmet. Need to follow SEC -> DXE -> BDS -> Shell.efi * Added DXE call to BeagleBoneBlackPkg
=== Next === * Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of implementing the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1]
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART
as per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of
MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 === * Issue with DEBUG(): internal assertions fail and macro returns. (proper PCDs and Libraries used) * Issue with SerialPortWrite(): strings with >4 characters fail to print. (am waiting for TX FIFO to clear before sending in the next char) * Added PEI phase to SEC itself (as done in BeagleBoardPkg). * Better option: Have a separate PEI phase (follow D01 instead of BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump. * Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid PcdFvBaseAddress
=== Next === * Fix the issues listed (figure out why PCDs not showing up) * Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC ->
DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of implementing the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1]
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote:
Hi all, This is my progress so far:
=== Week 1 ===
- Read U-Boot SPL code for AM335x to figure how it could be used to load
custom binaries.
- Set up the BeagleBone Black, experiment with U-Boot command line.
- Started reading the available ARM Packages in edk2 to see what all can
be reused.
=== Week 2 ===
- Saw portions of the StarterWare code to see how it does things.
- Wrote a bare metal application to print a character stream over UART
as per the TRM [1], facing some problems with initialization.
=== Next ===
- Debug the bare-metal binary, otherwise load it from U-Boot instead of
MLO
- Study the HisiPkg code and start implementing features for AM335x
according to UEFI specs.
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 === * Load PrePeiCore from U-Boot's SPL. Sec not needed. * Documented the work so far [1]
=== Next === * Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC ->
DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of implementing the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote:
===Week 3 ===
- Got the standalone binary working through U-Boot [1]
- git init [2]
- Looking at ArmVExpressPkg and HisiPkg ports for reference.
=== Current Goal ===
- Build a dummy edk2 image to print over UART and load it from the SPL.
[1]
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... [2] https://github.com/varadgautam/TexasInstrumentsPkg
On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com wrote: > > Hi all, > This is my progress so far: > > === Week 1 === > * Read U-Boot SPL code for AM335x to figure how it could be used to load > custom > binaries. > * Set up the BeagleBone Black, experiment with U-Boot command line. > * Started reading the available ARM Packages in edk2 to see what all can > be > reused. > > === Week 2 === > * Saw portions of the StarterWare code to see how it does things. > * Wrote a bare metal application to print a character stream over UART > as > per the > TRM [1], facing some problems with initialization. > > === Next === > * Debug the bare-metal binary, otherwise load it from U-Boot instead of > MLO > * Study the HisiPkg code and start implementing features for AM335x > according to UEFI specs. > > [1] http://fpaste.org/106566/32870140/
=== Week 9, 10 === * Since memory is already initialized by SPL, launch from PrePi. * Place TexasInstrumentsPkg into edk2 [1]. * PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next === * Fix PcdGet() (maybe a toolchain problem) * Get DEBUG() working * Load DxeCore.
[1] https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg [2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC ->
DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of implementing the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the PEX stage. If you want to demo independence of u-boot SPL you could use the starterware boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 4 ===
- Built a UEFI image loadable from SPL to print to UART from SEC
- Cleaned up dependencies
=== Next ===
- Set up JTAG
- Implement clock and timer libraries to reduce dependence on SPL
On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam varadgautam@gmail.com wrote: > > ===Week 3 === > * Got the standalone binary working through U-Boot [1] > * git init [2] > * Looking at ArmVExpressPkg and HisiPkg ports for reference. > > > === Current Goal === > * Build a dummy edk2 image to print over UART and load it from the SPL. > > [1] > > http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... > [2] https://github.com/varadgautam/TexasInstrumentsPkg > > > On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam varadgautam@gmail.com > wrote: >> >> Hi all, >> This is my progress so far: >> >> === Week 1 === >> * Read U-Boot SPL code for AM335x to figure how it could be used to load >> custom >> binaries. >> * Set up the BeagleBone Black, experiment with U-Boot command line. >> * Started reading the available ARM Packages in edk2 to see what all can >> be >> reused. >> >> === Week 2 === >> * Saw portions of the StarterWare code to see how it does things. >> * Wrote a bare metal application to print a character stream over UART >> as >> per the >> TRM [1], facing some problems with initialization. >> >> === Next === >> * Debug the bare-metal binary, otherwise load it from U-Boot instead of >> MLO >> * Study the HisiPkg code and start implementing features for AM335x >> according to UEFI specs. >> >> [1] http://fpaste.org/106566/32870140/ > >
Repository: https://github.com/varadgautam/TexasInstrumentsPkg/
=== Week 11 === * DxeCore now loads * Fixed PcdGet() issue by correcting PcdFdBaseAddress according to SPL * DEBUG() works * InterruptDxe, TimerDxe, WatchdogTimerDxe and TimerLib added
=== Next === * Add BDS dependencies, launch BDS * Document * Depreceate Sec and PrePeiCore since using PrePi, cleanup build spec files.
Thanks, Varad
On Sun, Jul 27, 2014 at 4:39 PM, Varad Gautam varadgautam@gmail.com wrote:
=== Week 9, 10 ===
- Since memory is already initialized by SPL, launch from PrePi.
- Place TexasInstrumentsPkg into edk2 [1].
- PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next ===
- Fix PcdGet() (maybe a toolchain problem)
- Get DEBUG() working
- Load DxeCore.
[1] https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg [2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid
PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC ->
DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com
wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of
implementing
the low level libraries. For now, I plan to continue using SPL to load the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com wrote:
Varad,
I am not sure clock & timer libraries are really needed beyond the
PEX
stage. If you want to demo independence of u-boot SPL you could use the
starterware
boot loader instead. It should be pretty similar to what you have already working.
Bill
On 06/16/2014 02:20 PM, Varad Gautam wrote: > > Repository: https://github.com/varadgautam/TexasInstrumentsPkg > > === Week 4 === > * Built a UEFI image loadable from SPL to print to UART from SEC > * Cleaned up dependencies > > === Next === > * Set up JTAG > * Implement clock and timer libraries to reduce dependence on SPL > > On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam <
varadgautam@gmail.com>
> wrote: >> >> ===Week 3 === >> * Got the standalone binary working through U-Boot [1] >> * git init [2] >> * Looking at ArmVExpressPkg and HisiPkg ports for reference. >> >> >> === Current Goal === >> * Build a dummy edk2 image to print over UART and load it from the
SPL.
>> >> [1] >> >>
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-...
>> [2] https://github.com/varadgautam/TexasInstrumentsPkg >> >> >> On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam <
varadgautam@gmail.com>
>> wrote: >>> >>> Hi all, >>> This is my progress so far: >>> >>> === Week 1 === >>> * Read U-Boot SPL code for AM335x to figure how it could be used
to load
>>> custom >>> binaries. >>> * Set up the BeagleBone Black, experiment with U-Boot command
line.
>>> * Started reading the available ARM Packages in edk2 to see what
all can
>>> be >>> reused. >>> >>> === Week 2 === >>> * Saw portions of the StarterWare code to see how it does things. >>> * Wrote a bare metal application to print a character stream over
UART
>>> as >>> per the >>> TRM [1], facing some problems with initialization. >>> >>> === Next === >>> * Debug the bare-metal binary, otherwise load it from U-Boot
instead of
>>> MLO >>> * Study the HisiPkg code and start implementing features for
AM335x
>>> according to UEFI specs. >>> >>> [1] http://fpaste.org/106566/32870140/ >> >>
Repository: https://github.com/varadgautam/edk2/commits/TexasInstrumentsPkg
=== Week 12 === * BDS now loads * UefiShell available * The boot sequence is: MLO -> PrePi -> DxeCore -> BDS -> (EBL or Shell.efi)
=== Next === * Add MMC support * Document what has been done * Add PMIC + RTC support
Thanks, Varad
On Mon, Aug 4, 2014 at 12:08 AM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg/
=== Week 11 ===
- DxeCore now loads
- Fixed PcdGet() issue by correcting PcdFdBaseAddress according to SPL
- DEBUG() works
- InterruptDxe, TimerDxe, WatchdogTimerDxe and TimerLib added
=== Next ===
- Add BDS dependencies, launch BDS
- Document
- Depreceate Sec and PrePeiCore since using PrePi, cleanup build spec
files.
Thanks, Varad
On Sun, Jul 27, 2014 at 4:39 PM, Varad Gautam varadgautam@gmail.com wrote:
=== Week 9, 10 ===
- Since memory is already initialized by SPL, launch from PrePi.
- Place TexasInstrumentsPkg into edk2 [1].
- PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next ===
- Fix PcdGet() (maybe a toolchain problem)
- Get DEBUG() working
- Load DxeCore.
[1] https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg [2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid
PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC ->
DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com
wrote:
Hey Bill,
I am now going with getting the UEFI console running instead of
implementing
the low level libraries. For now, I plan to continue using SPL to
load
the UEFI image.
This is my progress update so far:
=== Week 5 ===
- Configured JTAG debugger with OpenOCD
- Started working to bring up UEFI console
=== Next ===
- Get console working.
Thanks, Varad
On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com
wrote:
> Varad, > > I am not sure clock & timer libraries are really needed beyond the
PEX
> stage. > If you want to demo independence of u-boot SPL you could use the
starterware
> boot loader instead. > It should be pretty similar to what you have already working. > > Bill > > > On 06/16/2014 02:20 PM, Varad Gautam wrote: >> >> Repository: https://github.com/varadgautam/TexasInstrumentsPkg >> >> === Week 4 === >> * Built a UEFI image loadable from SPL to print to UART from SEC >> * Cleaned up dependencies >> >> === Next === >> * Set up JTAG >> * Implement clock and timer libraries to reduce dependence on SPL >> >> On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam <
varadgautam@gmail.com>
>> wrote: >>> >>> ===Week 3 === >>> * Got the standalone binary working through U-Boot [1] >>> * git init [2] >>> * Looking at ArmVExpressPkg and HisiPkg ports for reference. >>> >>> >>> === Current Goal === >>> * Build a dummy edk2 image to print over UART and load it from
the SPL.
>>> >>> [1] >>> >>>
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-...
>>> [2] https://github.com/varadgautam/TexasInstrumentsPkg >>> >>> >>> On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam <
varadgautam@gmail.com>
>>> wrote: >>>> >>>> Hi all, >>>> This is my progress so far: >>>> >>>> === Week 1 === >>>> * Read U-Boot SPL code for AM335x to figure how it could be used
to load
>>>> custom >>>> binaries. >>>> * Set up the BeagleBone Black, experiment with U-Boot command
line.
>>>> * Started reading the available ARM Packages in edk2 to see what
all can
>>>> be >>>> reused. >>>> >>>> === Week 2 === >>>> * Saw portions of the StarterWare code to see how it does things. >>>> * Wrote a bare metal application to print a character stream
over UART
>>>> as >>>> per the >>>> TRM [1], facing some problems with initialization. >>>> >>>> === Next === >>>> * Debug the bare-metal binary, otherwise load it from U-Boot
instead of
>>>> MLO >>>> * Study the HisiPkg code and start implementing features for
AM335x
>>>> according to UEFI specs. >>>> >>>> [1] http://fpaste.org/106566/32870140/ >>> >>> >
On Mon, Aug 11, 2014 at 07:08:18PM +0530, Varad Gautam wrote:
Repository: https://github.com/varadgautam/edk2/commits/TexasInstrumentsPkg
=== Week 12 ===
- BDS now loads
- UefiShell available
- The boot sequence is: MLO -> PrePi -> DxeCore -> BDS -> (EBL or Shell.efi)
Awesome work! :-)
=== Next ===
- Add MMC support
- Document what has been done
- Add PMIC + RTC support
How far do you think you're likely to get by the end of the GSOC?
Cheers,
Thanks!
I'll have MMC support in a day or two, followed by the documentation. Are there any stretch targets I could add?
Varad
On Mon, Aug 11, 2014 at 07:29:40PM +0530, Varad Gautam wrote:
Thanks!
I'll have MMC support in a day or two, followed by the documentation. Are there any stretch targets I could add?
Considering yesterday was the official "soft" pencils-down date, I'd suggest not looking for any more just now! :-)
Cheers,
Repository: https://github.com/varadgautam/edk2/tree/linaro-platform-ti-bbb
=== Week 13 === * MMC driver ready - adapted from BeagleBoardPkg. * Created a wiki[1] containing file descriptions and build process (please review). * Code cleanup: duplicates removed.
=== Next (Post-GSoC) === * Load 3.16 Kernel on BBB using EFI stub support.
[1] https://github.com/varadgautam/TexasInstrumentsPkg/wiki
Thanks, Varad
On Mon, Aug 11, 2014 at 7:08 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/edk2/commits/TexasInstrumentsPkg
=== Week 12 ===
- BDS now loads
- UefiShell available
- The boot sequence is: MLO -> PrePi -> DxeCore -> BDS -> (EBL or Shell.efi)
=== Next ===
- Add MMC support
- Document what has been done
- Add PMIC + RTC support
Thanks, Varad
On Mon, Aug 4, 2014 at 12:08 AM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg/
=== Week 11 ===
- DxeCore now loads
- Fixed PcdGet() issue by correcting PcdFdBaseAddress according to SPL
- DEBUG() works
- InterruptDxe, TimerDxe, WatchdogTimerDxe and TimerLib added
=== Next ===
- Add BDS dependencies, launch BDS
- Document
- Depreceate Sec and PrePeiCore since using PrePi, cleanup build spec
files.
Thanks, Varad
On Sun, Jul 27, 2014 at 4:39 PM, Varad Gautam varadgautam@gmail.com wrote:
=== Week 9, 10 ===
- Since memory is already initialized by SPL, launch from PrePi.
- Place TexasInstrumentsPkg into edk2 [1].
- PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next ===
- Fix PcdGet() (maybe a toolchain problem)
- Get DEBUG() working
- Load DxeCore.
[1] https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg [2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid
PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 6 ===
- Built Shell.efi with BeagleBoneBlackPkg
- Could not launch from SEC; dependencies unmet. Need to follow SEC
-> DXE -> BDS -> Shell.efi
- Added DXE call to BeagleBoneBlackPkg
=== Next ===
- Get DXE debug output from the board.
On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam varadgautam@gmail.com wrote: > Hey Bill, > > I am now going with getting the UEFI console running instead of > implementing > the low level libraries. For now, I plan to continue using SPL to > load > the UEFI image. > > This is my progress update so far: > > === Week 5 === > * Configured JTAG debugger with OpenOCD > * Started working to bring up UEFI console > > === Next === > * Get console working. > > Thanks, > Varad > > On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com > wrote: >> Varad, >> >> I am not sure clock & timer libraries are really needed beyond the >> PEX >> stage. >> If you want to demo independence of u-boot SPL you could use the >> starterware >> boot loader instead. >> It should be pretty similar to what you have already working. >> >> Bill >> >> >> On 06/16/2014 02:20 PM, Varad Gautam wrote: >>> >>> Repository: https://github.com/varadgautam/TexasInstrumentsPkg >>> >>> === Week 4 === >>> * Built a UEFI image loadable from SPL to print to UART from SEC >>> * Cleaned up dependencies >>> >>> === Next === >>> * Set up JTAG >>> * Implement clock and timer libraries to reduce dependence on SPL >>> >>> On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam >>> varadgautam@gmail.com >>> wrote: >>>> >>>> ===Week 3 === >>>> * Got the standalone binary working through U-Boot [1] >>>> * git init [2] >>>> * Looking at ArmVExpressPkg and HisiPkg ports for reference. >>>> >>>> >>>> === Current Goal === >>>> * Build a dummy edk2 image to print over UART and load it from >>>> the SPL. >>>> >>>> [1] >>>> >>>> >>>> http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-... >>>> [2] https://github.com/varadgautam/TexasInstrumentsPkg >>>> >>>> >>>> On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam >>>> varadgautam@gmail.com >>>> wrote: >>>>> >>>>> Hi all, >>>>> This is my progress so far: >>>>> >>>>> === Week 1 === >>>>> * Read U-Boot SPL code for AM335x to figure how it could be used >>>>> to load >>>>> custom >>>>> binaries. >>>>> * Set up the BeagleBone Black, experiment with U-Boot command >>>>> line. >>>>> * Started reading the available ARM Packages in edk2 to see what >>>>> all can >>>>> be >>>>> reused. >>>>> >>>>> === Week 2 === >>>>> * Saw portions of the StarterWare code to see how it does >>>>> things. >>>>> * Wrote a bare metal application to print a character stream >>>>> over UART >>>>> as >>>>> per the >>>>> TRM [1], facing some problems with initialization. >>>>> >>>>> === Next === >>>>> * Debug the bare-metal binary, otherwise load it from U-Boot >>>>> instead of >>>>> MLO >>>>> * Study the HisiPkg code and start implementing features for >>>>> AM335x >>>>> according to UEFI specs. >>>>> >>>>> [1] http://fpaste.org/106566/32870140/ >>>> >>>> >>
Hi Varad,
* Created a wiki[1] containing file descriptions and build process
(please review)
In general, your wiki looks good, it's have all needed information (from my POV). Here is some quick notes from my side (it's up to you -- to take them into account or skip).
1. If you wanted to show the *whole* boot process of BBB, there is also ROM-code at AM335x which can be considered as *very 1st bootloader*. Details here: http://processors.wiki.ti.com/index.php/AM335x_U-Boot_User%27s_Guide#Two_sta...
2. Regarding your command for building BBB package: you may want to try and source edksetup.sh file (". ./edksetup.sh"), after that you should be able to run "build" tool w/o specifying relative path to it. So if that's the case, you can insert sourcing command before building and get rid of relative path. It's also good idea because I saw you are using cygwin (AFAIR it's some windows tool), and most developers here using Linux, so they have another toolchain than you, so they can have another path to "build" tool.
3. Is there any way to boot edk2 w/o u-boot (directly from ROM-code)? If so, which further work should be done for this in BBB port? This stuff should be documented as well (IMO).
4. Boot process can be shown more detailed, like this: http://oi58.tinypic.com/2czeyb4.jpg
5. If you have some notes, ideas and TODOs for those who would like to continue working on your port -- it would be nice to share it in your wiki (in the end, I guess)
6. Add $ sign before this command: sudo screen /dev/ttyUSB[device] 115200
7. ...and also consider using "minicom" instead of "screen" as serial console tool (AFAIK most guys in TI and Linaro using minicom).
8. For wiki structure -- check out next links:
1. http://omappedia.org/wiki/6AJ.1.3_Release_Notes 2. http://omapedia.org/wiki/Panda5AJ.1.5.1_Release_Notes
if you like the way they organized -- you can rewok your wiki a bit
9. Table Of Content: is there any way to add it to GitHub wiki? If so, maybe it's good thing to do.
On 17 August 2014 11:34, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/edk2/tree/linaro-platform-ti-bbb
=== Week 13 ===
- MMC driver ready - adapted from BeagleBoardPkg.
- Created a wiki[1] containing file descriptions and build process
(please review).
- Code cleanup: duplicates removed.
=== Next (Post-GSoC) ===
- Load 3.16 Kernel on BBB using EFI stub support.
[1] https://github.com/varadgautam/TexasInstrumentsPkg/wiki
Thanks, Varad
On Mon, Aug 11, 2014 at 7:08 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository:
https://github.com/varadgautam/edk2/commits/TexasInstrumentsPkg
=== Week 12 ===
- BDS now loads
- UefiShell available
- The boot sequence is: MLO -> PrePi -> DxeCore -> BDS -> (EBL or
Shell.efi)
=== Next ===
- Add MMC support
- Document what has been done
- Add PMIC + RTC support
Thanks, Varad
On Mon, Aug 4, 2014 at 12:08 AM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg/
=== Week 11 ===
- DxeCore now loads
- Fixed PcdGet() issue by correcting PcdFdBaseAddress according to SPL
- DEBUG() works
- InterruptDxe, TimerDxe, WatchdogTimerDxe and TimerLib added
=== Next ===
- Add BDS dependencies, launch BDS
- Document
- Depreceate Sec and PrePeiCore since using PrePi, cleanup build spec
files.
Thanks, Varad
On Sun, Jul 27, 2014 at 4:39 PM, Varad Gautam varadgautam@gmail.com wrote:
=== Week 9, 10 ===
- Since memory is already initialized by SPL, launch from PrePi.
- Place TexasInstrumentsPkg into edk2 [1].
- PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next ===
- Fix PcdGet() (maybe a toolchain problem)
- Get DEBUG() working
- Load DxeCore.
[1]
https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg
[2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 7 ===
- Issue with DEBUG(): internal assertions fail and macro returns.
(proper PCDs and Libraries used)
- Issue with SerialPortWrite(): strings with >4 characters fail to
print. (am waiting for TX FIFO to clear before sending in the next char)
- Added PEI phase to SEC itself (as done in BeagleBoardPkg).
- Better option: Have a separate PEI phase (follow D01 instead of
BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to
jump.
- Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid
PcdFvBaseAddress
=== Next ===
- Fix the issues listed (figure out why PCDs not showing up)
- Load PEI
Thanks, Varad
On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam <
varadgautam@gmail.com>
wrote: > Repository: https://github.com/varadgautam/TexasInstrumentsPkg > > === Week 6 === > * Built Shell.efi with BeagleBoneBlackPkg > * Could not launch from SEC; dependencies unmet. Need to follow SEC > -> > DXE -> BDS -> Shell.efi > * Added DXE call to BeagleBoneBlackPkg > > === Next === > * Get DXE debug output from the board. > > On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam > varadgautam@gmail.com wrote: >> Hey Bill, >> >> I am now going with getting the UEFI console running instead of >> implementing >> the low level libraries. For now, I plan to continue using SPL to >> load >> the UEFI image. >> >> This is my progress update so far: >> >> === Week 5 === >> * Configured JTAG debugger with OpenOCD >> * Started working to bring up UEFI console >> >> === Next === >> * Get console working. >> >> Thanks, >> Varad >> >> On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com >> wrote: >>> Varad, >>> >>> I am not sure clock & timer libraries are really needed beyond
the
>>> PEX >>> stage. >>> If you want to demo independence of u-boot SPL you could use the >>> starterware >>> boot loader instead. >>> It should be pretty similar to what you have already working. >>> >>> Bill >>> >>> >>> On 06/16/2014 02:20 PM, Varad Gautam wrote: >>>> >>>> Repository: https://github.com/varadgautam/TexasInstrumentsPkg >>>> >>>> === Week 4 === >>>> * Built a UEFI image loadable from SPL to print to UART from SEC >>>> * Cleaned up dependencies >>>> >>>> === Next === >>>> * Set up JTAG >>>> * Implement clock and timer libraries to reduce dependence on
SPL
>>>> >>>> On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam >>>> varadgautam@gmail.com >>>> wrote: >>>>> >>>>> ===Week 3 === >>>>> * Got the standalone binary working through U-Boot [1] >>>>> * git init [2] >>>>> * Looking at ArmVExpressPkg and HisiPkg ports for reference. >>>>> >>>>> >>>>> === Current Goal === >>>>> * Build a dummy edk2 image to print over UART and load it from >>>>> the SPL. >>>>> >>>>> [1] >>>>> >>>>> >>>>>
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-...
>>>>> [2] https://github.com/varadgautam/TexasInstrumentsPkg >>>>> >>>>> >>>>> On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam >>>>> varadgautam@gmail.com >>>>> wrote: >>>>>> >>>>>> Hi all, >>>>>> This is my progress so far: >>>>>> >>>>>> === Week 1 === >>>>>> * Read U-Boot SPL code for AM335x to figure how it could be
used
>>>>>> to load >>>>>> custom >>>>>> binaries. >>>>>> * Set up the BeagleBone Black, experiment with U-Boot command >>>>>> line. >>>>>> * Started reading the available ARM Packages in edk2 to see
what
>>>>>> all can >>>>>> be >>>>>> reused. >>>>>> >>>>>> === Week 2 === >>>>>> * Saw portions of the StarterWare code to see how it does >>>>>> things. >>>>>> * Wrote a bare metal application to print a character stream >>>>>> over UART >>>>>> as >>>>>> per the >>>>>> TRM [1], facing some problems with initialization. >>>>>> >>>>>> === Next === >>>>>> * Debug the bare-metal binary, otherwise load it from U-Boot >>>>>> instead of >>>>>> MLO >>>>>> * Study the HisiPkg code and start implementing features for >>>>>> AM335x >>>>>> according to UEFI specs. >>>>>> >>>>>> [1] http://fpaste.org/106566/32870140/ >>>>> >>>>> >>>
On 17 Aug 2014 14:30, "Sam Protsenko" semen.protsenko@linaro.org wrote:
Hi Varad,
- Created a wiki[1] containing file descriptions and build process
(please review)
In general, your wiki looks good, it's have all needed information (from
my POV). Here is some quick notes from my side (it's up to you -- to take them into account or skip).
- If you wanted to show the *whole* boot process of BBB, there is also
ROM-code at AM335x which can be considered as very 1st bootloader. Details here: http://processors.wiki.ti.com/index.php/AM335x_U-Boot_User%27s_Guide#Two_sta...
- Regarding your command for building BBB package: you may want to try
and source edksetup.sh file (". ./edksetup.sh"), after that you should be able to run "build" tool w/o specifying relative path to it. So if that's the case, you can insert sourcing command before building and get rid of relative path. It's also good idea because I saw you are using cygwin (AFAIR it's some windows tool), and most developers here using Linux, so they have another toolchain than you, so they can have another path to "build" tool.
- Is there any way to boot edk2 w/o u-boot (directly from ROM-code)? If
so, which further work should be done for this in BBB port? This stuff should be documented as well (IMO).
- Boot process can be shown more detailed, like this:
http://oi58.tinypic.com/2czeyb4.jpg
- If you have some notes, ideas and TODOs for those who would like to
continue working on your port -- it would be nice to share it in your wiki (in the end, I guess)
Add $ sign before this command: sudo screen /dev/ttyUSB[device] 115200
...and also consider using "minicom" instead of "screen" as serial
console tool (AFAIK most guys in TI and Linaro using minicom).
I used to, but it has some horrendous bugs (hence advised against in u-boot documentation), and after ckermit got broken in Debian packaging once, I use screen exclusively. Many others do the same.
For wiki structure -- check out next links:
- http://omappedia.org/wiki/6AJ.1.3_Release_Notes
- http://omapedia.org/wiki/Panda5AJ.1.5.1_Release_Notes
if you like the way they organized -- you can rewok your wiki a bit
Table Of Content: is there any way to add it to GitHub wiki? If so,
maybe it's good thing to do.
On 17 August 2014 11:34, Varad Gautam varadgautam@gmail.com wrote:
Repository:
https://github.com/varadgautam/edk2/tree/linaro-platform-ti-bbb
=== Week 13 ===
- MMC driver ready - adapted from BeagleBoardPkg.
- Created a wiki[1] containing file descriptions and build process
(please review).
- Code cleanup: duplicates removed.
=== Next (Post-GSoC) ===
- Load 3.16 Kernel on BBB using EFI stub support.
[1] https://github.com/varadgautam/TexasInstrumentsPkg/wiki
Thanks, Varad
On Mon, Aug 11, 2014 at 7:08 PM, Varad Gautam varadgautam@gmail.com
wrote:
Repository:
https://github.com/varadgautam/edk2/commits/TexasInstrumentsPkg
=== Week 12 ===
- BDS now loads
- UefiShell available
- The boot sequence is: MLO -> PrePi -> DxeCore -> BDS -> (EBL or
Shell.efi)
=== Next ===
- Add MMC support
- Document what has been done
- Add PMIC + RTC support
Thanks, Varad
On Mon, Aug 4, 2014 at 12:08 AM, Varad Gautam varadgautam@gmail.com
wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg/
=== Week 11 ===
- DxeCore now loads
- Fixed PcdGet() issue by correcting PcdFdBaseAddress according to SPL
- DEBUG() works
- InterruptDxe, TimerDxe, WatchdogTimerDxe and TimerLib added
=== Next ===
- Add BDS dependencies, launch BDS
- Document
- Depreceate Sec and PrePeiCore since using PrePi, cleanup build spec
files.
Thanks, Varad
On Sun, Jul 27, 2014 at 4:39 PM, Varad Gautam varadgautam@gmail.com wrote:
=== Week 9, 10 ===
- Since memory is already initialized by SPL, launch from PrePi.
- Place TexasInstrumentsPkg into edk2 [1].
- PCD issue from Week 7 - in BeagleBoardPkg as well - thread: [2]
=== Next ===
- Fix PcdGet() (maybe a toolchain problem)
- Get DEBUG() working
- Load DxeCore.
[1]
https://github.com/varadgautam/edk2/tree/BeagleBoneBlack/TexasInstrumentsPkg
[2] http://comments.gmane.org/gmane.comp.bios.tianocore.devel/7874
Thanks, Varad
On Tue, Jul 15, 2014 at 9:37 PM, Varad Gautam varadgautam@gmail.com wrote:
Repository: https://github.com/varadgautam/TexasInstrumentsPkg
=== Week 8 ===
- Load PrePeiCore from U-Boot's SPL. Sec not needed.
- Documented the work so far [1]
=== Next ===
- Pass through PEI, construct HOBs and jump to DXE
This is fun!
[1] http://varadgautam.wordpress.com/tag/beaglebone-black/
Thanks, Varad
On Mon, Jul 7, 2014 at 3:44 PM, Varad Gautam <varadgautam@gmail.com
wrote: > Repository: https://github.com/varadgautam/TexasInstrumentsPkg > > > === Week 7 === > * Issue with DEBUG(): internal assertions fail and macro returns. > (proper PCDs and Libraries used) > * Issue with SerialPortWrite(): strings with >4 characters fail to > print. (am waiting for TX FIFO to clear before sending in the next > char) > * Added PEI phase to SEC itself (as done in BeagleBoardPkg). > * Better option: Have a separate PEI phase (follow D01 instead of > BeagleBoard). Using ArmPlatformPkg/PrePeiCore; figure out how to
jump.
> * Issue with PcdGet32(PcdFvBaseAddress): returns 0 for valid > PcdFvBaseAddress > > === Next === > * Fix the issues listed (figure out why PCDs not showing up) > * Load PEI > > Thanks, > Varad > > On Sun, Jun 29, 2014 at 12:25 PM, Varad Gautam <
varadgautam@gmail.com>
> wrote: >> Repository: https://github.com/varadgautam/TexasInstrumentsPkg >> >> === Week 6 === >> * Built Shell.efi with BeagleBoneBlackPkg >> * Could not launch from SEC; dependencies unmet. Need to follow
SEC
>> -> >> DXE -> BDS -> Shell.efi >> * Added DXE call to BeagleBoneBlackPkg >> >> === Next === >> * Get DXE debug output from the board. >> >> On Mon, Jun 23, 2014 at 12:24 PM, Varad Gautam >> varadgautam@gmail.com wrote: >>> Hey Bill, >>> >>> I am now going with getting the UEFI console running instead of >>> implementing >>> the low level libraries. For now, I plan to continue using SPL
to
>>> load >>> the UEFI image. >>> >>> This is my progress update so far: >>> >>> === Week 5 === >>> * Configured JTAG debugger with OpenOCD >>> * Started working to bring up UEFI console >>> >>> === Next === >>> * Get console working. >>> >>> Thanks, >>> Varad >>> >>> On Tue, Jun 17, 2014 at 2:07 AM, William Mills wmills@ti.com >>> wrote: >>>> Varad, >>>> >>>> I am not sure clock & timer libraries are really needed beyond
the
>>>> PEX >>>> stage. >>>> If you want to demo independence of u-boot SPL you could use
the
>>>> starterware >>>> boot loader instead. >>>> It should be pretty similar to what you have already working. >>>> >>>> Bill >>>> >>>> >>>> On 06/16/2014 02:20 PM, Varad Gautam wrote: >>>>> >>>>> Repository: https://github.com/varadgautam/TexasInstrumentsPkg >>>>> >>>>> === Week 4 === >>>>> * Built a UEFI image loadable from SPL to print to UART from
SEC
>>>>> * Cleaned up dependencies >>>>> >>>>> === Next === >>>>> * Set up JTAG >>>>> * Implement clock and timer libraries to reduce dependence on
SPL
>>>>> >>>>> On Tue, Jun 10, 2014 at 6:37 PM, Varad Gautam >>>>> varadgautam@gmail.com >>>>> wrote: >>>>>> >>>>>> ===Week 3 === >>>>>> * Got the standalone binary working through U-Boot [1] >>>>>> * git init [2] >>>>>> * Looking at ArmVExpressPkg and HisiPkg ports for reference. >>>>>> >>>>>> >>>>>> === Current Goal === >>>>>> * Build a dummy edk2 image to print over UART and load it
from
>>>>>> the SPL. >>>>>> >>>>>> [1] >>>>>> >>>>>> >>>>>>
http://varadgautam.wordpress.com/2014/06/04/a-u-boot-independent-standalone-...
>>>>>> [2] https://github.com/varadgautam/TexasInstrumentsPkg >>>>>> >>>>>> >>>>>> On Tue, Jun 3, 2014 at 2:49 PM, Varad Gautam >>>>>> varadgautam@gmail.com >>>>>> wrote: >>>>>>> >>>>>>> Hi all, >>>>>>> This is my progress so far: >>>>>>> >>>>>>> === Week 1 === >>>>>>> * Read U-Boot SPL code for AM335x to figure how it could be
used
>>>>>>> to load >>>>>>> custom >>>>>>> binaries. >>>>>>> * Set up the BeagleBone Black, experiment with U-Boot
command
>>>>>>> line. >>>>>>> * Started reading the available ARM Packages in edk2 to see
what
>>>>>>> all can >>>>>>> be >>>>>>> reused. >>>>>>> >>>>>>> === Week 2 === >>>>>>> * Saw portions of the StarterWare code to see how it does >>>>>>> things. >>>>>>> * Wrote a bare metal application to print a character stream >>>>>>> over UART >>>>>>> as >>>>>>> per the >>>>>>> TRM [1], facing some problems with initialization. >>>>>>> >>>>>>> === Next === >>>>>>> * Debug the bare-metal binary, otherwise load it from U-Boot >>>>>>> instead of >>>>>>> MLO >>>>>>> * Study the HisiPkg code and start implementing features for >>>>>>> AM335x >>>>>>> according to UEFI specs. >>>>>>> >>>>>>> [1] http://fpaste.org/106566/32870140/ >>>>>> >>>>>> >>>>
linaro-gsoc mailing list linaro-gsoc@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-gsoc