KB38xx/KB39xx: Difference between revisions
Jump to navigation
Jump to search
(Created page with "For KBC38xx/39xx: a) The system host communicates with 8051 via ECPCMD, ECPARG1, ECPARG2, and ECPARG3 registers in EC space offset 10h, 11h, 12h and 13h. A non-zero value of PC...") |
mNo edit summary |
||
Line 1: | Line 1: | ||
The system host communicates with 8051 via ECPCMD, ECPARG1, ECPARG2, and ECPARG3 registers in EC space offset 10h, 11h, 12h and 13h. A non-zero value of PCMD will cause the 8051 P0IE.0 interrupt to take place informing the 8051 firmware, and the 8051 firmware will take the responsibility to carry this command. | |||
and 13h. A non-zero value of PCMD will cause the 8051 P0IE.0 interrupt to take place | |||
informing the 8051 firmware, and the 8051 firmware will take the responsibility to carry this | |||
command. | |||
PCMD | == PCMD == | ||
'''01h''' Query 8051 Status | * '''01h''' Query 8051 Status | ||
'''02h''' Idle | * '''02h''' Idle | ||
'''03h''' Power down | * '''03h''' Power down | ||
'''04h''' Init flash write - The 8051 should return OK status to grant host system to write flash. After the completion | * '''04h''' Init flash write - The 8051 should return OK status to grant host system to write flash. After the completion of this command, the 8051 should enter IDLE mode or reset condition (set EC_PXCFG bit 0 = 1) to prevent from 8051 fetching instruction code. | ||
of this command, the 8051 should enter IDLE mode or reset condition (set EC_PXCFG bit 0 = 1) to prevent from 8051 fetching instruction code. | |||
entry: argument_1 - if 01 - update all flash content, including 8051 code region. | * '''entry''' : argument_1 - if 01 - update all flash content, including 8051 code region. | ||
if 02 - update system BIOS, not including 8051 code region. | if 02 - update system BIOS, not including 8051 code region. | ||
exit | * '''exit''' cmd 00h argument_1 if 00h: OK, the host can write flash now. | ||
if 01h: Error, no AC Adapter (the AC should be plugged during | if 01h: Error, no AC Adapter (the AC should be plugged during | ||
update flash). | update flash). | ||
if 02h: Error, unknown condition. | if 02h: Error, unknown condition. | ||
LPC | == LPC == | ||
There are two memory address segments that are decoded by | There are two memory address segments that are decoded by KB38xx/39xx | ||
# 000Y_0000h ~ 000F_FFFFh, where Y is selectable to C/E/Fh in register LFMSM(FE91h) | |||
LFMSM(FE91h). | # FFXX_0000h~FFFF_FFFFh, where XX is selectable to FE/FC/F8/F0/E0/C0/80h in register LFMSM(FE91h). |
Revision as of 15:54, 26 September 2010
The system host communicates with 8051 via ECPCMD, ECPARG1, ECPARG2, and ECPARG3 registers in EC space offset 10h, 11h, 12h and 13h. A non-zero value of PCMD will cause the 8051 P0IE.0 interrupt to take place informing the 8051 firmware, and the 8051 firmware will take the responsibility to carry this command.
PCMD
- 01h Query 8051 Status
- 02h Idle
- 03h Power down
- 04h Init flash write - The 8051 should return OK status to grant host system to write flash. After the completion of this command, the 8051 should enter IDLE mode or reset condition (set EC_PXCFG bit 0 = 1) to prevent from 8051 fetching instruction code.
- entry : argument_1 - if 01 - update all flash content, including 8051 code region.
if 02 - update system BIOS, not including 8051 code region.
- exit cmd 00h argument_1 if 00h: OK, the host can write flash now.
if 01h: Error, no AC Adapter (the AC should be plugged during update flash). if 02h: Error, unknown condition.
LPC
There are two memory address segments that are decoded by KB38xx/39xx
- 000Y_0000h ~ 000F_FFFFh, where Y is selectable to C/E/Fh in register LFMSM(FE91h)
- FFXX_0000h~FFFF_FFFFh, where XX is selectable to FE/FC/F8/F0/E0/C0/80h in register LFMSM(FE91h).