21 read data from user-flash, 22 clear all data in user-flash – ADLINK CoreExpress-ECO2 User Manual
Page 28

4.21 Read Data from User-Flash
This command reads data from the selected address of the SMC-Flash. Up to 32 Bytes can be written
in a single block access. The number of bytes to write must be a multiple of 4.
START SMC_addr ACK command ACK START (Repeat) SMC_addr+1 ACK length ACK(C)
Data0
ACK(C) …
ACK(C) Data_n
ACK(C) STOP
Table 4.21.1 SMC transmitter format of the Read Data from User-Flash Command
ITEM
DESCRIPTION
START
SM-bus start condition
SMC_addr
01010001b = 0x51 (Read access to SMC)
ACK
SM-bus acknowledge condition generated by receiver
command
0x42 = “Read Data from User-Flash” Command code
length
Number of Data_Bytes to write
Data0..n
4-32 Data-Bytes
STOP
SM-bus stop condition
Table 4.21.2 Explanation of Table 4.21.1
4.22 Clear all Data in User-Flash
This single command clears the total USER-Area of the SMC-Flash. To prevent unintentional erase of
the User-Flash two Magic Bytes must be send with this command (see Table 4.22.2). This command
takes up to 50ms of time. During this time the SMC is not accessible. To detect if the SMC is busy
use a single read with 0xFF as command (like Read BIOS Flags, but use 0xFF instead of 0x35). If the
SMC responds with 0xF0, the SMC is ready for next steps.
START
SMC_addr ACK command ACK length ACK Magic_1 ACK Magic_2 ACK
STOP
Table 4.22.1 SMC receiver format of the Clear all Data in User-Flash Command Code
ITEM
DESCRIPTION
START
SM-bus start condition
SMC_addr
01010000b = 0x50 (8-bit) (Write access to SMC)
ACK
SM-bus acknowledge condition generated by receiver
command
0x43 = “Clear all Data in USER-Area” Command code
length
0x02 = Length of this Command
Magic_1
0xAE = Magic Byte 1
Magic_2
0xCD = Magic Byte 2
STOP
SM-bus stop condition