103 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			103 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include "os_types.h"
							 | 
						||
| 
								 | 
							
								#include "iot_io.h"
							 | 
						||
| 
								 | 
							
								#include "dbg_io.h"
							 | 
						||
| 
								 | 
							
								#include "efuse.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								typedef struct {
							 | 
						||
| 
								 | 
							
								    uint8_t  name[30];
							 | 
						||
| 
								 | 
							
								    uint16_t addr;
							 | 
						||
| 
								 | 
							
								} efuse_table_entry;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								efuse_table_entry efuse_table[] = {
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 0},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 1},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 2},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 3},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 4},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 5},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 6},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 7},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 8},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 9},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 10},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 11},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 12},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 13},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 14},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 15},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 16},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 17},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 18},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 19},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 20},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 21},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 22},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 23},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 24},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 25},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 26},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 27},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 28},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 29},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 30},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 31},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 32},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 33},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 34},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 35},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 36},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 37},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 38},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 39},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 40},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 41},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 42},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 43},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 44},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 45},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 46},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 47},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 48},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 49},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 50},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 51},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 52},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 53},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 54},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 55},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 56},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 57},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 58},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 59},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 60},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 61},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 62},
							 | 
						||
| 
								 | 
							
								    {"CHIP ID", 63},
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								void efuse_dump()
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    uint32_t index = 0;
							 | 
						||
| 
								 | 
							
								    uint32_t offset = 0;
							 | 
						||
| 
								 | 
							
								    uint32_t val = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      for (index = 0; index < sizeof(efuse_table)/sizeof(efuse_table_entry); index++){
							 | 
						||
| 
								 | 
							
								        offset = efuse_table[index].addr;
							 | 
						||
| 
								 | 
							
								        offset = offset << 2;
							 | 
						||
| 
								 | 
							
								        val =  efuse_read(offset);
							 | 
						||
| 
								 | 
							
								        iot_printf("%s, offset: 0x%X, val: 0x%08X\n", efuse_table[index].name, offset, val);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								int main(void)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    dbg_uart_init();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    efuse_dump();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    while(1);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return 0;
							 | 
						||
| 
								 | 
							
								}
							 |