浏览代码

Fix auto_update for MCC200 board.

The invocation of do_auto_update() is moved to the end of the
misc_init_r() function, after the flash mappings have been
initialized. Please find attached a patch that implements that
change.

Also correct the decoding of the keypad status. With this update, the
key that will trigger the update is Column 2, Row 2.
Wolfgang Denk 18 年之前
父节点
当前提交
787fa15860
共有 2 个文件被更改,包括 7 次插入8 次删除
  1. 4 4
      board/mcc200/auto_update.c
  2. 3 4
      board/mcc200/mcc200.c

+ 4 - 4
board/mcc200/auto_update.c

@@ -121,10 +121,10 @@ struct flash_layout aufl_layout[AU_MAXFILES] = { \
 #define I2C_PSOC_KEYPAD_ADDR	0x53
 
 /* keypad mask */
-#define KEYPAD_ROW	3
-#define KEYPAD_COL	3
-#define KEYPAD_MASK_LO	((1<<(KEYPAD_COL-1+(KEYPAD_ROW*4-4)))&0xFF)
-#define KEYPAD_MASK_HI	((1<<(KEYPAD_COL-1+(KEYPAD_ROW*4-4)))>>8)
+#define KEYPAD_ROW	2
+#define KEYPAD_COL	2
+#define KEYPAD_MASK_LO	((1<<(KEYPAD_COL-1+(KEYPAD_ROW*3-3)))&0xFF)
+#define KEYPAD_MASK_HI	((1<<(KEYPAD_COL-1+(KEYPAD_ROW*3-3)))>>8)
 
 /* externals */
 extern int fat_register_device(block_dev_desc_t *, int);

+ 3 - 4
board/mcc200/mcc200.c

@@ -228,10 +228,6 @@ int misc_init_r (void)
 {
 	ulong flash_sup_end, snum;
 
-#ifdef CONFIG_AUTO_UPDATE
-	/* this has priority over all else */
-	do_auto_update();
-#endif
 	/*
 	 * Adjust flash start and offset to detected values
 	 */
@@ -294,6 +290,9 @@ int misc_init_r (void)
 		flash_info[0].sector_count = snum;
 	}
 
+#ifdef CONFIG_AUTO_UPDATE
+        do_auto_update();
+#endif
 	return (0);
 }