SYNOPSIS
struct vga_switcheroo_client {
struct pci_dev * pdev;
struct fb_info * fb_info;
enum vga_switcheroo_state pwr_state;
const struct vga_switcheroo_client_ops * ops;
enum vga_switcheroo_client_id id;
bool active;
bool driver_power_control;
struct list_head list;
};
MEMBERS
pdev
- client pci device
fb_info
- framebuffer to which console is remapped on switching
pwr_state
- current power state
ops
- client callbacks
id
- client identifier. Determining the id requires the handler, so gpus are initially assigned VGA_SWITCHEROO_UNKNOWN_ID and later given their true id in vga_switcheroo_enable
active
- whether the outputs are currently switched to this client
driver_power_control
- whether power state is controlled by the driver's runtime pm. If true, writing ON and OFF to the vga_switcheroo debugfs interface is a no-op so as not to interfere with runtime pm
list
- client list
DESCRIPTION
Registered client. A client can be either a GPU or an audio device on a GPU. For audio clients, the fb_info, active and driver_power_control members are bogus.
AUTHORS
Jesse Barnes <jesse.barnes@intel.com>
Intel Corporation,
- Initial version
Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Ideas on board SPRL,
- Driver internals
Daniel Vetter <daniel.vetter@ffwll.ch>
Intel Corporation,
- Contributions all over the place
Lukas Wunner <lukas@wunner.de>
- vga_switcheroo documentation
COPYRIGHT