XO4 Bringup: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
 
(41 intermediate revisions by 8 users not shown)
Line 1: Line 1:
This page listed goals and plans for initial bringup of the [[XO 4 A1]] motherboard, the first prototype of the [[Hardware#XO_4_Laptop|XO-4 Laptop]], and now lists ongoing work.
This page listed goals and plans for initial bringup of the [[XO 4 A2]] motherboard, the first prototype of the [[Hardware#XO_4_Laptop|XO-4 Laptop]], and now lists ongoing work.


== Status ==
== Status ==
Line 7: Line 7:
{| border="1" align="center"
{| border="1" align="center"
|+ '''Bringup status'''
|+ '''Bringup status'''
! Subsystem !! OFW !! Linux !! Kernel maintainer !! Notes/Reference
! Subsystem !! OFW !! Linux !! Maintainer !! Notes/Reference
|- align="center"
|- align="center"
! CPU Boot
! CPU Boot
| X || X || NA ||
| X || X || NA ||
|- align="center"
! Memory test
| X || X || cjb ||
|- align="center"
|- align="center"
! Serial port
! Serial port
| X || X || NA || #12045 still open
| X || X || NA || <trac>12045</trac> still open
|- align="center"
! Thermal sensor
| X || X || ||
|- align="center"
! Thermal watchdog
| || X || Paul/James || Kernel has support for 95 to 100 C shutdown, EC requires support to be added.
|- align="center"
|- align="center"
! Host/EC communications
! Host/EC communications
| X || || dilinger / pgf || [[XO_1.75_HOST_to_EC_Protocol]]
| X || X || dilinger / pgf || [[XO_1.75_HOST_to_EC_Protocol]]
|- align="center"
|- align="center"
! Host/EC programming
! Host/EC programming
Line 22: Line 31:
|- align="center"
|- align="center"
! Keyboard
! Keyboard
| X || || pgf ||
| X || X || pgf ||
|- align="center"
|- align="center"
! Touchpad
! Touchpad
| X || || pgf ||
| X || X || pgf ||
|- align="center"
|- align="center"
! USB
! USB
| X || || cjb ||
| X || X || cjb ||
|- align="center"
|- align="center"
! SD (Int/Ext)
! SD (Int/Ext)
| X || X || cjb || Ext SD cards are being detected read-only by Linux in some machines
| X || X || cjb ||
|- align="center"
|- align="center"
! eMMC
! eMMC
Line 37: Line 46:
|- align="center"
|- align="center"
! DCON
! DCON
| X || || cjb ||
| X || X || dilinger ||
|- align="center"
|- align="center"
! Framebuffer display
! Framebuffer display
| X || || jnettlet ||
| X || X || jnettlet ||
|- align="center"
|- align="center"
! Xorg
! Xorg
Line 55: Line 64:
|- align="center"
|- align="center"
! SDIO WLAN - mwifiex
! SDIO WLAN - mwifiex
| || || shep ||
| || X || shep ||
|- align="center"
|- align="center"
! Battery charging
! Battery charging
Line 61: Line 70:
|- align="center"
|- align="center"
! Touchscreen
! Touchscreen
| || || pgf || unit tested in both OFW/Linux, waiting for new IR pcb assemblies
| X || ? || James / pgf || unit-tested only in Linux
|- align="center"
|- align="center"
! OFW SPI Flash Prog.
! OFW SPI Flash Prog.
Line 67: Line 76:
|- align="center"
|- align="center"
! Camera
! Camera
| X || X || dsd || Working. Some pending work remains (not of high importance), ask Daniel.
| X || || jnettlet ||
|- align="center"
|- align="center"
! SMP
! SMP
Line 73: Line 82:
|- align="center"
|- align="center"
! Battery driver
! Battery driver
| X || || pgf ||
| X || X || pgf ||
|- align="center"
|- align="center"
! OLS
! OLS
| X || X || pgf || als@ works in open firmware but the values are inconsistent.
| || || saadia ||
|- align="center"
|- align="center"
! Switches (ebook, lid)
! Switches (ebook, lid)
| || X || pgf ||
| X || X || pgf ||
|- align="center"
! Storage LED
| NA || X || pgf ||
|- align="center"
|- align="center"
! Internal RTC
! Internal RTC
| || || saadia ||
| X || X || pgf ||
|- align="center"
|- align="center"
! External RTC
! External RTC
| || || saadia ||
| X || X || pgf ||
|- align="center"
|- align="center"
! Accelerometer
! Accelerometer
| || || saadia ||
| X || X || saadia ||
|- align="center"
|- align="center"
! Suspend/resume
! Suspend/resume
| || || dilinger ||
| X || || dilinger ||
|- align="center"
|- align="center"
! Boot main core at fastest possible frequency
! CPU frequency changing
| X || || || <trac>12064</trac>
|- align="center"
! CPU frequency changing during runtime
| || || ||
| || || ||
|- align="center"
! Reboot/shutdown
| X || X || cjb ||
|- align="center"
! HDMI
| || || jnettlet ||
|}
|}


== A1 Goals ==
== A2 Goals ==


The goal of a A-phase board bring-up is get a small number of boards to an acceptable state of functionality. At this point, a larger number of boards are [[XO4_A2_ECOs|modified]] to match and distributed for both extended testing of basic functionality (esp. memory stability) and development of software to access further functionality.
The goal of a A-phase board bring-up is get a small number of boards to an acceptable state of functionality. At this point, a larger number of boards are [[XO4_A2_ECOs|modified]] to match and distributed for both extended testing of basic functionality (esp. memory stability) and development of software to access further functionality.
Line 109: Line 130:
* Support for reprogramming the EC SPI Flash from CPU
* Support for reprogramming the EC SPI Flash from CPU


== A1 Non-goals ==
== A2 Non-goals ==
''We can go home even if these aren't working''
''We can go home even if these aren't working''


Line 117: Line 138:
* Linux
* Linux


== A1 Personnel ==
== A2 Personnel ==


* Wad (EE), Gary Chiang (EE), Richard (EC/OFW), Mitch (OFW), Paul (EC/Linux), from OLPC
* Wad (EE), Gary Chiang (EE), Richard (EC/OFW), Mitch (OFW), Paul (EC/Linux), from OLPC

Latest revision as of 17:29, 7 September 2012

This page listed goals and plans for initial bringup of the XO 4 A2 motherboard, the first prototype of the XO-4 Laptop, and now lists ongoing work.

Status

Note that a check in any one of the two columns is generally sufficient to prove that the hardware works.

Bringup status
Subsystem OFW Linux Maintainer Notes/Reference
CPU Boot X X NA
Memory test X X cjb
Serial port X X NA <trac>12045</trac> still open
Thermal sensor X X
Thermal watchdog X Paul/James Kernel has support for 95 to 100 C shutdown, EC requires support to be added.
Host/EC communications X X dilinger / pgf XO_1.75_HOST_to_EC_Protocol
Host/EC programming X NA NA
Keyboard X X pgf
Touchpad X X pgf
USB X X cjb
SD (Int/Ext) X X cjb
eMMC X X cjb
DCON X X dilinger
Framebuffer display X X jnettlet
Xorg NA jnettlet
Audio playback (Int/Ext) X saadia
Audio recording (Int/Ext) saadia
SDIO WLAN - libertas X X cjb
SDIO WLAN - mwifiex X shep
Battery charging X NA NA
Touchscreen X ? James / pgf unit-tested only in Linux
OFW SPI Flash Prog. X NA NA
Camera X X dsd Working. Some pending work remains (not of high importance), ask Daniel.
SMP NA dilinger
Battery driver X X pgf
OLS X X pgf als@ works in open firmware but the values are inconsistent.
Switches (ebook, lid) X X pgf
Storage LED NA X pgf
Internal RTC X X pgf
External RTC X X pgf
Accelerometer X X saadia
Suspend/resume X dilinger
Boot main core at fastest possible frequency X <trac>12064</trac>
CPU frequency changing during runtime
Reboot/shutdown X X cjb
HDMI jnettlet

A2 Goals

The goal of a A-phase board bring-up is get a small number of boards to an acceptable state of functionality. At this point, a larger number of boards are modified to match and distributed for both extended testing of basic functionality (esp. memory stability) and development of software to access further functionality.

The following are the goals of this bringup:

  • EC code booting and controlling the power sequencing properly
  • CPU booting OFW
  • Reliable memory and internal SD operation from OFW
  • Reliable use of USB ports from OFW
  • Support for the display and keyboard from OFW and Linux
  • Support for reprogramming the EC SPI Flash from CPU

A2 Non-goals

We can go home even if these aren't working

  • Proper operation of audio interface
  • Proper operation of the wireless LAN
  • Camera
  • Linux

A2 Personnel

  • Wad (EE), Gary Chiang (EE), Richard (EC/OFW), Mitch (OFW), Paul (EC/Linux), from OLPC
  • Mars (PM), Eddie (PM), Beckham Chen (EE), from Quanta R&D