/linux-6.6.21/drivers/gpu/drm/exynos/ |
D | exynos_drm_scaler.c | 27 #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.6.21/drivers/media/platform/samsung/s3c-camif/ |
D | camif-core.c | 144 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 …]
|
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);
|
/linux-6.6.21/Documentation/devicetree/bindings/gpu/ |
D | samsung-scaler.yaml | 4 $id: http://devicetree.org/schemas/gpu/samsung-scaler.yaml# 15 - samsung,exynos5420-scaler 16 - samsung,exynos5433-scaler 33 const: samsung,exynos5420-scaler 73 scaler@12800000 { 74 compatible = "samsung,exynos5420-scaler";
|
/linux-6.6.21/drivers/staging/media/ipu3/ |
D | ipu3-css-params.c | 871 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.6.21/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 (!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 …]
|
/linux-6.6.21/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"]
|
/linux-6.6.21/drivers/gpu/drm/nouveau/ |
D | nouveau_connector.c | 106 *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 …]
|
D | nouveau_connector.h | 103 } scaler; member 113 bool scaler:1; member
|
/linux-6.6.21/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 | 175 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()
|
D | Makefile | 2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
|
/linux-6.6.21/drivers/iio/ |
D | industrialio-gts-helper.c | 91 static int iio_gts_delinearize(u64 lin_scale, unsigned long scaler, in iio_gts_delinearize() argument 96 if (scaler > NANO) in iio_gts_delinearize() 99 if (!scaler) in iio_gts_delinearize() 102 frac = do_div(lin_scale, scaler); in iio_gts_delinearize() 105 *scale_nano = frac * (NANO / scaler); in iio_gts_delinearize() 111 unsigned long scaler, u64 *lin_scale) in iio_gts_linearize() argument 117 if (scaler > NANO || !scaler) in iio_gts_linearize() 120 *lin_scale = (u64)scale_whole * (u64)scaler + in iio_gts_linearize() 121 (u64)(scale_nano / (NANO / scaler)); in iio_gts_linearize()
|
/linux-6.6.21/Documentation/devicetree/bindings/hwmon/ |
D | moortec,mr75203.yaml | 27 divide by 2 pre-scaler). 82 moortec,vm-pre-scaler-x2: 84 Defines the channels that use a mr76006 pre-scaler to divide the input 86 The pre-scaler is used for input sources that exceed the VM input range. 89 For channels that are not listed, no pre-scaler is assumed. 160 moortec,vm-pre-scaler-x2 = /bits/ 8 <5 6 20>;
|
/linux-6.6.21/drivers/gpu/drm/ci/xfails/ |
D | msm-sdm845-fails.txt | 63 kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats,Timeout 64 kms_plane_scaling@plane-scaler-with-pixel-format-unity-scaling,Timeout 66 kms_plane_scaling@scaler-with-clipping-clamping,Timeout 67 kms_plane_scaling@scaler-with-pixel-format-unity-scaling,Timeout
|
/linux-6.6.21/drivers/media/platform/renesas/rcar-vin/ |
D | rcar-core.c | 1132 .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, 1400 if (vin->info->scaler && in rcar_vin_probe() 1402 vin->scaler = vin->info->scaler; in rcar_vin_probe() [all …]
|
D | rcar-vin.h | 170 void (*scaler)(struct rvin_dev *vin); member 253 void (*scaler)(struct rvin_dev *vin); member
|
/linux-6.6.21/drivers/tty/serial/ |
D | apbuart.h | 14 u32 scaler; member 51 #define APBBASE_SCALAR_P(port) (&(APBBASE(port)->scaler))
|
/linux-6.6.21/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-6.6.21/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-6.6.21/drivers/gpu/drm/nouveau/dispnv50/ |
D | head.c | 128 int mode = asyc->scaler.mode; in nv50_head_atomic_check_view() 137 if (!asyc->scaler.full) { in nv50_head_atomic_check_view() 162 if ((asyc->scaler.underscan.mode == UNDERSCAN_ON || in nv50_head_atomic_check_view() 163 (asyc->scaler.underscan.mode == UNDERSCAN_AUTO && in nv50_head_atomic_check_view() 165 u32 bX = asyc->scaler.underscan.hborder; in nv50_head_atomic_check_view() 166 u32 bY = asyc->scaler.underscan.vborder; in nv50_head_atomic_check_view() 369 asyc->set.scaler = true; in nv50_head_atomic_check() 387 if (asyc->set.scaler) in nv50_head_atomic_check()
|
/linux-6.6.21/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-6.6.21/drivers/media/test-drivers/vimc/ |
D | Makefile | 3 vimc-debayer.o vimc-scaler.o vimc-sensor.o vimc-lens.o
|
/linux-6.6.21/drivers/media/platform/microchip/ |
D | Makefile | 4 microchip-isc-common-objs = microchip-isc-base.o microchip-isc-clk.o microchip-isc-scaler.o
|