Lines Matching refs:cldev
55 * @cldev: me clients device
57 static void number_of_connections(struct mei_cl_device *cldev)
59 if (cldev->me_cl->props.max_number_of_connections > 1)
60 cldev->do_match = 0;
66 * @cldev: me clients device
68 static void blacklist(struct mei_cl_device *cldev)
70 cldev->do_match = 0;
76 * @cldev: me clients device
78 static void whitelist(struct mei_cl_device *cldev)
80 cldev->do_match = 1;
108 static int mei_osver(struct mei_cl_device *cldev)
131 return __mei_cl_send(cldev->cl, buf, size, 0, mode);
138 static int mei_fwver(struct mei_cl_device *cldev)
151 ret = __mei_cl_send(cldev->cl, (u8 *)&req, sizeof(req), 0,
154 dev_info(&cldev->dev, "Could not send ReqFWVersion cmd ret = %d\n", ret);
159 bytes_recv = __mei_cl_recv(cldev->cl, buf, sizeof(buf), NULL, 0,
160 cldev->bus->timeouts.mkhi_recv);
166 dev_info(&cldev->dev, "Could not read FW version ret = %d\n", bytes_recv);
172 memset(cldev->bus->fw_ver, 0, sizeof(cldev->bus->fw_ver));
176 dev_dbg(&cldev->dev, "FW version%d %d:%d.%d.%d.%d\n",
181 cldev->bus->fw_ver[i].platform = fwver->ver[i].platform;
182 cldev->bus->fw_ver[i].major = fwver->ver[i].major;
183 cldev->bus->fw_ver[i].minor = fwver->ver[i].minor;
184 cldev->bus->fw_ver[i].hotfix = fwver->ver[i].hotfix;
185 cldev->bus->fw_ver[i].buildno = fwver->ver[i].buildno;
187 cldev->bus->fw_ver_received = 1;
194 static int mei_gfx_memory_ready(struct mei_cl_device *cldev)
203 dev_dbg(&cldev->dev, "Sending memory ready command\n");
204 return __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0,
208 static void mei_mkhi_fix(struct mei_cl_device *cldev)
213 if (!cldev->bus->fw_f_fw_ver_supported &&
214 !cldev->bus->hbm_f_os_supported)
217 ret = mei_cldev_enable(cldev);
221 if (cldev->bus->fw_f_fw_ver_supported) {
222 ret = mei_fwver(cldev);
224 dev_info(&cldev->dev, "FW version command failed %d\n",
228 if (cldev->bus->hbm_f_os_supported) {
229 ret = mei_osver(cldev);
231 dev_info(&cldev->dev, "OS version command failed %d\n",
234 mei_cldev_disable(cldev);
237 static void mei_gsc_mkhi_ver(struct mei_cl_device *cldev)
245 if (!cldev->bus->fw_f_fw_ver_supported || cldev->bus->fw_ver_received)
248 ret = mei_cldev_enable(cldev);
252 ret = mei_fwver(cldev);
254 dev_info(&cldev->dev, "FW version command failed %d\n", ret);
255 mei_cldev_disable(cldev);
258 static void mei_gsc_mkhi_fix_ver(struct mei_cl_device *cldev)
263 if (!cldev->bus->fw_f_fw_ver_supported &&
264 cldev->bus->pxp_mode != MEI_DEV_PXP_INIT)
267 ret = mei_cldev_enable(cldev);
271 if (cldev->bus->pxp_mode == MEI_DEV_PXP_INIT) {
272 ret = mei_gfx_memory_ready(cldev);
274 dev_err(&cldev->dev, "memory ready command failed %d\n", ret);
276 dev_dbg(&cldev->dev, "memory ready command sent\n");
277 cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP;
283 ret = mei_fwver(cldev);
285 dev_info(&cldev->dev, "FW version command failed %d\n",
288 mei_cldev_disable(cldev);
295 * @cldev: me clients device
300 static void mei_wd(struct mei_cl_device *cldev)
302 struct pci_dev *pdev = to_pci_dev(cldev->dev.parent);
307 cldev->me_cl->props.protocol_version = 0x2;
309 cldev->do_match = 1;
312 static inline void mei_wd(struct mei_cl_device *cldev) {}
445 * @cldev: me client device (nfc)
447 static void mei_nfc(struct mei_cl_device *cldev)
456 bus = cldev->bus;
477 dev_err(&cldev->dev, "Can't connect to the NFC INFO ME ret = %d\n",
492 dev_err(&cldev->dev, "Can't get the NFC interface version ret = %d\n",
498 strscpy(cldev->name, radio_name, sizeof(cldev->name));
514 cldev->do_match = 0;
516 dev_dbg(bus->dev, "end of fixup match = %d\n", cldev->do_match);
522 * @cldev: me clients device
524 static void vt_support(struct mei_cl_device *cldev)
526 if (cldev->me_cl->props.vt_supported == 1)
527 cldev->do_match = 1;
533 * @cldev: me clients device
535 static void pxp_is_ready(struct mei_cl_device *cldev)
537 struct mei_device *bus = cldev->bus;
542 cldev->do_match = 1;
545 cldev->do_match = 0;
555 void (*hook)(struct mei_cl_device *cldev);
572 * @cldev: me client device
574 void mei_cl_bus_dev_fixup(struct mei_cl_device *cldev)
577 const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl);
585 f->hook(cldev);