summaryrefslogtreecommitdiff
path: root/utils/imxtools/sbtools/sb1.h
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2012-12-16 01:52:19 +0100
committerAmaury Pouly <amaury.pouly@gmail.com>2012-12-16 01:52:19 +0100
commit4fc3397c5b79811dff1205a5d42ac1e573f990ab (patch)
tree9ac6ea6c194787d603d62256dbced48948b71db0 /utils/imxtools/sbtools/sb1.h
parent51604e84459be926ae1375cf940a832635fd12c2 (diff)
downloadrockbox-4fc3397c5b79811dff1205a5d42ac1e573f990ab.tar.gz
rockbox-4fc3397c5b79811dff1205a5d42ac1e573f990ab.zip
imxtools/sbtools: implement sb1 write
Change-Id: Ic36d3a8fcf09350dff5988eb860d76eb11608cc2
Diffstat (limited to 'utils/imxtools/sbtools/sb1.h')
-rw-r--r--utils/imxtools/sbtools/sb1.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/utils/imxtools/sbtools/sb1.h b/utils/imxtools/sbtools/sb1.h
index 8d8c2d2296..0a0c9fe69c 100644
--- a/utils/imxtools/sbtools/sb1.h
+++ b/utils/imxtools/sbtools/sb1.h
@@ -66,9 +66,14 @@ struct sb1_cmd_header_t
66#define SB1_CMD_DATATYPE(cmd) (((cmd) >> 4) & 0x3) 66#define SB1_CMD_DATATYPE(cmd) (((cmd) >> 4) & 0x3)
67#define SB1_CMD_BOOT(cmd) ((cmd) & 0xf) 67#define SB1_CMD_BOOT(cmd) ((cmd) & 0xf)
68 68
69#define SB1_MK_CMD(boot,data,bytes,crit,size) \
70 ((boot) | (data) << 4 | (bytes) << 6 | (crit) << 20 | (size) << 21)
71
69#define SB1_ADDR_SDRAM_CS(addr) ((addr) & 0x3) 72#define SB1_ADDR_SDRAM_CS(addr) ((addr) & 0x3)
70#define SB1_ADDR_SDRAM_SZ(addr) ((addr) >> 16) 73#define SB1_ADDR_SDRAM_SZ(addr) ((addr) >> 16)
71 74
75#define SB1_MK_ADDR_SDRAM(cs,sz) ((cs) | (sz) << 16)
76
72int sb1_sdram_size_by_index(int index); // returns - 1 on error 77int sb1_sdram_size_by_index(int index); // returns - 1 on error
73int sb1_sdram_index_by_size(int size); // returns -1 on error 78int sb1_sdram_index_by_size(int size); // returns -1 on error
74 79
@@ -105,6 +110,7 @@ struct sb1_inst_t
105 // <union> 110 // <union>
106 void *data; 111 void *data;
107 uint32_t pattern; 112 uint32_t pattern;
113 uint32_t argument;
108 // </union> 114 // </union>
109}; 115};
110 116
@@ -119,6 +125,7 @@ struct sb1_file_t
119 struct sb1_inst_t *insts; 125 struct sb1_inst_t *insts;
120 void *userdata; 126 void *userdata;
121 int userdata_size; 127 int userdata_size;
128 union xorcrypt_key_t key[2];
122}; 129};
123 130
124enum sb1_error_t 131enum sb1_error_t
@@ -146,6 +153,8 @@ struct sb1_file_t *sb1_read_file_ex(const char *filename, size_t offset, size_t
146struct sb1_file_t *sb1_read_memory(void *buffer, size_t size, void *u, 153struct sb1_file_t *sb1_read_memory(void *buffer, size_t size, void *u,
147 sb1_color_printf printf, enum sb1_error_t *err); 154 sb1_color_printf printf, enum sb1_error_t *err);
148 155
156void sb1_get_default_key(struct crypto_key_t *key);
157
149void sb1_dump(struct sb1_file_t *file, void *u, sb1_color_printf printf); 158void sb1_dump(struct sb1_file_t *file, void *u, sb1_color_printf printf);
150void sb1_free(struct sb1_file_t *file); 159void sb1_free(struct sb1_file_t *file);
151 160