/linux/block/ |
H A D | bfq-wf2q.c | 30 static unsigned int bfq_class_idx(struct bfq_entity *entity) in bfq_class_idx() argument 32 struct bfq_queue *bfqq = bfq_entity_to_bfqq(entity); in bfq_class_idx() 52 * @new_entity: if not NULL, pointer to the entity whose activation, 56 * expiration of the in-service entity 60 * extraction of an entity into/from one of the active trees of 65 * reposition an entity in its active tree; see comments on 68 * just activated or requeued entity. 71 * entity->parent may become the next_in_service for its parent 72 * entity. 84 * or repositioning of an entity that does not coincide with in bfq_update_next_in_service() [all …]
|
H A D | bfq-cgroup.c | 305 struct bfq_entity *group_entity = bfqq->entity.parent; in bfqq_group() 308 entity) : in bfqq_group() 417 void bfq_init_entity(struct bfq_entity *entity, struct bfq_group *bfqg) in bfq_init_entity() argument 419 struct bfq_queue *bfqq = bfq_entity_to_bfqq(entity); in bfq_init_entity() 421 entity->weight = entity->new_weight; in bfq_init_entity() 422 entity->orig_weight = entity->new_weight; in bfq_init_entity() 428 * disappear before entity. in bfq_init_entity() 432 entity->parent = bfqg->my_entity; /* NULL for root group */ in bfq_init_entity() 433 entity->sched_data = &bfqg->sched_data; in bfq_init_entity() 534 struct bfq_entity *entity = &bfqg->entity; in bfq_pd_init() local [all …]
|
H A D | bfq-iosched.h | 59 /* idle entity with minimum F_i */ 61 /* idle entity with maximum F_i */ 84 * @next_in_service, which points to the entity on the active trees 86 * before the current in-service entity is expired, 2) the in-service 87 * queue becomes idle when it expires, and 3) if the entity pointed by 88 * in_service_entity is not a queue, then the in-service child entity 89 * of the entity pointed by in_service_entity becomes idle on 91 * optimization, not yet exploited: while a given entity is still in 94 * entity. We can then quickly compare the timestamps of the 95 * in-service entity with those of such best candidate. [all …]
|
/linux/drivers/gpu/drm/scheduler/ |
H A D | sched_entity.c | 36 * drm_sched_entity_init - Init a context entity used by scheduler when 39 * @entity: scheduler entity to init 40 * @priority: priority of the entity 42 * entity can be submitted 47 * Note that the &sched_list must have at least one element to schedule the entity. 53 * An entity is cleaned up by calling drm_sched_entity_fini(). See also 58 int drm_sched_entity_init(struct drm_sched_entity *entity, in drm_sched_entity_init() argument 64 if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0]))) in drm_sched_entity_init() 67 memset(entity, 0, sizeof(struct drm_sched_entity)); in drm_sched_entity_init() 68 INIT_LIST_HEAD(&entity->list); in drm_sched_entity_init() [all …]
|
/linux/sound/soc/sdca/ |
H A D | sdca_asoc.c | 35 static bool exported_control(struct sdca_entity *entity, struct sdca_control *control) in exported_control() argument 37 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in exported_control() 84 struct sdca_entity *entity = &function->entities[i]; in sdca_asoc_count_component() local 87 switch (entity->type) { in sdca_asoc_count_component() 90 *num_routes += !!entity->iot.clock; in sdca_asoc_count_component() 91 *num_routes += !!entity->iot.is_dataport; in sdca_asoc_count_component() 92 *num_controls += !entity->iot.is_dataport; in sdca_asoc_count_component() 93 *num_dais += !!entity->iot.is_dataport; in sdca_asoc_count_component() 96 *num_routes += entity->pde.num_managed; in sdca_asoc_count_component() 102 if (entity->group) in sdca_asoc_count_component() [all …]
|
H A D | sdca_functions.c | 249 const struct sdca_entity *entity, in find_sdca_control_label() argument 252 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_label() 542 static unsigned int find_sdca_control_bits(const struct sdca_entity *entity, in find_sdca_control_bits() argument 545 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_bits() 611 find_sdca_control_datatype(const struct sdca_entity *entity, in find_sdca_control_datatype() argument 614 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_datatype() 820 static int find_sdca_control_value(struct device *dev, struct sdca_entity *entity, in find_sdca_control_value() argument 861 static int find_sdca_entity_control(struct device *dev, struct sdca_entity *entity, in find_sdca_entity_control() argument 871 entity->label, control->sel, ret); in find_sdca_entity_control() 880 entity->label, control->sel, ret); in find_sdca_entity_control() [all …]
|
H A D | sdca_regmap.c | 33 entity_find_control(struct sdca_entity *entity, unsigned int reg) in entity_find_control() argument 37 for (i = 0; i < entity->num_controls; i++) { in entity_find_control() 38 if (SDW_SDCA_CTL_CSEL(reg) == entity->controls[i].sel) in entity_find_control() 39 return &entity->controls[i]; in entity_find_control() 48 struct sdca_entity *entity; in function_find_control() local 50 entity = function_find_entity(function, reg); in function_find_control() 51 if (!entity) in function_find_control() 54 return entity_find_control(entity, reg); in function_find_control() 225 struct sdca_entity *entity = &function->entities[i]; in sdca_regmap_count_constants() local 227 for (j = 0; j < entity->num_controls; j++) { in sdca_regmap_count_constants() [all …]
|
/linux/drivers/staging/media/imx/ |
H A D | imx-media-dev-common.c | 49 * Continues upstream from the pad entity's sink pads. 55 struct media_entity *entity = srcpad->entity; in imx_media_add_vdev_to_pad() local 62 /* skip this entity if not a v4l2_subdev */ in imx_media_add_vdev_to_pad() 63 if (!is_media_entity_v4l2_subdev(entity)) in imx_media_add_vdev_to_pad() 66 sd = media_entity_to_v4l2_subdev(entity); in imx_media_add_vdev_to_pad() 71 entity->name, srcpad->index); in imx_media_add_vdev_to_pad() 74 * just skip this entity. in imx_media_add_vdev_to_pad() 86 vdev->vfd->entity.name, entity->name, srcpad->index); in imx_media_add_vdev_to_pad() 96 /* move upstream from this entity's sink pads */ in imx_media_add_vdev_to_pad() 97 for (i = 0; i < entity->num_pads; i++) { in imx_media_add_vdev_to_pad() [all …]
|
/linux/drivers/media/mc/ |
H A D | mc-device.c | 24 #include <media/media-entity.h> 83 struct media_entity *entity; in find_entity() local 88 media_device_for_each_entity(entity, mdev) { in find_entity() 89 if (((media_entity_id(entity) == id) && !next) || in find_entity() 90 ((media_entity_id(entity) > id) && next)) { in find_entity() 91 return entity; in find_entity() 121 * do the wrong thing if the entity function doesn't belong to in media_device_enum_entities() 146 upad->entity = media_entity_id(kpad->entity); in media_device_kpad_to_upad() 154 struct media_entity *entity; in media_device_enum_links() local 156 entity = find_entity(mdev, links->entity); in media_device_enum_links() [all …]
|
/linux/Documentation/driver-api/media/ |
H A D | mc-core.rst | 21 An entity is a basic media hardware building block. It can correspond to 27 A pad is a connection endpoint through which an entity can interact with 28 other entities. Data (not restricted to video) produced by an entity 29 flows from the entity's output to one or more entity inputs. Pads should 33 on the same entity or on different entities. Data flows from a source 60 instance, defined in ``include/media/media-entity.h``. The structure is usually 65 Drivers initialize entity pads by calling 78 ``include/media/media-entity.h``. Currently, only one type of interface is 90 defined in ``include/media/media-entity.h``. Each entity stores its pads in 91 a pads array managed by the entity driver. Drivers usually embed the array in [all …]
|
/linux/drivers/media/usb/au0828/ |
H A D | au0828-core.c | 216 struct media_entity *entity, *mixer = NULL, *decoder = NULL; in au0828_media_graph_notify() local 224 media_device_for_each_entity(entity, dev->media_dev) { in au0828_media_graph_notify() 225 if (entity->function == MEDIA_ENT_F_AUDIO_MIXER) in au0828_media_graph_notify() 226 mixer = entity; in au0828_media_graph_notify() 227 else if (entity->function == MEDIA_ENT_F_ATV_DECODER) in au0828_media_graph_notify() 228 decoder = entity; in au0828_media_graph_notify() 241 media_device_for_each_entity(entity, dev->media_dev) { in au0828_media_graph_notify() 242 if (entity->function == MEDIA_ENT_F_AUDIO_MIXER) in au0828_media_graph_notify() 243 mixer = entity; in au0828_media_graph_notify() 266 struct media_entity *entity) in au0828_is_link_shareable() argument [all …]
|
/linux/Documentation/userspace-api/media/mediactl/ |
H A D | media-types.rst | 10 .. _media-entity-functions: 50 .. flat-table:: Media entity functions 56 - Unknown entity. That generally indicates that a driver didn't 57 initialize properly the entity, which is a Kernel bug 60 - Data streaming input and/or output entity. 63 - V4L VBI streaming input or output entity 66 - V4L Software Digital Radio (SDR) streaming input or output entity 69 - DVB Digital TV streaming input or output entity 72 - Digital TV demodulator entity. 75 - MPEG Transport stream demux entity. Could be implemented on [all …]
|
H A D | media-ioc-enum-entities.rst | 34 To query the attributes of an entity, applications set the id field of a 44 about the entity with the smallest id strictly larger than the requested 45 one ('next entity'), or the ``EINVAL`` error code if there is none. 47 Entity IDs can be non-contiguous. Applications must *not* try to 63 - Entity ID, set by the application. When the ID is or'ed with 65 the first entity with a larger ID. Do not expect that the ID will 67 do not hardcode entity IDs in an application. 72 - Entity name as an UTF-8 NULL-terminated string. This name must be unique 78 - Entity type, see :ref:`media-entity-functions` for details. 83 - Entity revision. Always zero (obsolete) [all …]
|
H A D | media-ioc-enum-links.rst | 13 MEDIA_IOC_ENUM_LINKS - Enumerate all pads and links for a given entity 34 To enumerate pads and/or links for a given entity, applications set the 35 entity field of a struct :c:type:`media_links_enum` 43 with information about the entity's pads. The array must have enough 44 room to store all the entity's pads. The number of pads can be retrieved 48 with information about the entity's outbound links. The array must have 49 enough room to store all the entity's outbound links. The number of 52 Only forward links that originate at one of the entity's source pads are 65 - ``entity`` 66 - Entity id, set by the application. [all …]
|
H A D | media-controller-model.rst | 14 - An **entity** is a basic media hardware or software building block. 24 - A **pad** is a data connection endpoint through which an entity can 26 by an entity flows from the entity's output to one or more entity 31 pads, either on the same entity or on different entities. Data flows 35 connection between a Linux Kernel interface and an entity.
|
/linux/include/media/ |
H A D | media-device.h | 20 #include <media/media-entity.h> 26 * struct media_entity_notify - Media Entity Notify 40 void (*notify)(struct media_entity *entity, void *notify_data); 90 * @entity_internal_idx: Unique internal entity ID used by the graph traversal 92 * @entity_internal_idx_max: Allocated internal entity indices 121 * @enable_source is a handler to find source entity for the 122 * sink entity and activate the link between them if source 123 * entity is free. Drivers should call this handler before 126 * @disable_source is a handler to find source entity for the 127 * sink entity and deactivate the link between them. Drivers [all …]
|
/linux/drivers/net/wwan/t7xx/ |
H A D | t7xx_pci.c | 287 struct md_pm_entity *entity; in t7xx_pci_pm_entity_register() local 290 list_for_each_entry(entity, &t7xx_dev->md_pm_entities, entity) { in t7xx_pci_pm_entity_register() 291 if (entity->id == pm_entity->id) { in t7xx_pci_pm_entity_register() 297 list_add_tail(&pm_entity->entity, &t7xx_dev->md_pm_entities); in t7xx_pci_pm_entity_register() 304 struct md_pm_entity *entity, *tmp_entity; in t7xx_pci_pm_entity_unregister() local 307 list_for_each_entry_safe(entity, tmp_entity, &t7xx_dev->md_pm_entities, entity) { in t7xx_pci_pm_entity_unregister() 308 if (entity->id == pm_entity->id) { in t7xx_pci_pm_entity_unregister() 309 list_del(&pm_entity->entity); in t7xx_pci_pm_entity_unregister() 411 struct md_pm_entity *entity; in __t7xx_pci_pm_suspend() local 432 list_for_each_entry(entity, &t7xx_dev->md_pm_entities, entity) { in __t7xx_pci_pm_suspend() [all …]
|
/linux/drivers/media/dvb-core/ |
H A D | dvbdev.c | 210 if (dvbdev->entity) { in dvb_media_device_free() 211 media_device_unregister_entity(dvbdev->entity); in dvb_media_device_free() 212 kfree(dvbdev->entity); in dvb_media_device_free() 214 dvbdev->entity = NULL; in dvb_media_device_free() 268 struct media_entity *entity = &dvbdev->tsout_entity[i]; in dvb_create_tsout_entity() local 271 entity->name = kasprintf(GFP_KERNEL, "%s #%d", name, i); in dvb_create_tsout_entity() 272 if (!entity->name) in dvb_create_tsout_entity() 275 entity->function = MEDIA_ENT_F_IO_DTV; in dvb_create_tsout_entity() 278 ret = media_entity_pads_init(entity, 1, pads); in dvb_create_tsout_entity() 283 entity); in dvb_create_tsout_entity() [all …]
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ctx.c | 33 container_of((e), struct amdgpu_ctx_entity, entity) 209 struct amdgpu_ctx_entity *entity; in amdgpu_ctx_init_entity() local 215 entity = kzalloc(struct_size(entity, fences, amdgpu_sched_jobs), in amdgpu_ctx_init_entity() 217 if (!entity) in amdgpu_ctx_init_entity() 222 entity->hw_ip = hw_ip; in amdgpu_ctx_init_entity() 223 entity->sequence = 1; in amdgpu_ctx_init_entity() 252 r = drm_sched_entity_init(&entity->entity, drm_prio, scheds, num_scheds, in amdgpu_ctx_init_entity() 257 /* It's not an error if we fail to install the new entity */ in amdgpu_ctx_init_entity() 258 if (cmpxchg(&ctx->entities[hw_ip][ring], NULL, entity)) in amdgpu_ctx_init_entity() 264 drm_sched_entity_fini(&entity->entity); in amdgpu_ctx_init_entity() [all …]
|
/linux/include/sound/ |
H A D | sdca_function.h | 112 * @ent: Entity Type code. 117 * across Entity types, as such it is necessary to combine both the Entity 124 * @ent: Entity name, for example IT, MFPU, etc. this string can be read 294 * enum sdca_pde_controls - SDCA Controls for Power Domain Entity 296 * Control Selectors for Power Domain Entity from SDCA specification 489 * enum sdca_tg_controls - SDCA Controls for Tone Generator Entity 499 * enum sdca_hide_controls - SDCA Controls for HIDE Entity 514 * enum sdca_entity0_controls - SDCA Controls for Entity 0 516 * Control Selectors for Entity 0 from SDCA specification v1.0 Section 781 * Indicate what a Terminal Entity is used for, see in section 6.2.3 [all …]
|
/linux/drivers/media/platform/renesas/vsp1/ |
H A D | vsp1_uif.c | 14 #include <media/media-entity.h> 31 return vsp1_read(uif->entity.vsp1, in vsp1_uif_read() 32 uif->entity.index * VI6_UIF_OFFSET + reg); in vsp1_uif_read() 38 vsp1_dl_body_write(dlb, reg + uif->entity.index * VI6_UIF_OFFSET, data); in vsp1_uif_write() 96 mutex_lock(&uif->entity.lock); in uif_get_selection() 98 state = vsp1_entity_get_state(&uif->entity, sd_state, sel->which); in uif_get_selection() 124 mutex_unlock(&uif->entity.lock); in uif_get_selection() 142 mutex_lock(&uif->entity.lock); in uif_set_selection() 144 state = vsp1_entity_get_state(&uif->entity, sd_state, sel->which); in uif_set_selection() 165 mutex_unlock(&uif->entity.lock); in uif_set_selection() [all …]
|
H A D | vsp1_lif.c | 29 vsp1_dl_body_write(dlb, reg + lif->entity.index * VI6_LIF_OFFSET, in vsp1_lif_write() 82 * VSP1 Entity Operations 85 static void lif_configure_stream(struct vsp1_entity *entity, in lif_configure_stream() argument 92 struct vsp1_lif *lif = to_lif(&entity->subdev); in lif_configure_stream() 99 switch (entity->vsp1->version & VI6_IP_VERSION_MODEL_MASK) { in lif_configure_stream() 139 if (vsp1_feature(entity->vsp1, VSP1_HAS_NON_ZERO_LBA)) in lif_configure_stream() 162 lif->entity.ops = &lif_entity_ops; in vsp1_lif_create() 163 lif->entity.type = VSP1_ENTITY_LIF; in vsp1_lif_create() 164 lif->entity.index = index; in vsp1_lif_create() 167 * The LIF is never exposed to userspace, but media entity registration in vsp1_lif_create() [all …]
|
/linux/include/drm/ |
H A D | gpu_scheduler.h | 96 * Lock protecting the run-queue (@rq) to which this entity belongs, 104 * Runqueue on which this entity is currently scheduled. 115 * A list of schedulers (struct drm_gpu_scheduler). Jobs from this entity can 140 * Priority of the entity. This can be modified by calling 146 * @job_queue: the list of jobs of this entity. 154 * &drm_sched_fence which is part of the entity. 164 * A unique context for all the fences which belong to this entity. The 201 * @last_user: last group leader pushing a job into the entity. 217 * Signals when entity is not in use, used to sequence entity cleanup in 232 * The node used to insert this entity into time based priority queue [all …]
|
/linux/drivers/media/platform/microchip/ |
H A D | microchip-isc-scaler.c | 3 * Microchip Image Sensor Controller (ISC) Scaler entity support 12 #include <media/media-entity.h> 116 * entity cropping is part of the PFE module (parallel front end) in isc_scaler_enum_mbus_code() 200 isc->scaler_sd.entity.function = MEDIA_ENT_F_PROC_VIDEO_SCALER; in isc_scaler_init() 201 isc->scaler_sd.entity.ops = &isc_scaler_entity_ops; in isc_scaler_init() 214 ret = media_entity_pads_init(&isc->scaler_sd.entity, in isc_scaler_init() 218 dev_err(isc->dev, "scaler sd media entity init failed\n"); in isc_scaler_init() 236 ret = media_create_pad_link(&isc->current_subdev->sd->entity, in isc_scaler_link() 237 isc->remote_pad, &isc->scaler_sd.entity, in isc_scaler_link() 244 isc->current_subdev->sd->entity.name, in isc_scaler_link() [all …]
|
/linux/include/uapi/linux/ |
H A D | media.h | 38 * Base number ranges for entity functions 53 * Initial value to be used when a new entity is created 61 * subdev type before registering the entity. 66 * DVB entity functions 74 * I/O entity functions 110 * Audio entity functions 117 * Processing entity functions 130 * Switch and bridge entity functions 142 /* Entity flags */ 146 /* OR with the entity id value to find the next entity */ [all …]
|