Lines Matching refs:cldev

57 static void number_of_connections(struct mei_cl_device *cldev)  in number_of_connections()  argument
59 if (cldev->me_cl->props.max_number_of_connections > 1) in number_of_connections()
60 cldev->do_match = 0; in number_of_connections()
68 static void blacklist(struct mei_cl_device *cldev) in blacklist() argument
70 cldev->do_match = 0; in blacklist()
78 static void whitelist(struct mei_cl_device *cldev) in whitelist() argument
80 cldev->do_match = 1; in whitelist()
110 static int mei_osver(struct mei_cl_device *cldev) in mei_osver() argument
133 return __mei_cl_send_timeout(cldev->cl, buf, size, 0, mode, MKHI_SEND_MAX_TIMEOUT_MSEC); in mei_osver()
140 static int mei_fwver(struct mei_cl_device *cldev) in mei_fwver() argument
153 ret = __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0, in mei_fwver()
156 dev_info(&cldev->dev, "Could not send ReqFWVersion cmd ret = %d\n", ret); in mei_fwver()
161 bytes_recv = __mei_cl_recv(cldev->cl, buf, sizeof(buf), NULL, 0, in mei_fwver()
162 cldev->bus->timeouts.mkhi_recv); in mei_fwver()
168 dev_info(&cldev->dev, "Could not read FW version ret = %d\n", bytes_recv); in mei_fwver()
174 memset(cldev->bus->fw_ver, 0, sizeof(cldev->bus->fw_ver)); in mei_fwver()
178 dev_dbg(&cldev->dev, "FW version%d %d:%d.%d.%d.%d\n", in mei_fwver()
183 cldev->bus->fw_ver[i].platform = fwver->ver[i].platform; in mei_fwver()
184 cldev->bus->fw_ver[i].major = fwver->ver[i].major; in mei_fwver()
185 cldev->bus->fw_ver[i].minor = fwver->ver[i].minor; in mei_fwver()
186 cldev->bus->fw_ver[i].hotfix = fwver->ver[i].hotfix; in mei_fwver()
187 cldev->bus->fw_ver[i].buildno = fwver->ver[i].buildno; in mei_fwver()
189 cldev->bus->fw_ver_received = 1; in mei_fwver()
196 static int mei_gfx_memory_ready(struct mei_cl_device *cldev) in mei_gfx_memory_ready() argument
205 dev_dbg(&cldev->dev, "Sending memory ready command\n"); in mei_gfx_memory_ready()
206 return __mei_cl_send_timeout(cldev->cl, (u8 *)&req, sizeof(req), 0, in mei_gfx_memory_ready()
210 static void mei_mkhi_fix(struct mei_cl_device *cldev) in mei_mkhi_fix() argument
215 if (!cldev->bus->fw_f_fw_ver_supported && in mei_mkhi_fix()
216 !cldev->bus->hbm_f_os_supported) in mei_mkhi_fix()
219 ret = mei_cldev_enable(cldev); in mei_mkhi_fix()
223 if (cldev->bus->fw_f_fw_ver_supported) { in mei_mkhi_fix()
224 ret = mei_fwver(cldev); in mei_mkhi_fix()
226 dev_info(&cldev->dev, "FW version command failed %d\n", in mei_mkhi_fix()
230 if (cldev->bus->hbm_f_os_supported) { in mei_mkhi_fix()
231 ret = mei_osver(cldev); in mei_mkhi_fix()
233 dev_info(&cldev->dev, "OS version command failed %d\n", in mei_mkhi_fix()
236 mei_cldev_disable(cldev); in mei_mkhi_fix()
239 static void mei_gsc_mkhi_ver(struct mei_cl_device *cldev) in mei_gsc_mkhi_ver() argument
247 if (!cldev->bus->fw_f_fw_ver_supported || cldev->bus->fw_ver_received) in mei_gsc_mkhi_ver()
250 ret = mei_cldev_enable(cldev); in mei_gsc_mkhi_ver()
254 ret = mei_fwver(cldev); in mei_gsc_mkhi_ver()
256 dev_info(&cldev->dev, "FW version command failed %d\n", ret); in mei_gsc_mkhi_ver()
257 mei_cldev_disable(cldev); in mei_gsc_mkhi_ver()
260 static void mei_gsc_mkhi_fix_ver(struct mei_cl_device *cldev) in mei_gsc_mkhi_fix_ver() argument
265 if (!cldev->bus->fw_f_fw_ver_supported && in mei_gsc_mkhi_fix_ver()
266 cldev->bus->pxp_mode != MEI_DEV_PXP_INIT) in mei_gsc_mkhi_fix_ver()
269 ret = mei_cldev_enable(cldev); in mei_gsc_mkhi_fix_ver()
273 if (cldev->bus->pxp_mode == MEI_DEV_PXP_INIT) { in mei_gsc_mkhi_fix_ver()
274 ret = mei_gfx_memory_ready(cldev); in mei_gsc_mkhi_fix_ver()
276 dev_err(&cldev->dev, "memory ready command failed %d\n", ret); in mei_gsc_mkhi_fix_ver()
278 dev_dbg(&cldev->dev, "memory ready command sent\n"); in mei_gsc_mkhi_fix_ver()
279 cldev->bus->pxp_mode = MEI_DEV_PXP_SETUP; in mei_gsc_mkhi_fix_ver()
285 ret = mei_fwver(cldev); in mei_gsc_mkhi_fix_ver()
287 dev_info(&cldev->dev, "FW version command failed %d\n", in mei_gsc_mkhi_fix_ver()
290 mei_cldev_disable(cldev); in mei_gsc_mkhi_fix_ver()
302 static void mei_wd(struct mei_cl_device *cldev) in mei_wd() argument
304 struct pci_dev *pdev = to_pci_dev(cldev->dev.parent); in mei_wd()
309 cldev->me_cl->props.protocol_version = 0x2; in mei_wd()
311 cldev->do_match = 1; in mei_wd()
314 static inline void mei_wd(struct mei_cl_device *cldev) {} in mei_wd() argument
449 static void mei_nfc(struct mei_cl_device *cldev) in mei_nfc() argument
458 bus = cldev->bus; in mei_nfc()
479 dev_err(&cldev->dev, "Can't connect to the NFC INFO ME ret = %d\n", in mei_nfc()
494 dev_err(&cldev->dev, "Can't get the NFC interface version ret = %d\n", in mei_nfc()
500 strscpy(cldev->name, radio_name, sizeof(cldev->name)); in mei_nfc()
516 cldev->do_match = 0; in mei_nfc()
518 dev_dbg(bus->dev, "end of fixup match = %d\n", cldev->do_match); in mei_nfc()
526 static void vt_support(struct mei_cl_device *cldev) in vt_support() argument
528 if (cldev->me_cl->props.vt_supported == 1) in vt_support()
529 cldev->do_match = 1; in vt_support()
537 static void pxp_is_ready(struct mei_cl_device *cldev) in pxp_is_ready() argument
539 struct mei_device *bus = cldev->bus; in pxp_is_ready()
544 cldev->do_match = 1; in pxp_is_ready()
547 cldev->do_match = 0; in pxp_is_ready()
557 void (*hook)(struct mei_cl_device *cldev);
576 void mei_cl_bus_dev_fixup(struct mei_cl_device *cldev) in mei_cl_bus_dev_fixup() argument
579 const uuid_le *uuid = mei_me_cl_uuid(cldev->me_cl); in mei_cl_bus_dev_fixup()
587 f->hook(cldev); in mei_cl_bus_dev_fixup()