Lines Matching refs:client

170 	struct vga_switcheroo_client *client;  in vga_switcheroo_enable()  local
176 list_for_each_entry(client, &vgasr_priv.clients, list) { in vga_switcheroo_enable()
177 if (client->id != VGA_SWITCHEROO_UNKNOWN_ID) in vga_switcheroo_enable()
179 ret = vgasr_priv.handler->get_client_id(client->pdev); in vga_switcheroo_enable()
183 client->id = ret; in vga_switcheroo_enable()
239 struct vga_switcheroo_client *client; in register_client() local
241 client = kzalloc(sizeof(*client), GFP_KERNEL); in register_client()
242 if (!client) in register_client()
245 client->pwr_state = VGA_SWITCHEROO_ON; in register_client()
246 client->pdev = pdev; in register_client()
247 client->ops = ops; in register_client()
248 client->id = id; in register_client()
249 client->active = active; in register_client()
250 client->driver_power_control = driver_power_control; in register_client()
253 list_add_tail(&client->list, &vgasr_priv.clients); in register_client()
254 if (client_is_vga(client)) in register_client()
310 struct vga_switcheroo_client *client; in find_client_from_pci() local
312 list_for_each_entry(client, head, list) in find_client_from_pci()
313 if (client->pdev == pdev) in find_client_from_pci()
314 return client; in find_client_from_pci()
322 struct vga_switcheroo_client *client; in find_client_from_id() local
324 list_for_each_entry(client, head, list) in find_client_from_id()
325 if (client->id == client_id) in find_client_from_id()
326 return client; in find_client_from_id()
333 struct vga_switcheroo_client *client; in find_active_client() local
335 list_for_each_entry(client, head, list) in find_active_client()
336 if (client->active) in find_active_client()
337 return client; in find_active_client()
352 struct vga_switcheroo_client *client; in vga_switcheroo_get_client_state() local
356 client = find_client_from_pci(&vgasr_priv.clients, pdev); in vga_switcheroo_get_client_state()
357 if (!client) in vga_switcheroo_get_client_state()
360 ret = client->pwr_state; in vga_switcheroo_get_client_state()
374 struct vga_switcheroo_client *client; in vga_switcheroo_unregister_client() local
377 client = find_client_from_pci(&vgasr_priv.clients, pdev); in vga_switcheroo_unregister_client()
378 if (client) { in vga_switcheroo_unregister_client()
379 if (client_is_vga(client)) in vga_switcheroo_unregister_client()
381 list_del(&client->list); in vga_switcheroo_unregister_client()
382 kfree(client); in vga_switcheroo_unregister_client()
404 struct vga_switcheroo_client *client; in vga_switcheroo_client_fb_set() local
407 client = find_client_from_pci(&vgasr_priv.clients, pdev); in vga_switcheroo_client_fb_set()
408 if (client) in vga_switcheroo_client_fb_set()
409 client->fb_info = info; in vga_switcheroo_client_fb_set()
452 struct vga_switcheroo_client *client; in vga_switcheroo_show() local
456 list_for_each_entry(client, &vgasr_priv.clients, list) { in vga_switcheroo_show()
458 client_id(client) == VGA_SWITCHEROO_DIS ? "DIS" : in vga_switcheroo_show()
460 client_is_vga(client) ? "" : "-Audio", in vga_switcheroo_show()
461 client->active ? '+' : ' ', in vga_switcheroo_show()
462 client->driver_power_control ? "Dyn" : "", in vga_switcheroo_show()
463 client->pwr_state ? "Pwr" : "Off", in vga_switcheroo_show()
464 pci_name(client->pdev)); in vga_switcheroo_show()
476 static int vga_switchon(struct vga_switcheroo_client *client) in vga_switchon() argument
478 if (client->driver_power_control) in vga_switchon()
481 vgasr_priv.handler->power_state(client->id, VGA_SWITCHEROO_ON); in vga_switchon()
483 client->ops->set_gpu_state(client->pdev, VGA_SWITCHEROO_ON); in vga_switchon()
484 client->pwr_state = VGA_SWITCHEROO_ON; in vga_switchon()
488 static int vga_switchoff(struct vga_switcheroo_client *client) in vga_switchoff() argument
490 if (client->driver_power_control) in vga_switchoff()
493 client->ops->set_gpu_state(client->pdev, VGA_SWITCHEROO_OFF); in vga_switchoff()
495 vgasr_priv.handler->power_state(client->id, VGA_SWITCHEROO_OFF); in vga_switchoff()
496 client->pwr_state = VGA_SWITCHEROO_OFF; in vga_switchoff()
503 struct vga_switcheroo_client *client; in set_audio_state() local
505 client = find_client_from_id(&vgasr_priv.clients, id | ID_BIT_AUDIO); in set_audio_state()
506 if (client && client->pwr_state != state) { in set_audio_state()
507 client->ops->set_gpu_state(client->pdev, state); in set_audio_state()
508 client->pwr_state = state; in set_audio_state()
569 struct vga_switcheroo_client *client; in check_can_switch() local
571 list_for_each_entry(client, &vgasr_priv.clients, list) { in check_can_switch()
572 if (!client->ops->can_switch(client->pdev)) { in check_can_switch()
573 pr_err("client %x refused switch\n", client->id); in check_can_switch()
589 struct vga_switcheroo_client *client = NULL; in vga_switcheroo_debugfs_write() local
606 list_for_each_entry(client, &vgasr_priv.clients, list) { in vga_switcheroo_debugfs_write()
607 if (client->active || client_is_audio(client)) in vga_switcheroo_debugfs_write()
609 if (client->driver_power_control) in vga_switcheroo_debugfs_write()
611 set_audio_state(client->id, VGA_SWITCHEROO_OFF); in vga_switcheroo_debugfs_write()
612 if (client->pwr_state == VGA_SWITCHEROO_ON) in vga_switcheroo_debugfs_write()
613 vga_switchoff(client); in vga_switcheroo_debugfs_write()
619 list_for_each_entry(client, &vgasr_priv.clients, list) { in vga_switcheroo_debugfs_write()
620 if (client->active || client_is_audio(client)) in vga_switcheroo_debugfs_write()
622 if (client->driver_power_control) in vga_switcheroo_debugfs_write()
624 if (client->pwr_state == VGA_SWITCHEROO_OFF) in vga_switcheroo_debugfs_write()
625 vga_switchon(client); in vga_switcheroo_debugfs_write()
626 set_audio_state(client->id, VGA_SWITCHEROO_ON); in vga_switcheroo_debugfs_write()
659 client = find_client_from_id(&vgasr_priv.clients, client_id); in vga_switcheroo_debugfs_write()
660 if (!client) in vga_switcheroo_debugfs_write()
670 if (client->active) in vga_switcheroo_debugfs_write()
680 ret = vga_switchto_stage1(client); in vga_switcheroo_debugfs_write()
684 ret = vga_switchto_stage2(client); in vga_switcheroo_debugfs_write()
689 pr_info("setting delayed switch to client %d\n", client->id); in vga_switcheroo_debugfs_write()
693 ret = vga_switchto_stage1(client); in vga_switcheroo_debugfs_write()
760 struct vga_switcheroo_client *client; in vga_switcheroo_process_delayed_switch() local
771 client = find_client_from_id(&vgasr_priv.clients, in vga_switcheroo_process_delayed_switch()
773 if (!client || !check_can_switch()) in vga_switcheroo_process_delayed_switch()
776 ret = vga_switchto_stage2(client); in vga_switcheroo_process_delayed_switch()
824 struct vga_switcheroo_client *client; in vga_switcheroo_power_switch() local
829 client = find_client_from_pci(&vgasr_priv.clients, pdev); in vga_switcheroo_power_switch()
830 if (!client) in vga_switcheroo_power_switch()
833 if (!client->driver_power_control) in vga_switcheroo_power_switch()
836 vgasr_priv.handler->power_state(client->id, state); in vga_switcheroo_power_switch()
853 struct vga_switcheroo_client *client; in vga_switcheroo_set_dynamic_switch() local
856 client = find_client_from_pci(&vgasr_priv.clients, pdev); in vga_switcheroo_set_dynamic_switch()
857 if (!client || !client->driver_power_control) { in vga_switcheroo_set_dynamic_switch()
862 client->pwr_state = dynamic; in vga_switcheroo_set_dynamic_switch()
863 set_audio_state(client->id, dynamic); in vga_switcheroo_set_dynamic_switch()
938 struct vga_switcheroo_client *client; in vga_switcheroo_runtime_resume_hdmi_audio() local
945 list_for_each_entry(client, &vgasr_priv.clients, list) { in vga_switcheroo_runtime_resume_hdmi_audio()
946 if (PCI_SLOT(client->pdev->devfn) == PCI_SLOT(pdev->devfn) && in vga_switcheroo_runtime_resume_hdmi_audio()
947 client_is_vga(client)) { in vga_switcheroo_runtime_resume_hdmi_audio()
948 video_dev = &client->pdev->dev; in vga_switcheroo_runtime_resume_hdmi_audio()