| /linux/drivers/gpu/drm/exynos/ |
| H A 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/drivers/media/platform/samsung/s3c-camif/ |
| H A 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 …]
|
| H A D | camif-core.h | 225 struct camif_scaler scaler; member 344 struct camif_scaler *scaler);
|
| /linux/drivers/gpu/drm/nouveau/ |
| H A 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 …]
|
| H A D | nouveau_connector.h | 103 } scaler; member 113 bool scaler:1; member
|
| /linux/Documentation/userspace-api/media/v4l/ |
| H A 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/drivers/iio/ |
| H A D | industrialio-gts-helper.c | 78 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/drivers/media/platform/renesas/rcar-vin/ |
| H A D | rcar-core.c | 902 .scaler = rvin_scaler_gen2, 909 .scaler = rvin_scaler_gen2, 916 .scaler = rvin_scaler_gen2, 947 .scaler = rvin_scaler_gen3, 964 .scaler = rvin_scaler_gen3, 981 .scaler = rvin_scaler_gen3, 1021 .scaler = rvin_scaler_gen3, 1034 .scaler = rvin_scaler_gen3, 1224 if (vin->info->scaler && in rcar_vin_probe() 1226 vin->scaler = vin->info->scaler; in rcar_vin_probe() [all …]
|
| /linux/drivers/tty/serial/ |
| H A D | apbuart.h | 14 u32 scaler; member 51 #define APBBASE_SCALAR_P(port) (&(APBBASE(port)->scaler))
|
| /linux/Documentation/userspace-api/media/drivers/ |
| H A D | ccs.rst | 13 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/drivers/gpu/drm/nouveau/dispnv50/ |
| H A D | head.c | 134 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/drivers/gpu/drm/imx/dcss/ |
| H A D | dcss-plane.c | 176 dcss_scaler_get_min_max_ratios(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_check() 326 dcss_scaler_set_filter(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update() 329 dcss_scaler_setup(dcss->scaler, dcss_plane->ch_num, in dcss_plane_atomic_update() 345 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, enable); in dcss_plane_atomic_update() 361 dcss_scaler_ch_enable(dcss->scaler, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
|
| H A D | Makefile | 2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
|
| /linux/Documentation/gpu/ |
| H A 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/drivers/gpu/drm/arm/display/komeda/ |
| H A 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/drivers/media/test-drivers/vimc/ |
| H A D | Makefile | 3 vimc-debayer.o vimc-scaler.o vimc-sensor.o vimc-lens.o
|
| /linux/drivers/media/platform/microchip/ |
| H A D | Makefile | 4 microchip-isc-common-objs = microchip-isc-base.o microchip-isc-clk.o microchip-isc-scaler.o
|
| /linux/drivers/media/platform/samsung/exynos4-is/ |
| H A 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/drivers/gpu/drm/arm/display/komeda/d71/ |
| H A D | d71_component.c | 841 struct komeda_scaler *scaler; in d71_scaler_init() local 846 c = komeda_component_add(&d71->pipes[pipe_id]->base, sizeof(*scaler), in d71_scaler_init() 858 scaler = to_scaler(c); in d71_scaler_init() 859 set_range(&scaler->hsize, 4, __get_blk_line_size(d71, reg, 2048)); in d71_scaler_init() 860 set_range(&scaler->vsize, 4, 4096); in d71_scaler_init() 861 scaler->max_downscaling = 6; in d71_scaler_init() 862 scaler->max_upscaling = 64; in d71_scaler_init() 863 scaler->scaling_split_overlap = 8; in d71_scaler_init() 864 scaler->enh_split_overlap = 1; in d71_scaler_init()
|
| /linux/drivers/staging/media/imx/ |
| H A D | Makefile | 7 imx-media-csc-scaler.o
|
| /linux/arch/arm/boot/dts/samsung/ |
| H A D | exynos5420.dtsi | 92 bus_gscl_scaler: bus-gscl-scaler { 805 gsc_0: video-scaler@13e00000 { 815 gsc_1: video-scaler@13e10000 { 875 scaler_0: scaler@12800000 { 876 compatible = "samsung,exynos5420-scaler"; 885 scaler_1: scaler@12810000 { 886 compatible = "samsung,exynos5420-scaler"; 895 scaler_2: scaler@12820000 { 896 compatible = "samsung,exynos5420-scaler";
|
| /linux/Documentation/admin-guide/media/ |
| H A D | vimc.rst | 7 API. It has a capture device and three subdevices: sensor, debayer and scaler. 82 vimc-scaler:
|
| /linux/drivers/clk/bcm/ |
| H A D | clk-bcm2835.c | 1006 unsigned long scaler; in bcm2835_round_rate() local 1011 scaler = 1; in bcm2835_round_rate() 1012 while (scaler < limit) in bcm2835_round_rate() 1013 scaler *= 10; in bcm2835_round_rate() 1019 if ((rate + scaler - 1) / scaler % 1000 == 0) in bcm2835_round_rate() 1020 rate = roundup(rate, scaler); in bcm2835_round_rate()
|
| /linux/drivers/media/platform/samsung/exynos-gsc/ |
| H A D | gsc-regs.c | 345 struct gsc_scaler *sc = &ctx->scaler; in gsc_hw_set_prescaler() 357 struct gsc_scaler *sc = &ctx->scaler; in gsc_hw_set_mainscaler()
|
| /linux/drivers/media/platform/ti/vpe/ |
| H A D | vip.c | 663 if (port->scaler && !port->fmt->coplanar) in add_out_dtd() 1770 if (port->scaler && port->fmt->coplanar) { in vip_unset_csc_r2y() 1776 } else if (port->scaler) { in vip_unset_csc_r2y() 1803 if (port->scaler && port->fmt->coplanar) { in vip_unset_yuv() 1816 } else if (port->scaler) { in vip_unset_yuv() 1910 if (port->scaler && port->fmt->coplanar) { in vip_config_csc_r2y() 1916 } else if (port->scaler) { in vip_config_csc_r2y() 1956 if (port->scaler && port->fmt->coplanar) { in vip_config_yuv() 1970 } else if (port->scaler) { in vip_config_yuv() 2252 if (port->scaler) { in vip_setup_scaler() [all …]
|