Lines Matching refs:module
101 struct aes_module *const module, in aes_init() argument
108 Assert(module); in aes_init()
117 aes_set_config(module,hw, config); in aes_init()
125 void aes_enable(struct aes_module *const module) in aes_enable() argument
127 Assert(module); in aes_enable()
128 Assert(module->hw); in aes_enable()
129 module->hw->CTRLA.reg |= AES_CTRLA_ENABLE; in aes_enable()
137 void aes_disable(struct aes_module *const module) in aes_disable() argument
139 Assert(module); in aes_disable()
140 Assert(module->hw); in aes_disable()
143 module->hw->INTENCLR.reg = AES_INTENCLR_MASK; in aes_disable()
145 module->hw->INTFLAG.reg = AES_INTFLAG_MASK; in aes_disable()
147 module->hw->CTRLA.reg &= (~AES_CTRLA_ENABLE); in aes_disable()
158 struct aes_module *const module, in aes_set_config() argument
167 Assert(module); in aes_set_config()
169 module->opmode = config->opmode; in aes_set_config()
170 module->hw = hw; in aes_set_config()
171 module->key_size = config->key_size; in aes_set_config()
172 module->cfb_size = config->cfb_size; in aes_set_config()
184 aes_disable(module); in aes_set_config()
186 aes_enable(module); in aes_set_config()
201 struct aes_module *const module, in aes_write_key() argument
207 Assert(module); in aes_write_key()
208 Assert(module->hw); in aes_write_key()
211 switch (module->key_size) { in aes_write_key()
229 module->hw->KEYWORD[i].reg = *key; in aes_write_key()
242 struct aes_module *const module, in aes_write_init_vector() argument
248 Assert(module); in aes_write_init_vector()
249 Assert(module->hw); in aes_write_init_vector()
250 Assert(module->opmode != AES_ECB_MODE); in aes_write_init_vector()
253 module->hw->INTVECTV[i].reg = *vector; in aes_write_init_vector()
265 struct aes_module *const module, in aes_write_input_data() argument
271 Assert(module); in aes_write_input_data()
272 Assert(module->hw);; in aes_write_input_data()
275 module->hw->DATABUFPTR.reg = 0; in aes_write_input_data()
276 if (module->opmode == AES_CFB_MODE in aes_write_input_data()
277 && module->cfb_size == AES_CFB_SIZE_64){ in aes_write_input_data()
279 module->hw->INDATA.reg = *input_data_buffer; in aes_write_input_data()
282 } else if (module->opmode == AES_CFB_MODE in aes_write_input_data()
283 && (module->cfb_size == AES_CFB_SIZE_32 || module->cfb_size == AES_CFB_SIZE_16)){ in aes_write_input_data()
284 module->hw->INDATA.reg = *input_data_buffer; in aes_write_input_data()
287 module->hw->INDATA.reg = *input_data_buffer; in aes_write_input_data()
303 struct aes_module *const module, in aes_read_output_data() argument
309 Assert(module); in aes_read_output_data()
310 Assert(module->hw); in aes_read_output_data()
313 module->hw->DATABUFPTR.reg = 0; in aes_read_output_data()
314 if (module->opmode == AES_CFB_MODE in aes_read_output_data()
315 && module->cfb_size == AES_CFB_SIZE_64){ in aes_read_output_data()
317 *output_data_buffer = module->hw->INDATA.reg; in aes_read_output_data()
320 } else if (module->opmode == AES_CFB_MODE in aes_read_output_data()
321 && (module->cfb_size == AES_CFB_SIZE_32 || module->cfb_size == AES_CFB_SIZE_16)){ in aes_read_output_data()
322 *output_data_buffer = module->hw->INDATA.reg; in aes_read_output_data()
325 *output_data_buffer = module->hw->INDATA.reg; in aes_read_output_data()