/linux-6.6.21/drivers/media/v4l2-core/ |
D | v4l2-async.c | 66 static bool match_i2c(struct v4l2_async_notifier *notifier, in match_i2c() argument 81 static struct device *notifier_dev(struct v4l2_async_notifier *notifier) in notifier_dev() argument 83 if (notifier->sd) in notifier_dev() 84 return notifier->sd->dev; in notifier_dev() 86 if (notifier->v4l2_dev) in notifier_dev() 87 return notifier->v4l2_dev->dev; in notifier_dev() 93 match_fwnode_one(struct v4l2_async_notifier *notifier, in match_fwnode_one() argument 100 dev_dbg(notifier_dev(notifier), in match_fwnode_one() 105 dev_dbg(notifier_dev(notifier), in match_fwnode_one() 111 dev_dbg(notifier_dev(notifier), in match_fwnode_one() [all …]
|
/linux-6.6.21/Documentation/fault-injection/ |
D | notifier-error-inject.rst | 5 specified notifier chain callbacks. It is useful to test the error handling of 6 notifier call chain failures which is rarely executed. There are kernel 9 * PM notifier 10 * Memory hotplug notifier 11 * powerpc pSeries reconfig notifier 12 * Netdevice notifier 14 PM notifier error injection module 18 /sys/kernel/debug/notifier-error-inject/pm/actions/<notifier event>/error 20 Possible PM notifier events to be failed are: 28 # cd /sys/kernel/debug/notifier-error-inject/pm/ [all …]
|
/linux-6.6.21/include/media/ |
D | v4l2-async.h | 81 struct v4l2_async_notifier *notifier; member 96 int (*bound)(struct v4l2_async_notifier *notifier, 99 int (*complete)(struct v4l2_async_notifier *notifier); 100 void (*unbind)(struct v4l2_async_notifier *notifier, 159 void v4l2_async_nf_init(struct v4l2_async_notifier *notifier, 173 void v4l2_async_subdev_nf_init(struct v4l2_async_notifier *notifier, 177 __v4l2_async_nf_add_fwnode(struct v4l2_async_notifier *notifier, 195 #define v4l2_async_nf_add_fwnode(notifier, fwnode, type) \ argument 196 ((type *)__v4l2_async_nf_add_fwnode(notifier, fwnode, sizeof(type))) 222 #define v4l2_async_nf_add_fwnode_remote(notifier, ep, type) \ argument [all …]
|
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/sf/ |
D | vhca_event.c | 20 struct mlx5_vhca_state_notifier *notifier; member 95 struct mlx5_vhca_state_notifier *notifier = work->notifier; in mlx5_vhca_state_work_handler() local 96 struct mlx5_core_dev *dev = notifier->dev; in mlx5_vhca_state_work_handler() 105 struct mlx5_vhca_state_notifier *notifier = in mlx5_vhca_state_change_notifier() local 114 work->notifier = notifier; in mlx5_vhca_state_change_notifier() 116 mlx5_events_work_enqueue(notifier->dev, &work->work); in mlx5_vhca_state_change_notifier() 134 struct mlx5_vhca_state_notifier *notifier; in mlx5_vhca_event_init() local 139 notifier = kzalloc(sizeof(*notifier), GFP_KERNEL); in mlx5_vhca_event_init() 140 if (!notifier) in mlx5_vhca_event_init() 143 dev->priv.vhca_state_notifier = notifier; in mlx5_vhca_event_init() [all …]
|
/linux-6.6.21/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_hmm.c | 70 struct amdgpu_bo *bo = container_of(mni, struct amdgpu_bo, notifier); in amdgpu_hmm_invalidate_gfx() 107 struct amdgpu_bo *bo = container_of(mni, struct amdgpu_bo, notifier); in amdgpu_hmm_invalidate_hsa() 133 return mmu_interval_notifier_insert(&bo->notifier, current->mm, in amdgpu_hmm_register() 136 return mmu_interval_notifier_insert(&bo->notifier, current->mm, addr, in amdgpu_hmm_register() 150 if (!bo->notifier.mm) in amdgpu_hmm_unregister() 152 mmu_interval_notifier_remove(&bo->notifier); in amdgpu_hmm_unregister() 153 bo->notifier.mm = NULL; in amdgpu_hmm_unregister() 156 int amdgpu_hmm_range_get_pages(struct mmu_interval_notifier *notifier, in amdgpu_hmm_range_get_pages() argument 178 hmm_range->notifier = notifier; in amdgpu_hmm_range_get_pages() 199 hmm_range->notifier_seq = mmu_interval_read_begin(notifier); in amdgpu_hmm_range_get_pages() [all …]
|
/linux-6.6.21/drivers/staging/media/imx/ |
D | imx-media-dev.c | 17 return container_of(n, struct imx_media_dev, notifier); in notifier2dev() 21 static int imx_media_subdev_bound(struct v4l2_async_notifier *notifier, in imx_media_subdev_bound() argument 25 struct imx_media_dev *imxmd = notifier2dev(notifier); in imx_media_subdev_bound() 41 static int imx6_media_probe_complete(struct v4l2_async_notifier *notifier) in imx6_media_probe_complete() argument 43 struct imx_media_dev *imxmd = notifier2dev(notifier); in imx6_media_probe_complete() 47 ret = imx_media_probe_complete(notifier); in imx6_media_probe_complete() 97 v4l2_async_nf_cleanup(&imxmd->notifier); in imx_media_probe() 116 v4l2_async_nf_unregister(&imxmd->notifier); in imx_media_remove() 118 v4l2_async_nf_cleanup(&imxmd->notifier); in imx_media_remove()
|
/linux-6.6.21/drivers/media/platform/renesas/rzg2l-cru/ |
D | rzg2l-core.c | 28 return container_of(n, struct rzg2l_cru_dev, notifier); in notifier_to_cru() 39 static int rzg2l_cru_group_notify_complete(struct v4l2_async_notifier *notifier) in rzg2l_cru_group_notify_complete() argument 41 struct rzg2l_cru_dev *cru = notifier_to_cru(notifier); in rzg2l_cru_group_notify_complete() 93 static void rzg2l_cru_group_notify_unbind(struct v4l2_async_notifier *notifier, in rzg2l_cru_group_notify_unbind() argument 97 struct rzg2l_cru_dev *cru = notifier_to_cru(notifier); in rzg2l_cru_group_notify_unbind() 111 static int rzg2l_cru_group_notify_bound(struct v4l2_async_notifier *notifier, in rzg2l_cru_group_notify_bound() argument 115 struct rzg2l_cru_dev *cru = notifier_to_cru(notifier); in rzg2l_cru_group_notify_bound() 164 asd = v4l2_async_nf_add_fwnode(&cru->notifier, fwnode, in rzg2l_cru_mc_parse_of() 185 v4l2_async_nf_init(&cru->notifier, &cru->v4l2_dev); in rzg2l_cru_mc_parse_of_graph() 191 cru->notifier.ops = &rzg2l_cru_async_ops; in rzg2l_cru_mc_parse_of_graph() [all …]
|
/linux-6.6.21/drivers/gpu/drm/radeon/ |
D | radeon_mn.c | 53 struct radeon_bo *bo = container_of(mn, struct radeon_bo, notifier); in radeon_mn_invalidate() 100 ret = mmu_interval_notifier_insert(&bo->notifier, current->mm, addr, in radeon_mn_register() 111 mmu_interval_read_begin(&bo->notifier); in radeon_mn_register() 124 if (!bo->notifier.mm) in radeon_mn_unregister() 126 mmu_interval_notifier_remove(&bo->notifier); in radeon_mn_unregister() 127 bo->notifier.mm = NULL; in radeon_mn_unregister()
|
/linux-6.6.21/drivers/staging/media/sunxi/sun6i-isp/ |
D | sun6i_isp_proc.c | 396 static int sun6i_isp_proc_notifier_bound(struct v4l2_async_notifier *notifier, in sun6i_isp_proc_notifier_bound() argument 401 container_of(notifier, struct sun6i_isp_device, proc.notifier); in sun6i_isp_proc_notifier_bound() 429 sun6i_isp_proc_notifier_complete(struct v4l2_async_notifier *notifier) in sun6i_isp_proc_notifier_complete() argument 432 container_of(notifier, struct sun6i_isp_device, proc.notifier); in sun6i_isp_proc_notifier_complete() 456 struct v4l2_async_notifier *notifier = &isp_dev->proc.notifier; in sun6i_isp_proc_source_setup() local 471 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun6i_isp_proc_source_setup() 494 struct v4l2_async_notifier *notifier = &proc->notifier; in sun6i_isp_proc_setup() local 539 v4l2_async_nf_init(notifier, v4l2_dev); in sun6i_isp_proc_setup() 540 notifier->ops = &sun6i_isp_proc_notifier_ops; in sun6i_isp_proc_setup() 547 ret = v4l2_async_nf_register(notifier); in sun6i_isp_proc_setup() [all …]
|
/linux-6.6.21/drivers/gpu/drm/nouveau/ |
D | nouveau_svm.c | 259 container_of(mn, struct nouveau_svmm, notifier); in nouveau_svmm_invalidate_range_start() 297 kfree(container_of(mn, struct nouveau_svmm, notifier)); in nouveau_svmm_free_notifier() 313 mmu_notifier_put(&svmm->notifier); in nouveau_svmm_fini() 362 svmm->notifier.ops = &nouveau_mn_ops; in nouveau_svmm_init() 363 ret = __mmu_notifier_register(&svmm->notifier, current->mm); in nouveau_svmm_init() 505 struct mmu_interval_notifier notifier; member 514 container_of(mni, struct svm_notifier, notifier); in nouveau_svm_range_invalidate() 591 struct svm_notifier *notifier) in nouveau_atomic_range_fault() argument 595 struct mm_struct *mm = svmm->notifier.mm; in nouveau_atomic_range_fault() 601 ret = mmu_interval_notifier_insert(¬ifier->notifier, mm, in nouveau_atomic_range_fault() [all …]
|
/linux-6.6.21/drivers/media/platform/sunxi/sun4i-csi/ |
D | sun4i_csi.c | 42 static int sun4i_csi_notify_bound(struct v4l2_async_notifier *notifier, in sun4i_csi_notify_bound() argument 46 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_bound() 47 notifier); in sun4i_csi_notify_bound() 63 static int sun4i_csi_notify_complete(struct v4l2_async_notifier *notifier) in sun4i_csi_notify_complete() argument 65 struct sun4i_csi *csi = container_of(notifier, struct sun4i_csi, in sun4i_csi_notify_complete() 66 notifier); in sun4i_csi_notify_complete() 124 v4l2_async_nf_init(&csi->notifier, &csi->v4l); in sun4i_csi_notifier_init() 137 asd = v4l2_async_nf_add_fwnode_remote(&csi->notifier, ep, in sun4i_csi_notifier_init() 144 csi->notifier.ops = &sun4i_csi_notify_ops; in sun4i_csi_notifier_init() 242 ret = v4l2_async_nf_register(&csi->notifier); in sun4i_csi_probe() [all …]
|
/linux-6.6.21/drivers/media/platform/xilinx/ |
D | xilinx-vipp.c | 59 &xdev->notifier.done_list, in xvip_graph_find_entity() 60 &xdev->notifier.waiting_list in xvip_graph_find_entity() 290 static int xvip_graph_notify_complete(struct v4l2_async_notifier *notifier) in xvip_graph_notify_complete() argument 293 container_of(notifier, struct xvip_composite_device, notifier); in xvip_graph_notify_complete() 301 list_for_each_entry(asd, &xdev->notifier.done_list, asc_entry) { in xvip_graph_notify_complete() 320 static int xvip_graph_notify_bound(struct v4l2_async_notifier *notifier, in xvip_graph_notify_bound() argument 370 xge = v4l2_async_nf_add_fwnode(&xdev->notifier, remote, in xvip_graph_parse_one() 382 v4l2_async_nf_cleanup(&xdev->notifier); in xvip_graph_parse_one() 403 list_for_each_entry(asd, &xdev->notifier.waiting_list, asc_entry) { in xvip_graph_parse() 407 v4l2_async_nf_cleanup(&xdev->notifier); in xvip_graph_parse() [all …]
|
/linux-6.6.21/drivers/media/platform/sunxi/sun6i-mipi-csi2/ |
D | sun6i_mipi_csi2.c | 408 sun6i_mipi_csi2_notifier_bound(struct v4l2_async_notifier *notifier, in sun6i_mipi_csi2_notifier_bound() argument 412 struct v4l2_subdev *subdev = notifier->sd; in sun6i_mipi_csi2_notifier_bound() 414 container_of(notifier, struct sun6i_mipi_csi2_device, in sun6i_mipi_csi2_notifier_bound() 415 bridge.notifier); in sun6i_mipi_csi2_notifier_bound() 462 struct v4l2_async_notifier *notifier = &csi2_dev->bridge.notifier; in sun6i_mipi_csi2_bridge_source_setup() local 481 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun6i_mipi_csi2_bridge_source_setup() 496 struct v4l2_async_notifier *notifier = &bridge->notifier; in sun6i_mipi_csi2_bridge_setup() local 533 v4l2_async_subdev_nf_init(notifier, subdev); in sun6i_mipi_csi2_bridge_setup() 534 notifier->ops = &sun6i_mipi_csi2_notifier_ops; in sun6i_mipi_csi2_bridge_setup() 542 ret = v4l2_async_nf_register(notifier); in sun6i_mipi_csi2_bridge_setup() [all …]
|
/linux-6.6.21/drivers/media/platform/renesas/ |
D | rcar-isp.c | 122 struct v4l2_async_notifier notifier; member 137 return container_of(n, struct rcar_isp, notifier); in notifier_to_isp() 327 static int risp_notify_bound(struct v4l2_async_notifier *notifier, in risp_notify_bound() argument 331 struct rcar_isp *isp = notifier_to_isp(notifier); in risp_notify_bound() 351 static void risp_notify_unbind(struct v4l2_async_notifier *notifier, in risp_notify_unbind() argument 355 struct rcar_isp *isp = notifier_to_isp(notifier); in risp_notify_unbind() 395 v4l2_async_subdev_nf_init(&isp->notifier, &isp->subdev); in risp_parse_dt() 396 isp->notifier.ops = &risp_notify_ops; in risp_parse_dt() 398 asd = v4l2_async_nf_add_fwnode(&isp->notifier, fwnode, in risp_parse_dt() 404 ret = v4l2_async_nf_register(&isp->notifier); in risp_parse_dt() [all …]
|
/linux-6.6.21/drivers/media/platform/sunxi/sun6i-csi/ |
D | sun6i_csi_bridge.c | 643 sun6i_csi_bridge_notifier_bound(struct v4l2_async_notifier *notifier, in sun6i_csi_bridge_notifier_bound() argument 648 container_of(notifier, struct sun6i_csi_device, in sun6i_csi_bridge_notifier_bound() 649 bridge.notifier); in sun6i_csi_bridge_notifier_bound() 686 sun6i_csi_bridge_notifier_complete(struct v4l2_async_notifier *notifier) in sun6i_csi_bridge_notifier_complete() argument 689 container_of(notifier, struct sun6i_csi_device, in sun6i_csi_bridge_notifier_complete() 690 bridge.notifier); in sun6i_csi_bridge_notifier_complete() 713 struct v4l2_async_notifier *notifier = &csi_dev->bridge.notifier; in sun6i_csi_bridge_source_setup() local 747 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun6i_csi_bridge_source_setup() 771 struct v4l2_async_notifier *notifier = &bridge->notifier; in sun6i_csi_bridge_setup() local 823 v4l2_async_subdev_nf_init(notifier, subdev); in sun6i_csi_bridge_setup() [all …]
|
/linux-6.6.21/drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/ |
D | sun8i_a83t_mipi_csi2.c | 445 sun8i_a83t_mipi_csi2_notifier_bound(struct v4l2_async_notifier *notifier, in sun8i_a83t_mipi_csi2_notifier_bound() argument 449 struct v4l2_subdev *subdev = notifier->sd; in sun8i_a83t_mipi_csi2_notifier_bound() 451 container_of(notifier, struct sun8i_a83t_mipi_csi2_device, in sun8i_a83t_mipi_csi2_notifier_bound() 452 bridge.notifier); in sun8i_a83t_mipi_csi2_notifier_bound() 499 struct v4l2_async_notifier *notifier = &csi2_dev->bridge.notifier; in sun8i_a83t_mipi_csi2_bridge_source_setup() local 518 v4l2_async_nf_add_fwnode_remote(notifier, handle, in sun8i_a83t_mipi_csi2_bridge_source_setup() 534 struct v4l2_async_notifier *notifier = &bridge->notifier; in sun8i_a83t_mipi_csi2_bridge_setup() local 571 v4l2_async_subdev_nf_init(notifier, subdev); in sun8i_a83t_mipi_csi2_bridge_setup() 572 notifier->ops = &sun8i_a83t_mipi_csi2_notifier_ops; in sun8i_a83t_mipi_csi2_bridge_setup() 580 ret = v4l2_async_nf_register(notifier); in sun8i_a83t_mipi_csi2_bridge_setup() [all …]
|
/linux-6.6.21/include/linux/ |
D | preempt.h | 338 void (*sched_in)(struct preempt_notifier *notifier, int cpu); 339 void (*sched_out)(struct preempt_notifier *notifier, 357 void preempt_notifier_register(struct preempt_notifier *notifier); 358 void preempt_notifier_unregister(struct preempt_notifier *notifier); 360 static inline void preempt_notifier_init(struct preempt_notifier *notifier, in preempt_notifier_init() argument 363 INIT_HLIST_NODE(¬ifier->link); in preempt_notifier_init() 364 notifier->ops = ops; in preempt_notifier_init()
|
/linux-6.6.21/drivers/pwm/ |
D | pwm-iqs620a.c | 38 struct notifier_block notifier; member 134 static int iqs620_pwm_notifier(struct notifier_block *notifier, in iqs620_pwm_notifier() argument 143 iqs620_pwm = container_of(notifier, struct iqs620_pwm_private, in iqs620_pwm_notifier() 144 notifier); in iqs620_pwm_notifier() 178 &iqs620_pwm->notifier); in iqs620_pwm_notifier_unregister() 215 iqs620_pwm->notifier.notifier_call = iqs620_pwm_notifier; in iqs620_pwm_probe() 217 &iqs620_pwm->notifier); in iqs620_pwm_probe()
|
/linux-6.6.21/drivers/edac/ |
D | sifive_edac.c | 18 struct notifier_block notifier; member 33 p = container_of(this, struct sifive_edac_priv, notifier); in ecc_err_event() 51 p->notifier.notifier_call = ecc_err_event; in ecc_register() 70 register_sifive_ccache_error_notifier(&p->notifier); in ecc_register() 84 unregister_sifive_ccache_error_notifier(&p->notifier); in ecc_unregister()
|
D | octeon_edac-pc.c | 29 struct notifier_block notifier; member 42 notifier); in co_cache_error_event() 91 p->notifier.notifier_call = co_cache_error_event; in co_cache_error_probe() 112 register_co_cache_error_notifier(&p->notifier); in co_cache_error_probe() 126 unregister_co_cache_error_notifier(&p->notifier); in co_cache_error_remove()
|
/linux-6.6.21/drivers/media/platform/ |
D | video-mux.c | 25 struct v4l2_async_notifier notifier; member 42 return container_of(n, struct video_mux, notifier); in notifier_to_video_mux() 315 static int video_mux_notify_bound(struct v4l2_async_notifier *notifier, in video_mux_notify_bound() argument 319 struct video_mux *vmux = notifier_to_video_mux(notifier); in video_mux_notify_bound() 334 v4l2_async_subdev_nf_init(&vmux->notifier, &vmux->subdev); in video_mux_async_register() 354 asd = v4l2_async_nf_add_fwnode_remote(&vmux->notifier, ep, in video_mux_async_register() 367 vmux->notifier.ops = &video_mux_notify_ops; in video_mux_async_register() 369 ret = v4l2_async_nf_register(&vmux->notifier); in video_mux_async_register() 380 v4l2_async_nf_unregister(&vmux->notifier); in video_mux_async_register() 382 v4l2_async_nf_cleanup(&vmux->notifier); in video_mux_async_register() [all …]
|
/linux-6.6.21/drivers/leds/trigger/ |
D | ledtrig-backlight.c | 24 struct notifier_block notifier; member 32 struct bl_trig_notifier, notifier); in fb_notifier_callback() 115 n->notifier.notifier_call = fb_notifier_callback; in bl_trig_activate() 117 ret = fb_register_client(&n->notifier); in bl_trig_activate() 128 fb_unregister_client(&n->notifier); in bl_trig_deactivate()
|
/linux-6.6.21/drivers/reset/ |
D | reset-sunplus.c | 103 struct notifier_block notifier; member 160 struct sp_reset *reset = container_of(nb, struct sp_reset, notifier); in sp_restart() 193 reset->notifier.notifier_call = sp_restart; in sp_reset_probe() 194 reset->notifier.priority = 192; in sp_reset_probe() 196 return register_restart_handler(&reset->notifier); in sp_reset_probe()
|
/linux-6.6.21/drivers/media/platform/renesas/rcar-vin/ |
D | rcar-core.c | 223 static int rvin_group_notify_complete(struct v4l2_async_notifier *notifier) in rvin_group_notify_complete() argument 225 struct rvin_dev *vin = v4l2_dev_to_vin(notifier->v4l2_dev); in rvin_group_notify_complete() 252 static void rvin_group_notify_unbind(struct v4l2_async_notifier *notifier, in rvin_group_notify_unbind() argument 256 struct rvin_dev *vin = v4l2_dev_to_vin(notifier->v4l2_dev); in rvin_group_notify_unbind() 278 static int rvin_group_notify_bound(struct v4l2_async_notifier *notifier, in rvin_group_notify_bound() argument 282 struct rvin_dev *vin = v4l2_dev_to_vin(notifier->v4l2_dev); in rvin_group_notify_bound() 329 asc = v4l2_async_nf_add_fwnode(&vin->group->notifier, fwnode, in rvin_group_parse_of() 348 if (&vin->v4l2_dev == vin->group->notifier.v4l2_dev) { in rvin_group_notifier_cleanup() 349 v4l2_async_nf_unregister(&vin->group->notifier); in rvin_group_notifier_cleanup() 350 v4l2_async_nf_cleanup(&vin->group->notifier); in rvin_group_notifier_cleanup() [all …]
|
/linux-6.6.21/drivers/media/platform/nxp/imx8-isi/ |
D | imx8-isi-core.c | 46 return container_of(n, struct mxc_isi_dev, notifier); in notifier_to_mxc_isi_dev() 49 static int mxc_isi_async_notifier_bound(struct v4l2_async_notifier *notifier, in mxc_isi_async_notifier_bound() argument 55 struct mxc_isi_dev *isi = notifier_to_mxc_isi_dev(notifier); in mxc_isi_async_notifier_bound() 78 static int mxc_isi_async_notifier_complete(struct v4l2_async_notifier *notifier) in mxc_isi_async_notifier_complete() argument 80 struct mxc_isi_dev *isi = notifier_to_mxc_isi_dev(notifier); in mxc_isi_async_notifier_complete() 178 v4l2_async_nf_init(&isi->notifier, v4l2_dev); in mxc_isi_v4l2_init() 179 isi->notifier.ops = &mxc_isi_async_notifier_ops; in mxc_isi_v4l2_init() 191 masd = v4l2_async_nf_add_fwnode_remote(&isi->notifier, ep, in mxc_isi_v4l2_init() 203 ret = v4l2_async_nf_register(&isi->notifier); in mxc_isi_v4l2_init() 214 v4l2_async_nf_cleanup(&isi->notifier); in mxc_isi_v4l2_init() [all …]
|