Lines Matching refs:mdata

109 static int in_trial_state(struct fwu_mdata *mdata)
115 active_bank = mdata->active_index;
116 img_entry = &mdata->img_entry[0];
146 * @mdata: FWU metadata structure
151 static int fwu_sync_mdata(struct fwu_mdata *mdata, int part)
153 void *buf = &mdata->version;
157 err = fwu_sync_mdata(mdata, SECONDARY_PART);
168 mdata->crc32 = crc32(0, buf, sizeof(*mdata) - sizeof(u32));
170 err = fwu_write_mdata(g_dev, mdata, part == PRIMARY_PART);
172 log_err("Unable to write %s mdata\n",
178 memcpy(&g_mdata, mdata, sizeof(struct fwu_mdata));
183 static inline int mdata_crc_check(struct fwu_mdata *mdata)
185 void *buf = &mdata->version;
186 u32 calc_crc32 = crc32(0, buf, sizeof(*mdata) - sizeof(u32));
188 return calc_crc32 == mdata->crc32 ? 0 : -EINVAL;
193 * @mdata: Output FWU metadata read or NULL
201 int fwu_get_mdata(struct fwu_mdata *mdata)
210 /* if mdata already read and ready */
214 /* else read, verify and, if needed, fix mdata */
224 log_debug("mdata : %s crc32 failed\n", i ? "secondary" : "primary");
253 log_debug("mdata : %s write failed\n", i ? "secondary" : "primary");
259 if (!err && mdata)
260 memcpy(mdata, parts_mdata[0], sizeof(struct fwu_mdata));
278 struct fwu_mdata *mdata = &g_mdata;
284 *active_idx = mdata->active_index;
305 struct fwu_mdata *mdata = &g_mdata;
316 mdata->previous_active_index = mdata->active_index;
317 mdata->active_index = active_idx;
323 ret = fwu_sync_mdata(mdata, BOTH_PARTS);
349 struct fwu_mdata *mdata = &g_mdata;
373 &mdata->img_entry[i].image_type_uuid)) {
374 img_entry = &mdata->img_entry[i];
410 struct fwu_mdata *mdata = &g_mdata;
416 cur_active_index = mdata->active_index;
417 mdata->active_index = mdata->previous_active_index;
418 mdata->previous_active_index = cur_active_index;
424 ret = fwu_sync_mdata(mdata, BOTH_PARTS);
451 struct fwu_mdata *mdata = &g_mdata;
455 img_entry = &mdata->img_entry[0];
464 ret = fwu_sync_mdata(mdata, BOTH_PARTS);