EC 1.75 Firmware

From OLPC
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

C1 Prototype

Ver: 0.3.04

Ver: 0.3.03

Ver: 0.3.02

  • Work around PWR_LMT_ON glitch when charging starts
  • Increase the min system voltage to 7.45V

Ver: 0.3.01

  • Drop max system voltage to 7.4V
  • Restore lost ACR print in battery 'b3' debug
  • Give low battery power off command time to complete
  • Make a full battery SOC = 100%
  • Clear battery stats on battery reset
  • Increase max power draw to 24W/25W
  • Don't print MPPT enabled/disabled twice
  • Add bat debug print of the PWR_LMT_ON signal for wad
  • Add missing default settings for 0x1c1
  • add code to allow a power button press in suspend to interrupt SoC
  • Augment battery debug info with whether laptop is sleeping or not.
  • Implement ability to interrupt SoC with EC_IRQ#
  • Fix delay loop timing (slightly)
  • Sync sdcc makefile's file list with keil makefile
  • Calibrate serial baud rate at boot
  • Retune 1ms tick, now we're properly using external crystal
  • Fix CRY32CR settings to use external oscillator
  • Add an incrementing build index to developer-build version strings

Ver: 0.3.00

  • Fully implement suspend power blinking
  • rename *_SLEEP_IND functions to *_VCXO_EN, and invert level
  • Rework SDI host (ACK state) handling
  • Enable touchpad by default for < 0x1B1
  • Introduce workaround for ljmp bug
  • Fully init the gpwu on every reboot

Download: 0.3.00

B1 Prototype

Ver: 0.2.04

Download: 0.2.04

  • Workaround for EC hang after EDI reset.
  • Add support for 0x1b4 boards
  • Use SLEEP_IND input to put the EC into stop mode when SoC suspends
  • Differentiate between manual and automatic enter_stop_mode() calls
  • Fix watchdog duration to compensate for interrupt at half the configured timeout.

for that.

  • Replace double-stop hack w/ EnE's fix for powering down A/D module
  • Add check against low-valued stack pointer bug
  • Do a more complete init/deinit of the ADC module
  • Disable PS/2 clock when not using PS/2
  • Renumber a few (unused) EC commands to fix conflicts with previous generations.
  • Fix keil environment stack bug
  • New Vin scaled and battery power min, max, reset commands
  • Remove dead code from MPPT dropping support for < 0x1b3 boards
  • Add UART RX to wakeup signals
  • Make other debug output integrate with MPPT debug output
  • makefile tweak
  • Enhanced MPPT (plimit_v2) via LV_SET.
  • Makefile update to reserve EC flags area
  • Add power limit to battery debug display
  • Remove usage of legacy TurnOffSystemPower
  • Drop SDI upstream packets if host is not ready
  • Fix compile breakage if the PS/2 code is removed
  • Format SDI debug output so its easier to read
  • Clear cmdresp queue when starting up SDI
  • Make power sequencing come up in TURN_OFF mode
  • Enable EC flags
  • Handle OLS# moving on > 1B2 board IDs
  • Add support board 1B3 and LV_SET on PWM 2
  • Fast resolve of external ACR changes on battery insert
  • modify calculation of EnE checksum to exclude new tag area
  • Fix board identification to allow full use of 64 different id values

Ver: 0.2.03

  • Several new monitor debugging commands
  • Support and enable power limit v2 circuitry
  • Fix charger functions to update last_charge_current
  • Re-Init battery debug timer on settings change
  • Make sure runin is disabled on startup
  • Disable battery LED output when we sleep
  • Prepare for PS/2 code removal
  • Add more power sequencing debug output
  • implement CMD_SET_DCON_POWER, to power the DCON down

Ver: 0.2.02

Ver: 0.2.01

Ver: 0.2.00

(seen in OFW svn 2350 no other data yet)

Ver: 0.1.04

Download: 0.1.04

  • Fix broken charging on A2 boards.

Ver: 0.1.03

Download: 0.1.03

  • Decrease the OLS sample rate to 500ms
  • Rework the OLS SMT test for OFW control
  • Make B phase boards no-op the KBD power GPIO.

(Also functions on A3).

(Incompatible with A2, causes excess charge voltage).

A3 Prototype

Ver: 0.1.02

