|
@@ -156,33 +156,8 @@ static const uint8_t prg_stage1_prepare[] = {
|
|
|
0x81, 0x2e, 0x30, 0x00, /* opcode: LOAD PCR3, f3 */
|
|
|
};
|
|
|
|
|
|
-static const uint8_t prg_stage2_prepare[] = {
|
|
|
- 0x00, 0x80, 0x00, 0x00, /* opcode: SYNC PCR0 */
|
|
|
- 0x00, 0x84, 0x00, 0x00, /* opcode: SYNC PCR1 */
|
|
|
- 0x00, 0x88, 0x00, 0x00, /* opcode: SYNC PCR2 */
|
|
|
- 0x00, 0x8c, 0x00, 0x00, /* opcode: SYNC PCR3 */
|
|
|
- 0x00, 0x90, 0x00, 0x00, /* opcode: SYNC PCR4 */
|
|
|
-};
|
|
|
-
|
|
|
-static const uint8_t prg_stage2_success[] = {
|
|
|
- 0x81, 0x02, 0x40, 0x14, /* opcode: LOAD PCR4, #<20B data> */
|
|
|
- 0x48, 0xfd, 0x95, 0x17, 0xe7, 0x54, 0x6b, 0x68, /* data */
|
|
|
- 0x92, 0x31, 0x18, 0x05, 0xf8, 0x58, 0x58, 0x3c, /* data */
|
|
|
- 0xe4, 0xd2, 0x81, 0xe0, /* data */
|
|
|
-};
|
|
|
-
|
|
|
-static const uint8_t prg_stage_fail[] = {
|
|
|
- 0x81, 0x01, 0x00, 0x14, /* opcode: LOAD v0, #<20B data> */
|
|
|
- 0xc0, 0x32, 0xad, 0xc1, 0xff, 0x62, 0x9c, 0x9b, /* data */
|
|
|
- 0x66, 0xf2, 0x27, 0x49, 0xad, 0x66, 0x7e, 0x6b, /* data */
|
|
|
- 0xea, 0xdf, 0x14, 0x4b, /* data */
|
|
|
- 0x81, 0x42, 0x30, 0x00, /* opcode: LOAD PCR3, v0 */
|
|
|
- 0x81, 0x42, 0x40, 0x00, /* opcode: LOAD PCR4, v0 */
|
|
|
-};
|
|
|
-
|
|
|
static const uint8_t vendor[] = "Guntermann & Drunck";
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* @brief read a bunch of data from MMC into memory.
|
|
|
*
|
|
@@ -1013,6 +988,30 @@ static int first_stage_init(void)
|
|
|
#endif
|
|
|
|
|
|
#ifdef CCDM_SECOND_STAGE
|
|
|
+static const uint8_t prg_stage2_prepare[] = {
|
|
|
+ 0x00, 0x80, 0x00, 0x00, /* opcode: SYNC PCR0 */
|
|
|
+ 0x00, 0x84, 0x00, 0x00, /* opcode: SYNC PCR1 */
|
|
|
+ 0x00, 0x88, 0x00, 0x00, /* opcode: SYNC PCR2 */
|
|
|
+ 0x00, 0x8c, 0x00, 0x00, /* opcode: SYNC PCR3 */
|
|
|
+ 0x00, 0x90, 0x00, 0x00, /* opcode: SYNC PCR4 */
|
|
|
+};
|
|
|
+
|
|
|
+static const uint8_t prg_stage2_success[] = {
|
|
|
+ 0x81, 0x02, 0x40, 0x14, /* opcode: LOAD PCR4, #<20B data> */
|
|
|
+ 0x48, 0xfd, 0x95, 0x17, 0xe7, 0x54, 0x6b, 0x68, /* data */
|
|
|
+ 0x92, 0x31, 0x18, 0x05, 0xf8, 0x58, 0x58, 0x3c, /* data */
|
|
|
+ 0xe4, 0xd2, 0x81, 0xe0, /* data */
|
|
|
+};
|
|
|
+
|
|
|
+static const uint8_t prg_stage_fail[] = {
|
|
|
+ 0x81, 0x01, 0x00, 0x14, /* opcode: LOAD v0, #<20B data> */
|
|
|
+ 0xc0, 0x32, 0xad, 0xc1, 0xff, 0x62, 0x9c, 0x9b, /* data */
|
|
|
+ 0x66, 0xf2, 0x27, 0x49, 0xad, 0x66, 0x7e, 0x6b, /* data */
|
|
|
+ 0xea, 0xdf, 0x14, 0x4b, /* data */
|
|
|
+ 0x81, 0x42, 0x30, 0x00, /* opcode: LOAD PCR3, v0 */
|
|
|
+ 0x81, 0x42, 0x40, 0x00, /* opcode: LOAD PCR4, v0 */
|
|
|
+};
|
|
|
+
|
|
|
static int second_stage_init(void)
|
|
|
{
|
|
|
static const char mac_suffix[] = ".mac";
|