/kernel/linux/linux-6.6/drivers/media/platform/mediatek/jpeg/ |
H A D | mtk_jpeg_core.c | 136 struct mtk_jpeg_dev *jpeg = video_drvdata(file); in mtk_jpeg_querycap() local 138 strscpy(cap->driver, jpeg->variant->dev_name, sizeof(cap->driver)); in mtk_jpeg_querycap() 139 strscpy(cap->card, jpeg->variant->dev_name, sizeof(cap->card)); in mtk_jpeg_querycap() 216 struct mtk_jpeg_dev *jpeg = ctx->jpeg; in mtk_jpeg_enum_fmt_vid_cap() local 218 return mtk_jpeg_enum_fmt(jpeg->variant->formats, in mtk_jpeg_enum_fmt_vid_cap() 219 jpeg->variant->num_formats, f, in mtk_jpeg_enum_fmt_vid_cap() 227 struct mtk_jpeg_dev *jpeg = ctx->jpeg; in mtk_jpeg_enum_fmt_vid_out() local 229 return mtk_jpeg_enum_fmt(jpeg in mtk_jpeg_enum_fmt_vid_out() 309 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_g_fmt_vid_mplane() local 355 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_try_fmt_vid_cap_mplane() local 384 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_try_fmt_vid_out_mplane() local 415 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_s_fmt_mplane() local 681 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_queue_setup() local 735 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_check_resolution_change() local 759 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_set_queue_data() local 793 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_enc_buf_queue() local 805 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_dec_buf_queue() local 942 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_enc_device_run() local 984 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_multicore_enc_device_run() local 992 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_multicore_dec_device_run() local 1000 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_dec_device_run() local 1078 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_queue_init() local 1108 mtk_jpeg_clk_on(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_on() argument 1118 mtk_jpeg_clk_off(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_off() argument 1127 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_set_default_params() local 1160 struct mtk_jpeg_dev *jpeg = video_drvdata(file); mtk_jpeg_open() local 1214 struct mtk_jpeg_dev *jpeg = video_drvdata(file); mtk_jpeg_release() local 1238 struct mtk_jpeg_dev *jpeg = container_of(work, struct mtk_jpeg_dev, mtk_jpeg_job_timeout_work() local 1259 struct mtk_jpeg_dev *jpeg = jpeg_dev; mtk_jpeg_single_core_init() local 1299 struct mtk_jpeg_dev *jpeg; mtk_jpeg_probe() local 1404 struct mtk_jpeg_dev *jpeg = platform_get_drvdata(pdev); mtk_jpeg_remove() local 1414 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_pm_suspend() local 1423 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_pm_resume() local 1432 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_suspend() local 1440 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_resume() local 1459 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpegenc_get_hw() local 1483 struct mtk_jpegenc_comp_dev *jpeg = ctx->jpeg->enc_hw_dev[hw_id]; mtk_jpegenc_set_hw_param() local 1492 mtk_jpegenc_put_hw(struct mtk_jpeg_dev *jpeg, int hw_id) mtk_jpegenc_put_hw() argument 1506 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpegdec_get_hw() local 1525 mtk_jpegdec_put_hw(struct mtk_jpeg_dev *jpeg, int hw_id) mtk_jpegdec_put_hw() argument 1542 struct mtk_jpegdec_comp_dev *jpeg = mtk_jpegdec_set_hw_param() local 1552 mtk_jpeg_enc_done(struct mtk_jpeg_dev *jpeg) mtk_jpeg_enc_done() argument 1592 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpegenc_worker() local 1683 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpegdec_worker() local 1795 struct mtk_jpeg_dev *jpeg = priv; mtk_jpeg_enc_irq() local 1815 struct mtk_jpeg_dev *jpeg = priv; mtk_jpeg_dec_irq() local [all...] |
H A D | mtk_jpeg_enc_hw.c | 187 static void mtk_jpegenc_put_buf(struct mtk_jpegenc_comp_dev *jpeg) in mtk_jpegenc_put_buf() argument 196 ctx = jpeg->hw_param.curr_ctx; in mtk_jpegenc_put_buf() 198 dev_err(jpeg->dev, "comp_jpeg ctx fail !!!\n"); in mtk_jpegenc_put_buf() 202 dst_buffer = jpeg->hw_param.dst_buffer; in mtk_jpegenc_put_buf() 204 dev_err(jpeg->dev, "comp_jpeg dst_buffer fail !!!\n"); in mtk_jpegenc_put_buf() 264 struct mtk_jpegenc_comp_dev *jpeg = priv; in mtk_jpegenc_hw_irq_handler() local 265 struct mtk_jpeg_dev *master_jpeg = jpeg->master_dev; in mtk_jpegenc_hw_irq_handler() 267 cancel_delayed_work(&jpeg->job_timeout_work); in mtk_jpegenc_hw_irq_handler() 269 ctx = jpeg->hw_param.curr_ctx; in mtk_jpegenc_hw_irq_handler() 270 src_buf = jpeg in mtk_jpegenc_hw_irq_handler() [all...] |
H A D | Makefile | 3 mtk-jpeg-enc-hw.o \ 4 mtk-jpeg-dec-hw.o 9 mtk-jpeg-enc-hw-y := mtk_jpeg_enc_hw.o 10 mtk-jpeg-dec-hw-y := mtk_jpeg_dec_hw.o
|
H A D | mtk_jpeg_dec_hw.c | 53 pr_err("mtk-jpeg: write reg %x without %d align\n", reg, align); in mtk_jpeg_verify_align() 444 static void mtk_jpegdec_put_buf(struct mtk_jpegdec_comp_dev *jpeg) in mtk_jpegdec_put_buf() argument 453 ctx = jpeg->hw_param.curr_ctx; in mtk_jpegdec_put_buf() 455 dev_err(jpeg->dev, "comp_jpeg ctx fail !!!\n"); in mtk_jpegdec_put_buf() 459 dst_buffer = jpeg->hw_param.dst_buffer; in mtk_jpegdec_put_buf() 461 dev_err(jpeg->dev, "comp_jpeg dst_buffer fail !!!\n"); in mtk_jpegdec_put_buf() 520 struct mtk_jpegdec_comp_dev *jpeg = priv; in mtk_jpegdec_hw_irq_handler() local 521 struct mtk_jpeg_dev *master_jpeg = jpeg->master_dev; in mtk_jpegdec_hw_irq_handler() 523 cancel_delayed_work(&jpeg->job_timeout_work); in mtk_jpegdec_hw_irq_handler() 525 ctx = jpeg in mtk_jpegdec_hw_irq_handler() [all...] |
/kernel/linux/linux-5.10/drivers/media/platform/s5p-jpeg/ |
H A D | jpeg-core.c | 2 /* linux/drivers/media/platform/s5p-jpeg/jpeg-core.c 31 #include "jpeg-core.h" 32 #include "jpeg-hw-s5p.h" 33 #include "jpeg-hw-exynos4.h" 34 #include "jpeg-hw-exynos3250.h" 35 #include "jpeg-regs.h" 590 switch (ctx->jpeg->variant->version) { in s5p_jpeg_to_user_subsampling() 767 struct s5p_jpeg *jpeg = ctx->jpeg; in exynos4_jpeg_parse_decode_h_tbl() local 804 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_huff_tbl() local 863 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_decode_q_tbl() local 894 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_q_tbl() local 947 struct s5p_jpeg *jpeg = video_drvdata(file); s5p_jpeg_open() local 1011 struct s5p_jpeg *jpeg = video_drvdata(file); s5p_jpeg_release() local 1853 struct s5p_jpeg *jpeg = ctx->jpeg; s5p_jpeg_g_volatile_ctrl() local 2032 struct s5p_jpeg *jpeg = ctx->jpeg; s5p_jpeg_device_run() local 2112 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_set_img_addr() local 2150 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_set_jpeg_addr() local 2193 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_device_run() local 2273 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_set_img_addr() local 2306 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_set_jpeg_addr() local 2322 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_device_run() local 2642 struct s5p_jpeg *jpeg = dev_id; s5p_jpeg_irq() local 2702 struct s5p_jpeg *jpeg = priv; exynos4_jpeg_irq() local 2768 struct s5p_jpeg *jpeg = dev_id; exynos3250_jpeg_irq() local 2852 struct s5p_jpeg *jpeg; s5p_jpeg_probe() local 2999 struct s5p_jpeg *jpeg = platform_get_drvdata(pdev); s5p_jpeg_remove() local 3021 struct s5p_jpeg *jpeg = dev_get_drvdata(dev); s5p_jpeg_runtime_suspend() local 3032 struct s5p_jpeg *jpeg = dev_get_drvdata(dev); s5p_jpeg_runtime_resume() local [all...] |
H A D | Makefile | 2 s5p-jpeg-objs := jpeg-core.o jpeg-hw-exynos3250.o jpeg-hw-exynos4.o jpeg-hw-s5p.o 3 obj-$(CONFIG_VIDEO_SAMSUNG_S5P_JPEG) += s5p-jpeg.o
|
/kernel/linux/linux-6.6/drivers/media/platform/samsung/s5p-jpeg/ |
H A D | jpeg-core.c | 2 /* linux/drivers/media/platform/samsung/s5p-jpeg/jpeg-core.c 31 #include "jpeg-core.h" 32 #include "jpeg-hw-s5p.h" 33 #include "jpeg-hw-exynos4.h" 34 #include "jpeg-hw-exynos3250.h" 35 #include "jpeg-regs.h" 590 switch (ctx->jpeg->variant->version) { in s5p_jpeg_to_user_subsampling() 767 struct s5p_jpeg *jpeg = ctx->jpeg; in exynos4_jpeg_parse_decode_h_tbl() local 804 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_huff_tbl() local 863 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_decode_q_tbl() local 894 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_parse_q_tbl() local 947 struct s5p_jpeg *jpeg = video_drvdata(file); s5p_jpeg_open() local 1011 struct s5p_jpeg *jpeg = video_drvdata(file); s5p_jpeg_release() local 1851 struct s5p_jpeg *jpeg = ctx->jpeg; s5p_jpeg_g_volatile_ctrl() local 2030 struct s5p_jpeg *jpeg = ctx->jpeg; s5p_jpeg_device_run() local 2110 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_set_img_addr() local 2148 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_set_jpeg_addr() local 2191 struct s5p_jpeg *jpeg = ctx->jpeg; exynos4_jpeg_device_run() local 2271 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_set_img_addr() local 2304 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_set_jpeg_addr() local 2320 struct s5p_jpeg *jpeg = ctx->jpeg; exynos3250_jpeg_device_run() local 2640 struct s5p_jpeg *jpeg = dev_id; s5p_jpeg_irq() local 2700 struct s5p_jpeg *jpeg = priv; exynos4_jpeg_irq() local 2766 struct s5p_jpeg *jpeg = dev_id; exynos3250_jpeg_irq() local 2850 struct s5p_jpeg *jpeg; s5p_jpeg_probe() local 2994 struct s5p_jpeg *jpeg = platform_get_drvdata(pdev); s5p_jpeg_remove() local 3014 struct s5p_jpeg *jpeg = dev_get_drvdata(dev); s5p_jpeg_runtime_suspend() local 3025 struct s5p_jpeg *jpeg = dev_get_drvdata(dev); s5p_jpeg_runtime_resume() local [all...] |
H A D | Makefile | 2 s5p-jpeg-objs := jpeg-core.o jpeg-hw-exynos3250.o jpeg-hw-exynos4.o jpeg-hw-s5p.o 3 obj-$(CONFIG_VIDEO_SAMSUNG_S5P_JPEG) += s5p-jpeg.o
|
/kernel/linux/linux-5.10/drivers/media/platform/mtk-jpeg/ |
H A D | mtk_jpeg_core.c | 137 struct mtk_jpeg_dev *jpeg = video_drvdata(file); in mtk_jpeg_querycap() local 139 strscpy(cap->driver, jpeg->variant->dev_name, sizeof(cap->driver)); in mtk_jpeg_querycap() 140 strscpy(cap->card, jpeg->variant->dev_name, sizeof(cap->card)); in mtk_jpeg_querycap() 142 dev_name(jpeg->dev)); in mtk_jpeg_querycap() 219 struct mtk_jpeg_dev *jpeg = ctx->jpeg; in mtk_jpeg_enum_fmt_vid_cap() local 221 return mtk_jpeg_enum_fmt(jpeg->variant->formats, in mtk_jpeg_enum_fmt_vid_cap() 222 jpeg->variant->num_formats, f, in mtk_jpeg_enum_fmt_vid_cap() 230 struct mtk_jpeg_dev *jpeg = ctx->jpeg; in mtk_jpeg_enum_fmt_vid_out() local 312 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_g_fmt_vid_mplane() local 358 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_try_fmt_vid_cap_mplane() local 387 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_try_fmt_vid_out_mplane() local 418 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_s_fmt_mplane() local 653 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_queue_setup() local 707 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_check_resolution_change() local 731 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_set_queue_data() local 765 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_enc_buf_queue() local 777 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_dec_buf_queue() local 914 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_enc_device_run() local 956 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_dec_device_run() local 1024 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_queue_init() local 1054 mtk_jpeg_clk_on(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_on() argument 1068 mtk_jpeg_clk_off(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_off() argument 1075 mtk_jpeg_enc_done(struct mtk_jpeg_dev *jpeg) mtk_jpeg_enc_done() argument 1105 struct mtk_jpeg_dev *jpeg = priv; mtk_jpeg_enc_irq() local 1125 struct mtk_jpeg_dev *jpeg = priv; mtk_jpeg_dec_irq() local 1173 struct mtk_jpeg_dev *jpeg = ctx->jpeg; mtk_jpeg_set_default_params() local 1206 struct mtk_jpeg_dev *jpeg = video_drvdata(file); mtk_jpeg_open() local 1256 struct mtk_jpeg_dev *jpeg = video_drvdata(file); mtk_jpeg_release() local 1287 mtk_jpeg_clk_init(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_init() argument 1318 struct mtk_jpeg_dev *jpeg = container_of(work, struct mtk_jpeg_dev, mtk_jpeg_job_timeout_work() local 1336 mtk_jpeg_clk_release(struct mtk_jpeg_dev *jpeg) mtk_jpeg_clk_release() argument 1343 struct mtk_jpeg_dev *jpeg; mtk_jpeg_probe() local 1456 struct mtk_jpeg_dev *jpeg = platform_get_drvdata(pdev); mtk_jpeg_remove() local 1471 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_pm_suspend() local 1480 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_pm_resume() local 1489 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_suspend() local 1497 struct mtk_jpeg_dev *jpeg = dev_get_drvdata(dev); mtk_jpeg_resume() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_jpeg.c | 39 INIT_DELAYED_WORK(&adev->jpeg.idle_work, amdgpu_jpeg_idle_work_handler); in amdgpu_jpeg_sw_init() 40 mutex_init(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_init() 41 atomic_set(&adev->jpeg.total_submission_cnt, 0); in amdgpu_jpeg_sw_init() 50 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in amdgpu_jpeg_sw_fini() 51 if (adev->jpeg.harvest_config & (1 << i)) in amdgpu_jpeg_sw_fini() 54 for (j = 0; j < adev->jpeg.num_jpeg_rings; ++j) in amdgpu_jpeg_sw_fini() 55 amdgpu_ring_fini(&adev->jpeg.inst[i].ring_dec[j]); in amdgpu_jpeg_sw_fini() 58 mutex_destroy(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_fini() 65 cancel_delayed_work_sync(&adev->jpeg.idle_work); in amdgpu_jpeg_suspend() 78 container_of(work, struct amdgpu_device, jpeg in amdgpu_jpeg_idle_work_handler() [all...] |
H A D | jpeg_v2_5.c | 63 adev->jpeg.num_jpeg_rings = 1; in jpeg_v2_5_early_init() 64 adev->jpeg.num_jpeg_inst = JPEG25_MAX_HW_INSTANCES_ARCTURUS; in jpeg_v2_5_early_init() 65 for (i = 0; i < adev->jpeg.num_jpeg_inst; i++) { in jpeg_v2_5_early_init() 68 adev->jpeg.harvest_config |= 1 << i; in jpeg_v2_5_early_init() 70 if (adev->jpeg.harvest_config == (AMDGPU_JPEG_HARVEST_JPEG0 | in jpeg_v2_5_early_init() 94 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in jpeg_v2_5_sw_init() 95 if (adev->jpeg.harvest_config & (1 << i)) in jpeg_v2_5_sw_init() 100 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst[i].irq); in jpeg_v2_5_sw_init() 106 VCN_2_6__SRCID_DJPEG0_POISON, &adev->jpeg.inst[i].ras_poison_irq); in jpeg_v2_5_sw_init() 112 VCN_2_6__SRCID_EJPEG0_POISON, &adev->jpeg in jpeg_v2_5_sw_init() [all...] |
H A D | jpeg_v4_0_3.c | 69 adev->jpeg.num_jpeg_rings = AMDGPU_MAX_JPEG_RINGS; in jpeg_v4_0_3_early_init() 91 for (j = 0; j < adev->jpeg.num_jpeg_rings; ++j) { in jpeg_v4_0_3_sw_init() 94 amdgpu_ih_srcid_jpeg[j], &adev->jpeg.inst->irq); in jpeg_v4_0_3_sw_init() 107 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in jpeg_v4_0_3_sw_init() 110 for (j = 0; j < adev->jpeg.num_jpeg_rings; ++j) { in jpeg_v4_0_3_sw_init() 111 ring = &adev->jpeg.inst[i].ring_dec[j]; in jpeg_v4_0_3_sw_init() 113 ring->vm_hub = AMDGPU_MMHUB0(adev->jpeg.inst[i].aid_id); in jpeg_v4_0_3_sw_init() 128 sprintf(ring->name, "jpeg_dec_%d.%d", adev->jpeg.inst[i].aid_id, j); in jpeg_v4_0_3_sw_init() 129 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0, in jpeg_v4_0_3_sw_init() 134 adev->jpeg in jpeg_v4_0_3_sw_init() [all...] |
H A D | jpeg_v4_0.c | 60 adev->jpeg.num_jpeg_inst = 1; in jpeg_v4_0_early_init() 61 adev->jpeg.num_jpeg_rings = 1; in jpeg_v4_0_early_init() 85 VCN_4_0__SRCID__JPEG_DECODE, &adev->jpeg.inst->irq); in jpeg_v4_0_sw_init() 91 VCN_4_0__SRCID_DJPEG0_POISON, &adev->jpeg.inst->ras_poison_irq); in jpeg_v4_0_sw_init() 97 VCN_4_0__SRCID_EJPEG0_POISON, &adev->jpeg.inst->ras_poison_irq); in jpeg_v4_0_sw_init() 109 ring = adev->jpeg.inst->ring_dec; in jpeg_v4_0_sw_init() 115 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0, in jpeg_v4_0_sw_init() 120 adev->jpeg.internal.jpeg_pitch[0] = regUVD_JPEG_PITCH_INTERNAL_OFFSET; in jpeg_v4_0_sw_init() 121 adev->jpeg.inst->external.jpeg_pitch[0] = SOC15_REG_OFFSET(JPEG, 0, regUVD_JPEG_PITCH); in jpeg_v4_0_sw_init() 160 struct amdgpu_ring *ring = adev->jpeg in jpeg_v4_0_hw_init() [all...] |
H A D | jpeg_v3_0.c | 66 adev->jpeg.num_jpeg_inst = 1; in jpeg_v3_0_early_init() 67 adev->jpeg.num_jpeg_rings = 1; in jpeg_v3_0_early_init() 90 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst->irq); in jpeg_v3_0_sw_init() 102 ring = adev->jpeg.inst->ring_dec; in jpeg_v3_0_sw_init() 107 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0, in jpeg_v3_0_sw_init() 112 adev->jpeg.internal.jpeg_pitch[0] = mmUVD_JPEG_PITCH_INTERNAL_OFFSET; in jpeg_v3_0_sw_init() 113 adev->jpeg.inst->external.jpeg_pitch[0] = SOC15_REG_OFFSET(JPEG, 0, mmUVD_JPEG_PITCH); in jpeg_v3_0_sw_init() 148 struct amdgpu_ring *ring = adev->jpeg.inst->ring_dec; in jpeg_v3_0_hw_init() 176 if (adev->jpeg.cur_state != AMD_PG_STATE_GATE && in jpeg_v3_0_hw_fini() 334 struct amdgpu_ring *ring = adev->jpeg in jpeg_v3_0_start() [all...] |
H A D | jpeg_v2_0.c | 51 adev->jpeg.num_jpeg_inst = 1; in jpeg_v2_0_early_init() 52 adev->jpeg.num_jpeg_rings = 1; in jpeg_v2_0_early_init() 75 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst->irq); in jpeg_v2_0_sw_init() 87 ring = adev->jpeg.inst->ring_dec; in jpeg_v2_0_sw_init() 92 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, in jpeg_v2_0_sw_init() 97 adev->jpeg.internal.jpeg_pitch[0] = mmUVD_JPEG_PITCH_INTERNAL_OFFSET; in jpeg_v2_0_sw_init() 98 adev->jpeg.inst->external.jpeg_pitch[0] = SOC15_REG_OFFSET(JPEG, 0, mmUVD_JPEG_PITCH); in jpeg_v2_0_sw_init() 133 struct amdgpu_ring *ring = adev->jpeg.inst->ring_dec; in jpeg_v2_0_hw_init() 159 if (adev->jpeg.cur_state != AMD_PG_STATE_GATE && in jpeg_v2_0_hw_fini() 316 struct amdgpu_ring *ring = adev->jpeg in jpeg_v2_0_start() [all...] |
H A D | jpeg_v1_0.c | 440 amdgpu_fence_process(adev->jpeg.inst->ring_dec); in jpeg_v1_0_process_interrupt() 462 adev->jpeg.num_jpeg_inst = 1; in jpeg_v1_0_early_init() 463 adev->jpeg.num_jpeg_rings = 1; in jpeg_v1_0_early_init() 484 r = amdgpu_irq_add_id(adev, SOC15_IH_CLIENTID_VCN, 126, &adev->jpeg.inst->irq); in jpeg_v1_0_sw_init() 488 ring = adev->jpeg.inst->ring_dec; in jpeg_v1_0_sw_init() 491 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, in jpeg_v1_0_sw_init() 496 adev->jpeg.internal.jpeg_pitch[0] = adev->jpeg.inst->external.jpeg_pitch[0] = in jpeg_v1_0_sw_init() 513 amdgpu_ring_fini(adev->jpeg.inst->ring_dec); in jpeg_v1_0_sw_fini() 526 struct amdgpu_ring *ring = adev->jpeg in jpeg_v1_0_start() [all...] |
H A D | vcn_v1_0.c | 214 ring = adev->jpeg.inst->ring_dec; in vcn_v1_0_hw_init() 1223 adev->vcn.inst[inst_idx].pause_state.jpeg, in vcn_v1_0_pause_dpg_mode() 1224 new_state->fw_based, new_state->jpeg); in vcn_v1_0_pause_dpg_mode() 1238 /* pause DPG non-jpeg */ in vcn_v1_0_pause_dpg_mode() 1268 /* unpause dpg non-jpeg, no need to wait */ in vcn_v1_0_pause_dpg_mode() 1276 if (adev->vcn.inst[inst_idx].pause_state.jpeg != new_state->jpeg) { in vcn_v1_0_pause_dpg_mode() 1279 adev->vcn.inst[inst_idx].pause_state.jpeg, in vcn_v1_0_pause_dpg_mode() 1280 new_state->fw_based, new_state->jpeg); in vcn_v1_0_pause_dpg_mode() 1285 if (new_state->jpeg in vcn_v1_0_pause_dpg_mode() [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_jpeg.c | 39 INIT_DELAYED_WORK(&adev->jpeg.idle_work, amdgpu_jpeg_idle_work_handler); in amdgpu_jpeg_sw_init() 40 mutex_init(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_init() 41 atomic_set(&adev->jpeg.total_submission_cnt, 0); in amdgpu_jpeg_sw_init() 50 cancel_delayed_work_sync(&adev->jpeg.idle_work); in amdgpu_jpeg_sw_fini() 52 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in amdgpu_jpeg_sw_fini() 53 if (adev->jpeg.harvest_config & (1 << i)) in amdgpu_jpeg_sw_fini() 56 amdgpu_ring_fini(&adev->jpeg.inst[i].ring_dec); in amdgpu_jpeg_sw_fini() 59 mutex_destroy(&adev->jpeg.jpeg_pg_lock); in amdgpu_jpeg_sw_fini() 66 cancel_delayed_work_sync(&adev->jpeg.idle_work); in amdgpu_jpeg_suspend() 79 container_of(work, struct amdgpu_device, jpeg in amdgpu_jpeg_idle_work_handler() [all...] |
H A D | jpeg_v2_5.c | 61 adev->jpeg.num_jpeg_inst = JPEG25_MAX_HW_INSTANCES_ARCTURUS; in jpeg_v2_5_early_init() 62 for (i = 0; i < adev->jpeg.num_jpeg_inst; i++) { in jpeg_v2_5_early_init() 65 adev->jpeg.harvest_config |= 1 << i; in jpeg_v2_5_early_init() 67 if (adev->jpeg.harvest_config == (AMDGPU_JPEG_HARVEST_JPEG0 | in jpeg_v2_5_early_init() 90 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in jpeg_v2_5_sw_init() 91 if (adev->jpeg.harvest_config & (1 << i)) in jpeg_v2_5_sw_init() 96 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst[i].irq); in jpeg_v2_5_sw_init() 109 for (i = 0; i < adev->jpeg.num_jpeg_inst; ++i) { in jpeg_v2_5_sw_init() 110 if (adev->jpeg.harvest_config & (1 << i)) in jpeg_v2_5_sw_init() 113 ring = &adev->jpeg in jpeg_v2_5_sw_init() [all...] |
H A D | jpeg_v3_0.c | 57 adev->jpeg.num_jpeg_inst = 1; in jpeg_v3_0_early_init() 80 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst->irq); in jpeg_v3_0_sw_init() 92 ring = &adev->jpeg.inst->ring_dec; in jpeg_v3_0_sw_init() 96 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0, in jpeg_v3_0_sw_init() 101 adev->jpeg.internal.jpeg_pitch = mmUVD_JPEG_PITCH_INTERNAL_OFFSET; in jpeg_v3_0_sw_init() 102 adev->jpeg.inst->external.jpeg_pitch = SOC15_REG_OFFSET(JPEG, 0, mmUVD_JPEG_PITCH); in jpeg_v3_0_sw_init() 137 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; in jpeg_v3_0_hw_init() 165 if (adev->jpeg.cur_state != AMD_PG_STATE_GATE && in jpeg_v3_0_hw_fini() 323 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; in jpeg_v3_0_start() 490 if(state == adev->jpeg in jpeg_v3_0_set_powergating_state() [all...] |
H A D | jpeg_v2_0.c | 71 adev->jpeg.num_jpeg_inst = 1; in jpeg_v2_0_early_init() 94 VCN_2_0__SRCID__JPEG_DECODE, &adev->jpeg.inst->irq); in jpeg_v2_0_sw_init() 106 ring = &adev->jpeg.inst->ring_dec; in jpeg_v2_0_sw_init() 110 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, in jpeg_v2_0_sw_init() 115 adev->jpeg.internal.jpeg_pitch = mmUVD_JPEG_PITCH_INTERNAL_OFFSET; in jpeg_v2_0_sw_init() 116 adev->jpeg.inst->external.jpeg_pitch = SOC15_REG_OFFSET(JPEG, 0, mmUVD_JPEG_PITCH); in jpeg_v2_0_sw_init() 151 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; in jpeg_v2_0_hw_init() 177 if (adev->jpeg.cur_state != AMD_PG_STATE_GATE && in jpeg_v2_0_hw_fini() 334 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; in jpeg_v2_0_start() 713 if (state == adev->jpeg in jpeg_v2_0_set_powergating_state() [all...] |
H A D | jpeg_v1_0.c | 436 amdgpu_fence_process(&adev->jpeg.inst->ring_dec); in jpeg_v1_0_process_interrupt() 458 adev->jpeg.num_jpeg_inst = 1; in jpeg_v1_0_early_init() 479 r = amdgpu_irq_add_id(adev, SOC15_IH_CLIENTID_VCN, 126, &adev->jpeg.inst->irq); in jpeg_v1_0_sw_init() 483 ring = &adev->jpeg.inst->ring_dec; in jpeg_v1_0_sw_init() 485 r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, in jpeg_v1_0_sw_init() 490 adev->jpeg.internal.jpeg_pitch = adev->jpeg.inst->external.jpeg_pitch = in jpeg_v1_0_sw_init() 507 amdgpu_ring_fini(&adev->jpeg.inst[0].ring_dec); in jpeg_v1_0_sw_fini() 519 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; in jpeg_v1_0_start() 535 /* copy patch commands to the jpeg rin in jpeg_v1_0_start() [all...] |
H A D | vcn_v1_0.c | 211 ring = &adev->jpeg.inst->ring_dec; in vcn_v1_0_hw_init() 1222 adev->vcn.inst[inst_idx].pause_state.jpeg, in vcn_v1_0_pause_dpg_mode() 1223 new_state->fw_based, new_state->jpeg); in vcn_v1_0_pause_dpg_mode() 1237 /* pause DPG non-jpeg */ in vcn_v1_0_pause_dpg_mode() 1267 /* unpause dpg non-jpeg, no need to wait */ in vcn_v1_0_pause_dpg_mode() 1275 if (adev->vcn.inst[inst_idx].pause_state.jpeg != new_state->jpeg) { in vcn_v1_0_pause_dpg_mode() 1278 adev->vcn.inst[inst_idx].pause_state.jpeg, in vcn_v1_0_pause_dpg_mode() 1279 new_state->fw_based, new_state->jpeg); in vcn_v1_0_pause_dpg_mode() 1284 if (new_state->jpeg in vcn_v1_0_pause_dpg_mode() [all...] |
/kernel/linux/linux-6.6/drivers/media/platform/nxp/imx-jpeg/ |
H A D | mxc-jpeg.c | 8 * Baseline and extended sequential jpeg decoding is supported. 9 * Progressive jpeg decoding is not supported by the IP. 19 * from the jpeg stream, by parsing the jpeg markers. 32 * but the driver works around this by replacing them in the jpeg stream. 38 * This is inspired by the drivers/media/platform/samsung/s5p-jpeg driver 56 #include <media/v4l2-jpeg.h> 63 #include "mxc-jpeg-hw.h" 64 #include "mxc-jpeg.h" 560 /* mxc-jpeg specifi 590 print_mxc_buf(struct mxc_jpeg_dev *jpeg, struct vb2_buffer *buf, unsigned long len) print_mxc_buf() argument 755 mxc_jpeg_alloc_slot_data(struct mxc_jpeg_dev *jpeg) mxc_jpeg_alloc_slot_data() argument 801 mxc_jpeg_free_slot_data(struct mxc_jpeg_dev *jpeg) mxc_jpeg_free_slot_data() argument 835 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_job_finish() local 882 struct mxc_jpeg_dev *jpeg = priv; mxc_jpeg_dec_irq() local 1169 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_config_dec_desc() local 1235 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_config_enc_desc() local 1415 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_device_run_timeout() local 1431 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_device_run() local 2338 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_try_fmt_vid_cap() local 2357 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_try_fmt_vid_out() local 2389 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_s_fmt() local 2451 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg; mxc_jpeg_g_fmt_vid() local 2669 mxc_jpeg_detach_pm_domains(struct mxc_jpeg_dev *jpeg) mxc_jpeg_detach_pm_domains() argument 2683 mxc_jpeg_attach_pm_domains(struct mxc_jpeg_dev *jpeg) mxc_jpeg_attach_pm_domains() argument 2736 struct mxc_jpeg_dev *jpeg; mxc_jpeg_probe() local 2886 struct mxc_jpeg_dev *jpeg = dev_get_drvdata(dev); mxc_jpeg_runtime_resume() local 2900 struct mxc_jpeg_dev *jpeg = dev_get_drvdata(dev); mxc_jpeg_runtime_suspend() local 2911 struct mxc_jpeg_dev *jpeg = dev_get_drvdata(dev); mxc_jpeg_suspend() local 2919 struct mxc_jpeg_dev *jpeg = dev_get_drvdata(dev); mxc_jpeg_resume() local 2939 struct mxc_jpeg_dev *jpeg = platform_get_drvdata(pdev); mxc_jpeg_remove() local [all...] |
H A D | Makefile | 2 mxc-jpeg-encdec-objs := mxc-jpeg-hw.o mxc-jpeg.o 3 obj-$(CONFIG_VIDEO_IMX8_JPEG) += mxc-jpeg-encdec.o
|