Download: 0.1.02

  • OFW error: "rxavail = 4" fix
  • Fix building with io as macros turned off
  • Support reading the PWR_LMT_ON signal
  • Add SMT and ASSEMBLY testing modes to OLS
  • Add support for auto power up after reflash.
  • Report power button presses to the soc via an event
  • Make keyboard/touchpad debug output runtime controllable

Ver: 0.1.01

Download: 0.1.01

  • Keep OLS LED from blinking
  • Fix small error in keymaping for mechanical keyboard
  • Rename ALS to OLS per wad's request
  • update to latest development version naming scheme
  • notify the kernel when we artifically disable charging
  • implement a new upstream channel for command error reporting
  • implement support for battery status event reporting
  • implement SOC change event reporting
  • fix AC status change reporting
  • fix event reporting for abnormal battery conditions
  • Add keymapping.csv into reppository

Ver: 0.0.11

Download: 0.0.11

  • fix missing battery current in mA calculation
  • reduce nominal input power to about 18 watts
  • fix sporadic ISL communication errors
  • fix MAIN_PWR to VCORE enable timing
  • drop I1 from mppt debug print
  • add EC cmd to get the EC version hash
  • ambient light sensor support
  • fix CHG statement in LiFe debug print
  • fix missing battery LED state if MPPT stops charging
  • add serial EC boot message

Ver: 0.0.10 (never released)

  • fix GPWU register save/restore
  • don't clear the ADC interrupt flag
  • update ambient light sensor pins for A3
  • add A3 board id
  • new charger chip support
  • solar maximum power point tracking merge from XO-1.5

A2 Prototype

Ver: 0.0.9

Download: 0.0.9

  • reset keyboard module state when powering up the board
  • add quick blink when power button has been debounced
  • add ambient light sensor prototype code (requires custom hardware, or wait for A3)
  • implement CMD_POWER_CYCLE

Ver: 0.0.8

Download: 0.0.8

  • fix typo affecting initial state of EN_3_3V_SOC
  • disable power controls during stop mode (safe, since we know the board is off at this point), to reduce leakage
  • add git hash to version info
  • fix handling of uppercase hex digits in tohex(), and "make format"
  • disable more internal clocks, guided by new EnE docs
  • add CMD_RESET_EC and CMD_RESET_EC_SOFT protocol commands, for resetting the 8051 core, and the whole chip, respectively.
  • add 'r'eset command, and rearrange watchdog exercise commands.
  • use internal oscillator for watchdog, so it runs in stop mode, and add watchdog_reboot() routine.
  • fix bug in enable/disable_EN_SD[12] macros
  • turn off trim_tune() debug output, and enable stop mode.
  • turn off stop mode debug output
  • disable the spi host controller in powerdown state, to reduce leakage.
  • add commands for more watchdog control, for debug
  • reintroduce failsave recover loop at top of main.
  • configure the EDI CS input to wake us, so we can program the EC when in STOP mode.
  • make the AC input wakeup work, by switching to edge-triggered from toggle-triggered. toggle-triggered should have worked.
  • get rid of extra wakeup PF flag, by setting GPIO2D (TP167, used for the gpt3 timer output heartbeat) to output-only. also ifdef the stop-mode debug code. AC jack wakeups are still disabled.
  • Add delay prior to entering stop mode.
  • Make main_io3731 the default main.c via symlink
  • fix initial copyright

Ver: 0.0.7

  • Internal non-released test version.

Ver: 0.0.6

Download: 0.0.6

  • Fix touchpad

Ver: 0.0.5

Download: 0.0.5

  • Initial cut at adding stop mode. disabled by default for now.
  • fix the clearing of the power-off command flag
  • Shorten the cycle_led times.
  • add a bunch of debugging output for the trim registers
  • add io support for the RESTORE pin, and an sfr for the PCON register. also formatting.
  • Enable board ID reading
  • Wait for the flash trim read to complete before reading the data
  • Fix battery error LED state not set on battery error

Ver: 0.0.4

Download: 0.0.4

  • Enable battery charging
  • Implement api for poweroff add debug code for showing power states.

Ver: 0.0.2

Download: 0.0.2

  • Enable/Fix EC<->Host communication
  • Enable/Fix Keyboard stream.

Source