Home
last modified time | relevance | path

Searched refs:scaler (Results 1 – 25 of 65) sorted by relevance

123

/linux-6.12.1/drivers/gpu/drm/exynos/
Dexynos_drm_scaler.c27 #define scaler_read(offset) readl(scaler->regs + (offset))
28 #define scaler_write(cfg, offset) writel(cfg, scaler->regs + (offset))
93 static inline int scaler_reset(struct scaler_context *scaler) in scaler_reset() argument
110 static inline void scaler_enable_int(struct scaler_context *scaler) in scaler_enable_int() argument
143 static inline void scaler_set_src_fmt(struct scaler_context *scaler, in scaler_set_src_fmt() argument
152 static inline void scaler_set_src_base(struct scaler_context *scaler, in scaler_set_src_base() argument
166 static inline void scaler_set_src_span(struct scaler_context *scaler, in scaler_set_src_span() argument
180 static inline void scaler_set_src_luma_chroma_pos(struct scaler_context *scaler, in scaler_set_src_luma_chroma_pos() argument
196 static inline void scaler_set_src_wh(struct scaler_context *scaler, in scaler_set_src_wh() argument
206 static inline void scaler_set_dst_fmt(struct scaler_context *scaler, in scaler_set_dst_fmt() argument
[all …]
/linux-6.12.1/drivers/media/platform/samsung/s3c-camif/
Dcamif-core.c144 struct camif_scaler *scaler) in s3c_camif_get_scaler_config() argument
156 ret = camif_get_scaler_factor(source_x, target_x, &scaler->pre_h_ratio, in s3c_camif_get_scaler_config()
157 &scaler->h_shift); in s3c_camif_get_scaler_config()
161 ret = camif_get_scaler_factor(source_y, target_y, &scaler->pre_v_ratio, in s3c_camif_get_scaler_config()
162 &scaler->v_shift); in s3c_camif_get_scaler_config()
166 scaler->pre_dst_width = source_x / scaler->pre_h_ratio; in s3c_camif_get_scaler_config()
167 scaler->pre_dst_height = source_y / scaler->pre_v_ratio; in s3c_camif_get_scaler_config()
169 scaler->main_h_ratio = (source_x << 8) / (target_x << scaler->h_shift); in s3c_camif_get_scaler_config()
170 scaler->main_v_ratio = (source_y << 8) / (target_y << scaler->v_shift); in s3c_camif_get_scaler_config()
172 scaler->scaleup_h = (target_x >= source_x); in s3c_camif_get_scaler_config()
[all …]
Dcamif-regs.c364 struct camif_scaler *sc = &vp->scaler; in camif_hw_set_prescaler()
382 struct camif_scaler *scaler = &vp->scaler; in camif_s3c244x_hw_set_scaler() local
393 if (scaler->enable) { in camif_s3c244x_hw_set_scaler()
394 if (scaler->scaleup_h) { in camif_s3c244x_hw_set_scaler()
400 if (scaler->scaleup_v) { in camif_s3c244x_hw_set_scaler()
411 cfg |= ((scaler->main_h_ratio & 0x1ff) << 16); in camif_s3c244x_hw_set_scaler()
412 cfg |= scaler->main_v_ratio & 0x1ff; in camif_s3c244x_hw_set_scaler()
423 scaler->main_h_ratio, scaler->main_v_ratio); in camif_s3c244x_hw_set_scaler()
429 struct camif_scaler *scaler = &vp->scaler; in camif_s3c64xx_hw_set_scaler() local
446 if (!scaler->enable) { in camif_s3c64xx_hw_set_scaler()
[all …]
Dcamif-core.h225 struct camif_scaler scaler; member
344 struct camif_scaler *scaler);
Dcamif-capture.c46 WARN_ON(s3c_camif_get_scaler_config(vp, &vp->scaler)); in camif_cfg_video_path()
410 camif_hw_enable_scaler(vp, vp->scaler.enable); in start_streaming()
506 camif_hw_enable_scaler(vp, vp->scaler.enable); in buffer_queue()
1439 struct camif_scaler scaler; in s3c_camif_subdev_set_selection() local
1458 scaler = vp->scaler; in s3c_camif_subdev_set_selection()
1459 if (s3c_camif_get_scaler_config(vp, &scaler)) in s3c_camif_subdev_set_selection()
1461 vp->scaler = scaler; in s3c_camif_subdev_set_selection()
1635 vp->scaler.enable = 1; in s3c_camif_set_defaults()
/linux-6.12.1/drivers/staging/media/ipu3/
Dipu3-css-params.c871 struct imgu_abi_osys_scaler_params *scaler = in imgu_css_osys_calc() local
872 &osys->scaler[s].param; in imgu_css_osys_calc()
877 scaler->inp_buf_y_st_addr = IMGU_VMEM1_INP_BUF_ADDR; in imgu_css_osys_calc()
885 scaler->inp_buf_y_line_stride = IMGU_VMEM1_Y_STRIDE; in imgu_css_osys_calc()
894 scaler->inp_buf_y_buffer_stride = IMGU_VMEM1_BUF_SIZE; in imgu_css_osys_calc()
895 scaler->inp_buf_u_st_addr = IMGU_VMEM1_INP_BUF_ADDR + in imgu_css_osys_calc()
897 scaler->inp_buf_v_st_addr = IMGU_VMEM1_INP_BUF_ADDR + in imgu_css_osys_calc()
899 scaler->inp_buf_uv_line_stride = IMGU_VMEM1_UV_STRIDE; in imgu_css_osys_calc()
900 scaler->inp_buf_uv_buffer_stride = IMGU_VMEM1_BUF_SIZE; in imgu_css_osys_calc()
901 scaler->inp_buf_chunk_width = stripe_params[s].chunk_width; in imgu_css_osys_calc()
[all …]
/linux-6.12.1/drivers/gpu/drm/arm/display/komeda/
Dkomeda_pipeline_state.c443 komeda_scaler_check_cfg(struct komeda_scaler *scaler, in komeda_scaler_check_cfg() argument
455 if (!malidp_in_range(&scaler->hsize, hsize_in) || in komeda_scaler_check_cfg()
456 !malidp_in_range(&scaler->hsize, hsize_out)) { in komeda_scaler_check_cfg()
461 if (!malidp_in_range(&scaler->vsize, vsize_in) || in komeda_scaler_check_cfg()
462 !malidp_in_range(&scaler->vsize, vsize_out)) { in komeda_scaler_check_cfg()
473 max_upscaling = scaler->max_upscaling; in komeda_scaler_check_cfg()
476 scaler->max_downscaling)) { in komeda_scaler_check_cfg()
482 scaler->max_downscaling)) { in komeda_scaler_check_cfg()
488 struct komeda_pipeline *pipe = scaler->base.pipeline; in komeda_scaler_check_cfg()
511 struct komeda_scaler *scaler; in komeda_scaler_validate() local
[all …]
Dkomeda_private_obj.c91 struct komeda_scaler *scaler) in komeda_scaler_obj_add() argument
99 st->base.component = &scaler->base; in komeda_scaler_obj_add()
101 &scaler->base.obj, &st->base.obj, in komeda_scaler_obj_add()
/linux-6.12.1/Documentation/userspace-api/media/v4l/
Dpipeline.dot6scaler [label="{<scaler_0> 0} | Host\nScaler | {<scaler_1> 1} ", shape=Mrecord, style=filled, fill…
12 frontend:frontend_1 -> scaler:scaler_0 [color=blue, label="HQ: 2592x1968\nHS: 1296x984"]
13 scaler:scaler_1 -> io:io_0 [color=blue, label="HQ: 1280x720\nHS: 1280x720"]
/linux-6.12.1/drivers/gpu/drm/nouveau/
Dnouveau_connector.c106 *val = asyc->scaler.mode; in nouveau_conn_atomic_get_property()
108 *val = asyc->scaler.underscan.mode; in nouveau_conn_atomic_get_property()
110 *val = asyc->scaler.underscan.hborder; in nouveau_conn_atomic_get_property()
112 *val = asyc->scaler.underscan.vborder; in nouveau_conn_atomic_get_property()
168 if (asyc->scaler.mode != val) { in nouveau_conn_atomic_set_property()
169 asyc->scaler.mode = val; in nouveau_conn_atomic_set_property()
170 asyc->set.scaler = true; in nouveau_conn_atomic_set_property()
174 if (asyc->scaler.underscan.mode != val) { in nouveau_conn_atomic_set_property()
175 asyc->scaler.underscan.mode = val; in nouveau_conn_atomic_set_property()
176 asyc->set.scaler = true; in nouveau_conn_atomic_set_property()
[all …]
Dnouveau_connector.h103 } scaler; member
113 bool scaler:1; member
/linux-6.12.1/drivers/iio/
Dindustrialio-gts-helper.c78 static int iio_gts_delinearize(u64 lin_scale, unsigned long scaler, in iio_gts_delinearize() argument
83 if (scaler > NANO) in iio_gts_delinearize()
86 if (!scaler) in iio_gts_delinearize()
89 frac = do_div(lin_scale, scaler); in iio_gts_delinearize()
92 *scale_nano = frac * (NANO / scaler); in iio_gts_delinearize()
98 unsigned long scaler, u64 *lin_scale) in iio_gts_linearize() argument
104 if (scaler > NANO || !scaler) in iio_gts_linearize()
107 *lin_scale = (u64)scale_whole * (u64)scaler + in iio_gts_linearize()
108 (u64)(scale_nano / (NANO / scaler)); in iio_gts_linearize()
/linux-6.12.1/drivers/gpu/drm/imx/dcss/
Ddcss-scaler.c319 struct dcss_scaler *scaler; in dcss_scaler_init() local
321 scaler = devm_kzalloc(dcss->dev, sizeof(*scaler), GFP_KERNEL); in dcss_scaler_init()
322 if (!scaler) in dcss_scaler_init()
325 dcss->scaler = scaler; in dcss_scaler_init()
326 scaler->dev = dcss->dev; in dcss_scaler_init()
327 scaler->ctxld = dcss->ctxld; in dcss_scaler_init()
328 scaler->ctx_id = CTX_SB_HP; in dcss_scaler_init()
330 if (dcss_scaler_ch_init_all(scaler, scaler_base)) in dcss_scaler_init()
Ddcss-plane.c175 dcss_scaler_get_min_max_ratios(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_check()
325 dcss_scaler_set_filter(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update()
328 dcss_scaler_setup(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update()
344 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
360 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
DMakefile2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
/linux-6.12.1/drivers/media/platform/renesas/rcar-vin/
Drcar-core.c1132 .scaler = rvin_scaler_gen2,
1140 .scaler = rvin_scaler_gen2,
1148 .scaler = rvin_scaler_gen2,
1181 .scaler = rvin_scaler_gen3,
1199 .scaler = rvin_scaler_gen3,
1217 .scaler = rvin_scaler_gen3,
1260 .scaler = rvin_scaler_gen3,
1274 .scaler = rvin_scaler_gen3,
1397 if (vin->info->scaler && in rcar_vin_probe()
1399 vin->scaler = vin->info->scaler; in rcar_vin_probe()
[all …]
Drcar-vin.h170 void (*scaler)(struct rvin_dev *vin); member
253 void (*scaler)(struct rvin_dev *vin); member
/linux-6.12.1/drivers/tty/serial/
Dapbuart.h14 u32 scaler; member
51 #define APBBASE_SCALAR_P(port) (&(APBBASE(port)->scaler))
/linux-6.12.1/drivers/gpu/drm/nouveau/dispnv50/
Dhead.c129 int mode = asyc->scaler.mode; in nv50_head_atomic_check_view()
132 if (!asyc->scaler.full) { in nv50_head_atomic_check_view()
157 if ((asyc->scaler.underscan.mode == UNDERSCAN_ON || in nv50_head_atomic_check_view()
158 (asyc->scaler.underscan.mode == UNDERSCAN_AUTO && in nv50_head_atomic_check_view()
160 u32 bX = asyc->scaler.underscan.hborder; in nv50_head_atomic_check_view()
161 u32 bY = asyc->scaler.underscan.vborder; in nv50_head_atomic_check_view()
364 asyc->set.scaler = true; in nv50_head_atomic_check()
382 if (asyc->set.scaler) in nv50_head_atomic_check()
/linux-6.12.1/Documentation/userspace-api/media/drivers/
Dccs.rst13 the binner and the scaler.
36 Additionally, if a device has no scaler or digital crop functionality, the
43 The scaler sub-device represents the digital crop and scaling functionality of
49 Additionally, if the scaler sub-device exists, its source pad (1) exposes
/linux-6.12.1/Documentation/gpu/
Dkomeda-kms.rst31 As its name suggests, scaler takes responsibility for scaling, and D71 also
32 supports image enhancements by scaler.
33 The usage of scaler is very flexible and can be connected to layer output
43 user can also insert a scaler between compositor and wb_layer to down scale
63 D71 scaler mostly only has the half horizontal input/output capabilities
64 compared with Layer, like if Layer supports 4K input size, the scaler only can
359 And a KMS-Plane may require multiple komeda resources: layer/scaler/compiz.
388 special configurations to the layer and scaler. We'd better hide such HW
452 setup 1: check if component is needed, like the scaler is optional depending
/linux-6.12.1/drivers/media/test-drivers/vimc/
DMakefile3 vimc-debayer.o vimc-scaler.o vimc-sensor.o vimc-lens.o
/linux-6.12.1/drivers/media/platform/microchip/
DMakefile4 microchip-isc-common-objs = microchip-isc-base.o microchip-isc-clk.o microchip-isc-scaler.o
/linux-6.12.1/drivers/staging/media/imx/
DMakefile7 imx-media-csc-scaler.o
/linux-6.12.1/drivers/media/platform/samsung/exynos4-is/
Dfimc-reg.c234 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_prescaler()
250 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_scaler()
315 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_mainscaler()
354 if (ctx->scaler.enabled) in fimc_hw_enable_capture()
796 fimc_hw_enable_scaler(ctx->fimc_dev, ctx->scaler.enabled); in fimc_activate_capture()

123