| /linux/drivers/gpu/drm/exynos/ |
| H A D | exynos_drm_scaler.c | 25 #include "regs-scaler.h" 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 [all …]
|
| H A D | regs-gsc.h | 7 * Register definition file for Samsung G-Scaler driver 13 /* G-Scaler enable */ 33 /* G-Scaler S/W reset */ 37 /* G-Scaler IRQ */ 45 /* G-Scaler input control */ 91 /* G-Scaler source image size */ 98 /* G-Scaler source image offset */ 105 /* G-Scaler cropped source image size */ 112 /* G-Scaler output control */ 148 /* G-Scaler scaled destination image size */ [all …]
|
| /linux/drivers/media/platform/samsung/exynos-gsc/ |
| H A D | gsc-regs.h | 6 * Register definition file for Samsung G-Scaler driver 12 /* G-Scaler enable */ 18 /* G-Scaler S/W reset */ 22 /* G-Scaler IRQ */ 29 /* G-Scaler input control */ 65 /* G-Scaler source image size */ 70 /* G-Scaler source image offset */ 75 /* G-Scaler cropped source image size */ 80 /* G-Scaler output control */ 110 /* G-Scaler scaled destination image size */ [all …]
|
| H A D | Kconfig | 3 tristate "Samsung Exynos G-Scaler driver" 10 This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
|
| /linux/Documentation/gpu/ |
| H A D | komeda-kms.rst | 29 Scaler section in Overview of D71 like display IPs 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 114 "Scaler-0"; 115 "Scaler-1"; 116 "Scaler-0/1" [all …]
|
| /linux/Documentation/devicetree/bindings/gpu/ |
| H A D | samsung-scaler.yaml | 4 $id: http://devicetree.org/schemas/gpu/samsung-scaler.yaml# 7 title: Samsung Exynos SoC Image Scaler 15 - samsung,exynos5420-scaler 16 - samsung,exynos5433-scaler 51 const: samsung,exynos5420-scaler 86 scaler@12800000 { 87 compatible = "samsung,exynos5420-scaler";
|
| /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-regs.h | 110 /* CICOSCPRERATIO, CIPRSCPRERATIO. Pre-scaler control 1. */ 113 /* CICOSCPREDST, CIPRSCPREDST. Pre-scaler control 2. */ 116 /* CICOSCCTRL, CIPRSCCTRL. Main scaler control. */ 182 /* Image effect: 1 - after scaler, 0 - before scaler */
|
| H A D | camif-core.h | 198 * @scaler: the scaler structure 225 struct camif_scaler scaler; member 344 struct camif_scaler *scaler);
|
| /linux/drivers/media/platform/ti/vpe/ |
| H A D | sc.c | 3 * Scaler library 58 * set the horizontal scaler coefficients according to the ratio of output to 94 * for each phase, the scaler expects space for 8 coefficients in sc_set_hs_coeffs() 95 * in it's memory. For the horizontal scaler, we copy the first in sc_set_hs_coeffs() 107 * set the vertical scaler coefficients according to the ratio of output to 136 * for the vertical scaler, we copy the first 5 coefficients and in sc_set_vs_coeffs() 187 /* configure horizontal scaler */ in sc_config_scaler() 210 /* configure vertical scaler */ in sc_config_scaler() 212 /* use RAV for vertical scaler if vertical downscaling is > 4x */ in sc_config_scaler() 304 MODULE_DESCRIPTION("TI VIP/VPE Scaler");
|
| H A D | sc.h | 12 /* Scaler regs */ 164 /* number of taps used by horizontal polyphase scaler */ 167 /* number of taps used by vertical polyphase scaler */ 170 /* number of taps expected by the scaler in it's coefficient memory */ 173 /* Maximum frame width the scaler can handle (in pixels) */ 176 /* Maximum frame height the scaler can handle (in lines) */
|
| /linux/Documentation/devicetree/bindings/hwmon/ |
| H A D | moortec,mr75203.yaml | 25 *) Pre Scaler - provides divide-by-X scaling of input voltage, which can then 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/drivers/media/test-drivers/vimc/ |
| H A D | vimc-core.c | 58 SCALER, enumerator 114 [SCALER] = { 115 .name = "Scaler", 145 /* Link: Debayer A (Pad 1)->(Pad 0) Scaler */ 146 VIMC_DATA_LINK(DEBAYER_A, 1, SCALER, 0, MEDIA_LNK_FL_ENABLED), 147 /* Link: Debayer B (Pad 1)->(Pad 0) Scaler */ 148 VIMC_DATA_LINK(DEBAYER_B, 1, SCALER, 0, 0), 149 /* Link: RGB/YUV Input (Pad 0)->(Pad 0) Scaler */ 150 VIMC_DATA_LINK(RGB_YUV_INPUT, 0, SCALER, 0, 0), 151 /* Link: Scaler (Pad 1)->(Pad 0) RGB/YUV Capture */ [all …]
|
| /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 40 Scaler chapter 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/Documentation/admin-guide/media/ |
| H A D | vimc.rst | 7 API. It has a capture device and three subdevices: sensor, debayer and scaler. 38 media-ctl -d platform:vimc -V '"Scaler":0[fmt:RGB888_1X24/640x480]' 39 media-ctl -d platform:vimc -V '"Scaler":0[crop:(100,50)/400x150]' 40 media-ctl -d platform:vimc -V '"Scaler":1[fmt:RGB888_1X24/300x700]' 82 vimc-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 …]
|
| /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/media/platform/microchip/ |
| H A D | microchip-isc-scaler.c | 3 * Microchip Image Sensor Controller (ISC) Scaler entity support 114 * All formats supported by the ISC are supported by the scaler. in isc_scaler_enum_mbus_code() 115 * Advertise the formats which the ISC can take as input, as the scaler in isc_scaler_enum_mbus_code() 218 dev_err(isc->dev, "scaler sd media entity init failed\n"); in isc_scaler_init() 224 dev_err(isc->dev, "scaler sd failed to register subdev\n"); in isc_scaler_init()
|
| /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/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()
|
| /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/i915/display/ |
| H A D | dvo_ns2501.c | 106 * Scaler control registers. Horizontal at b8,b9, 110 #define NS2501_REG10 0x10 /* low-byte vertical scaler */ 111 #define NS2501_REG11 0x11 /* high-byte vertical scaler */ 112 #define NS2501_REGB8 0xb8 /* low-byte horizontal scaler */ 113 #define NS2501_REGB9 0xb9 /* high-byte horizontal scaler */ 120 * the scaler samples the input. 143 * of lines created at the output side of the scaler. 178 * scaler to be ON. Bit 0 enables dithering, the remaining 538 * by disabling the scaler. in ns2501_mode_valid()
|
| /linux/drivers/clk/ |
| H A D | clk-xgene.c | 208 * @reg: register containing the fractional scale multiplier (scaler) 213 * @flags: XGENE_CLK_PMD_SCALE_INVERTED - By default the scaler is the value read 265 /* freq = parent_rate * scaler / denom */ in xgene_clk_pmd_recalc_rate() 286 /* freq = parent_rate * scaler / denom */ in xgene_clk_pmd_determine_rate() 307 * Compute the scaler: in xgene_clk_pmd_set_rate() 309 * freq = parent_rate * scaler / denom, or in xgene_clk_pmd_set_rate() 310 * scaler = freq * denom / parent_rate in xgene_clk_pmd_set_rate()
|
| /linux/drivers/tty/serial/ |
| H A D | apbuart.h | 14 u32 scaler; member 51 #define APBBASE_SCALAR_P(port) (&(APBBASE(port)->scaler))
|
| /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()
|