/Linux-v5.15/drivers/gpu/drm/exynos/ |
D | exynos_drm_scaler.c | 26 #define scaler_read(offset) readl(scaler->regs + (offset)) 27 #define scaler_write(cfg, offset) writel(cfg, scaler->regs + (offset)) 92 static inline int scaler_reset(struct scaler_context *scaler) in scaler_reset() argument 109 static inline void scaler_enable_int(struct scaler_context *scaler) in scaler_enable_int() argument 142 static inline void scaler_set_src_fmt(struct scaler_context *scaler, in scaler_set_src_fmt() argument 151 static inline void scaler_set_src_base(struct scaler_context *scaler, in scaler_set_src_base() argument 165 static inline void scaler_set_src_span(struct scaler_context *scaler, in scaler_set_src_span() argument 179 static inline void scaler_set_src_luma_chroma_pos(struct scaler_context *scaler, in scaler_set_src_luma_chroma_pos() argument 195 static inline void scaler_set_src_wh(struct scaler_context *scaler, in scaler_set_src_wh() argument 205 static inline void scaler_set_dst_fmt(struct scaler_context *scaler, in scaler_set_dst_fmt() argument [all …]
|
/Linux-v5.15/drivers/media/platform/s3c-camif/ |
D | camif-core.c | 145 struct camif_scaler *scaler) in s3c_camif_get_scaler_config() argument 157 ret = camif_get_scaler_factor(source_x, target_x, &scaler->pre_h_ratio, in s3c_camif_get_scaler_config() 158 &scaler->h_shift); in s3c_camif_get_scaler_config() 162 ret = camif_get_scaler_factor(source_y, target_y, &scaler->pre_v_ratio, in s3c_camif_get_scaler_config() 163 &scaler->v_shift); in s3c_camif_get_scaler_config() 167 scaler->pre_dst_width = source_x / scaler->pre_h_ratio; in s3c_camif_get_scaler_config() 168 scaler->pre_dst_height = source_y / scaler->pre_v_ratio; in s3c_camif_get_scaler_config() 170 scaler->main_h_ratio = (source_x << 8) / (target_x << scaler->h_shift); in s3c_camif_get_scaler_config() 171 scaler->main_v_ratio = (source_y << 8) / (target_y << scaler->v_shift); in s3c_camif_get_scaler_config() 173 scaler->scaleup_h = (target_x >= source_x); in s3c_camif_get_scaler_config() [all …]
|
D | camif-regs.c | 364 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 …]
|
D | camif-core.h | 225 struct camif_scaler scaler; member 344 struct camif_scaler *scaler);
|
D | camif-capture.c | 46 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() 1440 struct camif_scaler scaler; in s3c_camif_subdev_set_selection() local 1459 scaler = vp->scaler; in s3c_camif_subdev_set_selection() 1460 if (s3c_camif_get_scaler_config(vp, &scaler)) in s3c_camif_subdev_set_selection() 1462 vp->scaler = scaler; in s3c_camif_subdev_set_selection() 1636 vp->scaler.enable = 1; in s3c_camif_set_defaults()
|
/Linux-v5.15/drivers/staging/media/ipu3/ |
D | ipu3-css-params.c | 874 struct imgu_abi_osys_scaler_params *scaler = in imgu_css_osys_calc() local 875 &osys->scaler[s].param; in imgu_css_osys_calc() 880 scaler->inp_buf_y_st_addr = IMGU_VMEM1_INP_BUF_ADDR; in imgu_css_osys_calc() 888 scaler->inp_buf_y_line_stride = IMGU_VMEM1_Y_STRIDE; in imgu_css_osys_calc() 897 scaler->inp_buf_y_buffer_stride = IMGU_VMEM1_BUF_SIZE; in imgu_css_osys_calc() 898 scaler->inp_buf_u_st_addr = IMGU_VMEM1_INP_BUF_ADDR + in imgu_css_osys_calc() 900 scaler->inp_buf_v_st_addr = IMGU_VMEM1_INP_BUF_ADDR + in imgu_css_osys_calc() 902 scaler->inp_buf_uv_line_stride = IMGU_VMEM1_UV_STRIDE; in imgu_css_osys_calc() 903 scaler->inp_buf_uv_buffer_stride = IMGU_VMEM1_BUF_SIZE; in imgu_css_osys_calc() 904 scaler->inp_buf_chunk_width = stripe_params[s].chunk_width; in imgu_css_osys_calc() [all …]
|
/Linux-v5.15/drivers/gpu/drm/arm/display/komeda/ |
D | komeda_pipeline_state.c | 443 komeda_scaler_check_cfg(struct komeda_scaler *scaler, in komeda_scaler_check_cfg() argument 455 if (!in_range(&scaler->hsize, hsize_in) || in komeda_scaler_check_cfg() 456 !in_range(&scaler->hsize, hsize_out)) { in komeda_scaler_check_cfg() 461 if (!in_range(&scaler->vsize, vsize_in) || in komeda_scaler_check_cfg() 462 !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 …]
|
D | komeda_private_obj.c | 91 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-v5.15/Documentation/userspace-api/media/v4l/ |
D | pipeline.dot | 6 …scaler [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"]
|
D | dev-subdev.rst | 117 The sensor scaler is usually of less quality than the host scaler, but 266 * - Configure scaler sink format 283 * - Configure scaler sink compose selection 307 host frontend and scaler sink and source pads have the default 308 values, as well as the compose rectangle on the scaler's sink pad. 314 3. The application configures the scaler sink pad format's size to 319 scaler's sink pad, and the format to the scaler source pad. 322 rectangle of the scaler's sink pad 1280x960. The driver propagates 323 the size to the scaler's source pad format.
|
/Linux-v5.15/drivers/gpu/drm/nouveau/ |
D | nouveau_connector.c | 107 *val = asyc->scaler.mode; in nouveau_conn_atomic_get_property() 109 *val = asyc->scaler.underscan.mode; in nouveau_conn_atomic_get_property() 111 *val = asyc->scaler.underscan.hborder; in nouveau_conn_atomic_get_property() 113 *val = asyc->scaler.underscan.vborder; in nouveau_conn_atomic_get_property() 169 if (asyc->scaler.mode != val) { in nouveau_conn_atomic_set_property() 170 asyc->scaler.mode = val; in nouveau_conn_atomic_set_property() 171 asyc->set.scaler = true; in nouveau_conn_atomic_set_property() 175 if (asyc->scaler.underscan.mode != val) { in nouveau_conn_atomic_set_property() 176 asyc->scaler.underscan.mode = val; in nouveau_conn_atomic_set_property() 177 asyc->set.scaler = true; in nouveau_conn_atomic_set_property() [all …]
|
D | nouveau_connector.h | 103 } scaler; member 113 bool scaler:1; member
|
/Linux-v5.15/drivers/gpu/drm/imx/dcss/ |
D | dcss-scaler.c | 319 struct dcss_scaler *scaler; in dcss_scaler_init() local 321 scaler = kzalloc(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() 334 if (scaler->ch[i].base_reg) in dcss_scaler_init() 335 iounmap(scaler->ch[i].base_reg); in dcss_scaler_init() [all …]
|
D | dcss-plane.c | 173 dcss_scaler_get_min_max_ratios(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_check() 323 dcss_scaler_set_filter(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update() 326 dcss_scaler_setup(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update() 342 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, enable); in dcss_plane_atomic_update() 358 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
|
D | Makefile | 2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
|
/Linux-v5.15/drivers/tty/serial/ |
D | apbuart.h | 14 u32 scaler; member 51 #define APBBASE_SCALAR_P(port) (&(APBBASE(port)->scaler))
|
/Linux-v5.15/Documentation/userspace-api/media/drivers/ |
D | ccs.rst | 11 the binner and the scaler. 32 Additionally, if a device has no scaler or digital crop functionality, the 39 The scaler sub-device represents the digital crop and scaling functionality of 45 Additionally, if the scaler sub-device exists, its source pad (1) exposes
|
/Linux-v5.15/Documentation/driver-api/media/drivers/ccs/ |
D | ccs.rst | 11 the binner and the scaler. 32 Additionally, if a device has no scaler or digital crop functionality, the 39 The scaler sub-device represents the digital crop and scaling functionality of 45 Additionally, if the scaler sub-device exists, its source pad (1) exposes
|
/Linux-v5.15/drivers/gpu/drm/nouveau/dispnv50/ |
D | head.c | 129 int mode = asyc->scaler.mode; in nv50_head_atomic_check_view() 138 if (!asyc->scaler.full) { in nv50_head_atomic_check_view() 163 if ((asyc->scaler.underscan.mode == UNDERSCAN_ON || in nv50_head_atomic_check_view() 164 (asyc->scaler.underscan.mode == UNDERSCAN_AUTO && in nv50_head_atomic_check_view() 166 u32 bX = asyc->scaler.underscan.hborder; in nv50_head_atomic_check_view() 167 u32 bY = asyc->scaler.underscan.vborder; in nv50_head_atomic_check_view() 346 asyc->set.scaler = true; in nv50_head_atomic_check() 370 if (asyc->set.scaler) in nv50_head_atomic_check()
|
/Linux-v5.15/Documentation/gpu/ |
D | komeda-kms.rst | 31 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-v5.15/drivers/media/test-drivers/vimc/ |
D | Makefile | 3 vimc-debayer.o vimc-scaler.o vimc-sensor.o
|
/Linux-v5.15/Documentation/admin-guide/media/ |
D | vimc.rst | 7 API. It has a capture device and three subdevices: sensor, debayer and scaler. 63 vimc-scaler:
|
/Linux-v5.15/drivers/staging/media/imx/ |
D | Makefile | 7 imx-media-csc-scaler.o
|
/Linux-v5.15/drivers/media/platform/exynos4-is/ |
D | fimc-reg.c | 234 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()
|
/Linux-v5.15/drivers/gpu/drm/arm/display/komeda/d71/ |
D | d71_component.c | 839 struct komeda_scaler *scaler; in d71_scaler_init() local 844 c = komeda_component_add(&d71->pipes[pipe_id]->base, sizeof(*scaler), in d71_scaler_init() 856 scaler = to_scaler(c); in d71_scaler_init() 857 set_range(&scaler->hsize, 4, __get_blk_line_size(d71, reg, 2048)); in d71_scaler_init() 858 set_range(&scaler->vsize, 4, 4096); in d71_scaler_init() 859 scaler->max_downscaling = 6; in d71_scaler_init() 860 scaler->max_upscaling = 64; in d71_scaler_init() 861 scaler->scaling_split_overlap = 8; in d71_scaler_init() 862 scaler->enh_split_overlap = 1; in d71_scaler_init()
|