ver_info
} else if (iqs269->ver_info.fw_num < IQS269_VER_INFO_FW_NUM_3) {
if (iqs269->ver_info.fw_num < IQS269_VER_INFO_FW_NUM_3)
iqs269->ver_info.fw_num < IQS269_VER_INFO_FW_NUM_3) {
&iqs269->ver_info, sizeof(iqs269->ver_info));
if (iqs269->ver_info.prod_num != IQS269_VER_INFO_PROD_NUM) {
iqs269->ver_info.prod_num);
struct iqs269_ver_info ver_info;
struct iqs626_ver_info ver_info;
error = regmap_raw_read(iqs626->regmap, IQS626_VER_INFO, &ver_info,
sizeof(ver_info));
if (ver_info.prod_num != IQS626_VER_INFO_PROD_NUM) {
ver_info.prod_num);
struct iqs7211_ver_info ver_info;
&iqs7211->ver_info,
sizeof(iqs7211->ver_info));
if (le16_to_cpu(iqs7211->ver_info.prod_num) != dev_desc->prod_num) {
le16_to_cpu(iqs7211->ver_info.prod_num));
le16_to_cpu(iqs7211->ver_info.prod_num),
le32_to_cpu(iqs7211->ver_info.patch),
le16_to_cpu(iqs7211->ver_info.major),
le16_to_cpu(iqs7211->ver_info.minor),
if ((wl->ver_info.fw_coex & 0xffff0000) !=
bt->ver_info.fw = le32_to_cpu(pver->v7.fw_ver);
bt->ver_info.fw_coex = le32_get_bits(pver->v7.coex_ver,
bt->ver_info.fw = le32_to_cpu(pver->v1.fw_ver);
bt->ver_info.fw_coex = le32_get_bits(pver->v1.coex_ver,
wl->ver_info.fw_coex = prpt->v1.wl_fw_coex_ver;
wl->ver_info.fw = prpt->v1.wl_fw_ver;
wl->ver_info.fw_coex = le32_to_cpu(prpt->v4.wl_fw_info.cx_ver);
wl->ver_info.fw = le32_to_cpu(prpt->v4.wl_fw_info.fw_ver);
wl->ver_info.fw_coex = le32_to_cpu(prpt->v5.rpt_info.cx_ver);
wl->ver_info.fw = le32_to_cpu(prpt->v5.rpt_info.fw_ver);
wl->ver_info.fw_coex = le32_to_cpu(prpt->v105.rpt_info.cx_ver);
wl->ver_info.fw = le32_to_cpu(prpt->v105.rpt_info.fw_ver);
wl->ver_info.fw_coex = le32_to_cpu(prpt->v7.rpt_info.cx_ver);
wl->ver_info.fw = le32_to_cpu(prpt->v7.rpt_info.fw_ver);
wl->ver_info.fw_coex = le32_to_cpu(prpt->v8.rpt_info.cx_ver);
wl->ver_info.fw = le32_to_cpu(prpt->v8.rpt_info.fw_ver);
bt_fw_ver = bt->ver_info.fw & 0xffff;
ver_main = FIELD_GET(GENMASK(31, 24), wl->ver_info.fw_coex);
ver_sub = FIELD_GET(GENMASK(23, 16), wl->ver_info.fw_coex);
ver_hotfix = FIELD_GET(GENMASK(15, 8), wl->ver_info.fw_coex);
id_branch = FIELD_GET(GENMASK(7, 0), wl->ver_info.fw_coex);
(wl->ver_info.fw_coex >= chip->wlcx_desired ?
bt->ver_info.fw_coex,
(bt->ver_info.fw_coex >= ver->bt_desired ?
if (bt->enable.now && bt->ver_info.fw == 0)
ver_main = FIELD_GET(GENMASK(31, 24), wl->ver_info.fw);
ver_sub = FIELD_GET(GENMASK(23, 16), wl->ver_info.fw);
ver_hotfix = FIELD_GET(GENMASK(15, 8), wl->ver_info.fw);
id_branch = FIELD_GET(GENMASK(7, 0), wl->ver_info.fw);
bt->ver_info.fw, bt->run_patch_code ? "patch" : "ROM");
u32 ver_main = FIELD_GET(GENMASK(31, 24), wl->ver_info.fw_coex);
struct rtw89_btc_wl_ver_info ver_info;
struct rtw89_btc_bt_ver_info ver_info;
struct ver_info drv_ver;
struct ver_info bios_ver;