Lines Matching full:controls
3 * uvc_ctrl.c -- USB Video Class driver - Controls
33 * Controls
854 * UVC Controls
869 ctrl = &entity->controls[i]; in __uvc_find_control()
955 /* GET_RES is mandatory for XU controls, but some in uvc_ctrl_populate_cache()
1143 * Mapping V4L2 controls to UVC controls can be straightforward if done well.
1144 * Most of the UVC controls exist in V4L2, and can be mapped directly. Some
1146 * Balance V4L2 controls use the White Balance Component UVC control) or
1148 * table for the controls that can be mapped directly, and handle the others
1238 * @handle can be NULL for asynchronous events related to auto-update controls,
1476 * To make extended set operations as atomic as the hardware allows, controls
1488 * After processing all controls in the transaction, uvc_ctrl_commit or
1490 * hardware or revert them. When applying changes, all controls marked as
1492 * cleared. When reverting controls, the control data field
1494 * (UVC_CTRL_DATA_BACKUP) for all dirty controls. Both functions release the
1513 ctrl = &entity->controls[i]; in uvc_ctrl_commit_entity()
1517 /* Reset the loaded flag for auto-update controls that were in uvc_ctrl_commit_entity()
1520 * controls to prevent uvc_ctrl_set from setting bits not in uvc_ctrl_commit_entity()
1643 * UVC controls that support it. in uvc_ctrl_set()
1706 * Dynamic controls
1783 * Query control information (size and flags) for XU controls.
1893 ctrl = &entity->controls[i]; in uvc_xu_ctrl_query()
1990 * Restore control values after resume, skipping controls that haven't been
1994 * - Don't restore modified controls that are back to their default value.
2005 /* Walk the entities list and restore controls when possible. */ in uvc_ctrl_restore_values()
2009 ctrl = &entity->controls[i]; in uvc_ctrl_restore_values()
2121 ctrl = &entity->controls[i]; in uvc_ctrl_add_mapping()
2137 /* Perform delayed initialization of XU controls */ in uvc_ctrl_add_mapping()
2181 * Prune an entity of its bogus controls using a blacklist. Bogus controls
2206 u8 *controls; in uvc_ctrl_prune_entity() local
2212 controls = entity->processing.bmControls; in uvc_ctrl_prune_entity()
2219 controls = entity->camera.bmControls; in uvc_ctrl_prune_entity()
2232 !uvc_test_bit(controls, blacklist[i].index)) in uvc_ctrl_prune_entity()
2239 uvc_clear_bit(controls, blacklist[i].index); in uvc_ctrl_prune_entity()
2255 /* XU controls initialization requires querying the device for control in uvc_ctrl_init_ctrl()
2257 * repeatedly in a tight loop, delay XU controls initialization until in uvc_ctrl_init_ctrl()
2271 * GET_INFO on standard controls. in uvc_ctrl_init_ctrl()
2289 * Initialize device controls.
2298 /* Walk the entities list and instantiate controls */ in uvc_ctrl_init_device()
2318 /* Remove bogus/blacklisted controls */ in uvc_ctrl_init_device()
2321 /* Count supported controls and allocate the controls array */ in uvc_ctrl_init_device()
2326 entity->controls = kcalloc(ncontrols, sizeof(*ctrl), in uvc_ctrl_init_device()
2328 if (entity->controls == NULL) in uvc_ctrl_init_device()
2332 /* Initialize all supported controls */ in uvc_ctrl_init_device()
2333 ctrl = entity->controls; in uvc_ctrl_init_device()
2350 * Cleanup device controls.
2373 /* Free controls and control mappings for all entities. */ in uvc_ctrl_cleanup_device()
2376 struct uvc_control *ctrl = &entity->controls[i]; in uvc_ctrl_cleanup_device()
2385 kfree(entity->controls); in uvc_ctrl_cleanup_device()