/linux/drivers/gpu/drm/ |
H A D | drm_rect.c | 241 * @rotation: Transformation to be applied 243 * Apply @rotation to the coordinates of rectangle @r. 245 * @width and @height combined with @rotation define 254 unsigned int rotation) in drm_rect_rotate() argument 258 if (rotation & (DRM_MODE_REFLECT_X | DRM_MODE_REFLECT_Y)) { in drm_rect_rotate() 261 if (rotation & DRM_MODE_REFLECT_X) { in drm_rect_rotate() 266 if (rotation & DRM_MODE_REFLECT_Y) { in drm_rect_rotate() 272 switch (rotation & DRM_MODE_ROTATE_MASK) { in drm_rect_rotate() 307 * @rotation: Transformation whose inverse is to be applied 309 * Apply the inverse of @rotation to the coordinates [all …]
|
H A D | drm_mipi_dbi.c | 556 unsigned int rotation) in mipi_dbi_rotate_mode() argument 558 if (rotation == 0 || rotation == 180) { in mipi_dbi_rotate_mode() 560 } else if (rotation == 90 || rotation == 270) { in mipi_dbi_rotate_mode() 590 * @rotation: Initial rotation in degrees Counter Clock Wise 594 * has one fixed &drm_display_mode which is rotated according to @rotation. 610 unsigned int rotation, size_t tx_buf_size) in mipi_dbi_dev_init_with_formats() argument 631 ret = mipi_dbi_rotate_mode(&dbidev->mode, rotation); in mipi_dbi_dev_init_with_formats() 633 DRM_ERROR("Illegal rotation value %u\n", rotation); in mipi_dbi_dev_init_with_formats() 655 dbidev->rotation = rotation; in mipi_dbi_dev_init_with_formats() 660 DRM_DEBUG_KMS("rotation = %u\n", rotation); in mipi_dbi_dev_init_with_formats() [all …]
|
/linux/include/video/ |
H A D | imx-ipu-image-convert.h | 5 * i.MX Queued image conversion support, with tiling and rotation. 48 * @rot_mode: rotation mode 57 * and rotation mode meet IPU restrictions. 61 * @rot_mode: rotation mode 63 * Returns 0 if the formats and rotation mode meet IPU restrictions, 76 * @rot_mode: rotation mode 81 * on failure. The input/output formats and rotation mode must already meet 146 * @rot_mode: rotation mode 152 * As with ipu_image_convert_prepare(), the input/output formats and rotation
|
/linux/drivers/iio/imu/inv_mpu6050/ |
H A D | inv_mpu_magn.c | 275 st->magn_orient.rotation[0] = st->orientation.rotation[3]; in inv_mpu_magn_set_orient() 276 st->magn_orient.rotation[1] = st->orientation.rotation[4]; in inv_mpu_magn_set_orient() 277 st->magn_orient.rotation[2] = st->orientation.rotation[5]; in inv_mpu_magn_set_orient() 279 st->magn_orient.rotation[3] = st->orientation.rotation[0]; in inv_mpu_magn_set_orient() 280 st->magn_orient.rotation[4] = st->orientation.rotation[1]; in inv_mpu_magn_set_orient() 281 st->magn_orient.rotation[5] = st->orientation.rotation[2]; in inv_mpu_magn_set_orient() 284 orient = st->orientation.rotation[i]; in inv_mpu_magn_set_orient() 303 st->magn_orient.rotation[i] = str; in inv_mpu_magn_set_orient()
|
/linux/drivers/gpu/drm/tests/ |
H A D | drm_plane_helper_test.c | 41 unsigned int rotation; member 67 mock->rotation = params->rotation; in drm_plane_helper_init() 144 .rotation = DRM_MODE_ROTATE_0, 158 .rotation = DRM_MODE_ROTATE_90 | DRM_MODE_REFLECT_X, 170 .rotation = DRM_MODE_ROTATE_0, 182 .rotation = DRM_MODE_ROTATE_0, 194 .rotation = DRM_MODE_ROTATE_0, 206 .rotation = DRM_MODE_ROTATE_0, 218 .rotation = DRM_MODE_ROTATE_0, 230 .rotation = DRM_MODE_ROTATE_0, [all …]
|
/linux/Documentation/arch/arm/omap/ |
H A D | dss.rst | 167 rotate Rotation 0-3 for 0, 90, 180, 270 degrees 168 rotate_type 0 = DMA rotation, 1 = VRFB rotation 201 rotate Rotation 0-3 for 0, 90, 180, 270 degrees 304 Rotation and mirroring currently only supports RGB565 and RGB8888 modes. VRFB 307 VRFB rotation requires much more memory than non-rotated framebuffer, so you 308 probably need to increase your vram setting before using VRFB rotation. Also, 336 - Use VRFB rotation for all framebuffers. 339 - Default rotation applied to all framebuffers. 340 0 - 0 degree rotation 341 1 - 90 degree rotation [all …]
|
/linux/drivers/video/fbdev/aty/ |
H A D | mach64_accel.c | 30 u32 rotation; in rotation24bpp() local 32 rotation = (dx / 4) % 6; in rotation24bpp() 34 rotation = ((dx + 2) / 4) % 6; in rotation24bpp() 37 return ((rotation << 8) | DST_24_ROTATION_ENABLE); in rotation24bpp() 203 u32 sx = area->sx, dx = area->dx, width = area->width, rotation = 0; in atyfb_copyarea() local 235 rotation = rotation24bpp(dx, direction); in atyfb_copyarea() 243 aty_st_le32(DST_CNTL, direction | rotation, par); in atyfb_copyarea() 250 u32 color, dx = rect->dx, width = rect->width, rotation = 0; in atyfb_fillrect() local 272 rotation = rotation24bpp(dx, DST_X_LEFT_TO_RIGHT); in atyfb_fillrect() 283 DST_X_LEFT_TO_RIGHT | rotation, par); in atyfb_fillrect() [all …]
|
/linux/drivers/gpu/drm/exynos/ |
H A D | exynos_drm_fimc.c | 33 * FIMC supports image rotation and image effect functions. 416 static void fimc_src_set_transf(struct fimc_context *ctx, unsigned int rotation) in fimc_src_set_transf() argument 418 unsigned int degree = rotation & DRM_MODE_ROTATE_MASK; in fimc_src_set_transf() 421 DRM_DEV_DEBUG_KMS(ctx->dev, "rotation[%x]\n", rotation); in fimc_src_set_transf() 432 if (rotation & DRM_MODE_REFLECT_X) in fimc_src_set_transf() 434 if (rotation & DRM_MODE_REFLECT_Y) in fimc_src_set_transf() 439 if (rotation & DRM_MODE_REFLECT_X) in fimc_src_set_transf() 441 if (rotation & DRM_MODE_REFLECT_Y) in fimc_src_set_transf() 447 if (rotation & DRM_MODE_REFLECT_X) in fimc_src_set_transf() 449 if (rotation & DRM_MODE_REFLECT_Y) in fimc_src_set_transf() [all …]
|
H A D | exynos_drm_scaler.c | 264 unsigned int rotation, in scaler_set_hv_ratio() argument 270 if (drm_rotation_90_or_270(rotation)) { in scaler_set_hv_ratio() 286 unsigned int rotation) in scaler_set_rotation() argument 290 if (rotation & DRM_MODE_ROTATE_90) in scaler_set_rotation() 292 else if (rotation & DRM_MODE_ROTATE_180) in scaler_set_rotation() 294 else if (rotation & DRM_MODE_ROTATE_270) in scaler_set_rotation() 296 if (rotation & DRM_MODE_REFLECT_X) in scaler_set_rotation() 298 if (rotation & DRM_MODE_REFLECT_Y) in scaler_set_rotation() 393 scaler_set_hv_ratio(scaler, task->transform.rotation, src_pos, dst_pos); in scaler_commit() 394 scaler_set_rotation(scaler, task->transform.rotation); in scaler_commit()
|
/linux/include/drm/ |
H A D | drm_blend.h | 38 static inline bool drm_rotation_90_or_270(unsigned int rotation) in drm_rotation_90_or_270() argument 40 return rotation & (DRM_MODE_ROTATE_90 | DRM_MODE_ROTATE_270); in drm_rotation_90_or_270() 47 unsigned int rotation, 49 unsigned int drm_rotation_simplify(unsigned int rotation,
|
H A D | drm_mipi_dbi.h | 115 * @rotation: initial rotation in degrees Counter Clock Wise 117 unsigned int rotation; member 171 unsigned int rotation, size_t tx_buf_size); 174 const struct drm_display_mode *mode, unsigned int rotation);
|
/linux/drivers/gpu/drm/vkms/ |
H A D | vkms_composer.c | 136 * direction_for_rotation() - Get the correct reading direction for a given rotation 138 * @rotation: Rotation to analyze. It correspond the field @frame_info.rotation. 140 * This function will use the @rotation setting of a source plane to compute the reading 145 static enum pixel_read_direction direction_for_rotation(unsigned int rotation) in direction_for_rotation() argument 160 drm_rect_rotate_inv(&tmp_a, 1, 1, rotation); in direction_for_rotation() 161 drm_rect_rotate_inv(&tmp_b, 1, 1, rotation); in direction_for_rotation() 175 WARN_ONCE(true, "The inverse of the rotation gives an incorrect direction."); in direction_for_rotation() 300 * - Invert the rotation. This assumes that in blend_line() 301 * dst = drm_rect_rotate(src, rotation) (dst and src have the in blend_line() 309 current_plane->frame_info->rotation); in blend_line() [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/dce/ |
H A D | dce_mem_input.c | 122 static bool is_vert_scan(enum dc_rotation_angle rotation) in is_vert_scan() argument 124 switch (rotation) { in is_vert_scan() 137 enum dc_rotation_angle rotation) in dce_mi_program_pte_vm() argument 146 unsigned int min_pte_before_flip = is_vert_scan(rotation) ? in dce_mi_program_pte_vm() 486 enum dc_rotation_angle rotation, in program_size_and_rotation() argument 498 if (rotation == ROTATION_ANGLE_90 || rotation == ROTATION_ANGLE_270) { in program_size_and_rotation() 522 GRPH_ROTATION_ANGLE, rotation_angles[rotation]); in program_size_and_rotation() 528 enum dc_rotation_angle rotation, /* not used in DCE6 */ in dce60_program_size() argument 532 /* DCE6 has no HW rotation, skip rotation_angles declaration */ in dce60_program_size() 534 /* DCE6 has no HW rotation, skip ROTATION_ANGLE_* processing */ in dce60_program_size() [all …]
|
/linux/Documentation/devicetree/bindings/media/ |
H A D | video-interface-devices.yaml | 25 rotation: 29 The camera rotation is expressed as the angular difference in degrees 114 The camera rotation property is then defined as the angular difference in 121 0 degrees camera rotation: 157 90 degrees camera rotation: 181 180 degrees camera rotation: 199 270 degrees camera rotation: 248 The two reference systems are aligned, the resulting camera rotation is 249 0 degrees, no rotation correction needs to be applied to the resulting 299 A software rotation correction of 180 degrees should be applied to
|
/linux/drivers/iio/orientation/ |
H A D | Kconfig | 24 tristate "HID Device Rotation" 27 device rotation. The output of a device rotation sensor
|
/linux/drivers/media/platform/ti/omap/ |
H A D | omap_vout_vrfb.c | 206 /* If rotation is enabled, allocate memory for VRFB space also */ in omap_vout_vrfb_buffer_setup() 240 enum dss_rotation rotation; in omap_vout_prepare_vrfb() local 247 /* If rotation is enabled, copy input buffer into VRFB in omap_vout_prepare_vrfb() 307 rotation = calc_rotation(vout); in omap_vout_prepare_vrfb() 309 vout->vrfb_context[vb->index].paddr[rotation]; in omap_vout_prepare_vrfb() 316 * the VRFB 32 pixels alignment with rotation. 320 enum dss_rotation rotation; in omap_vout_calculate_vrfb_offset() local 328 rotation = calc_rotation(vout); in omap_vout_calculate_vrfb_offset() 360 switch (rotation) { in omap_vout_calculate_vrfb_offset()
|
/linux/Documentation/devicetree/bindings/display/ |
H A D | ilitek,ili9225.txt | 15 - rotation: panel rotation in degrees counter clockwise (0,90,180,270) 24 rotation = <270>;
|
H A D | himax,hx8357d.txt | 15 - rotation: panel rotation in degrees counter clockwise (0,90,180,270) 24 rotation = <90>;
|
H A D | multi-inno,mi0283qt.txt | 17 - rotation: panel rotation in degrees counter clockwise (0,90,180,270) 24 rotation = <90>;
|
/linux/drivers/gpu/drm/tiny/ |
H A D | ili9163.c | 82 switch (dbidev->rotation) { in yx240qv29_enable() 144 u32 rotation = 0; in ili9163_probe() local 173 device_property_read_u32(dev, "rotation", &rotation); in ili9163_probe() 179 ret = mipi_dbi_dev_init(dbidev, &ili9163_pipe_funcs, &yx240qv29_mode, rotation); in ili9163_probe()
|
H A D | mi0283qt.c | 119 * As a result, we need to always apply the rotation value in mi0283qt_enable() 122 switch (dbidev->rotation) { in mi0283qt_enable() 185 u32 rotation = 0; in mi0283qt_probe() local 212 device_property_read_u32(dev, "rotation", &rotation); in mi0283qt_probe() 218 ret = mipi_dbi_dev_init(dbidev, &mi0283qt_pipe_funcs, &mi0283qt_mode, rotation); in mi0283qt_probe()
|
/linux/drivers/gpu/drm/imx/dcss/ |
H A D | dcss-plane.c | 106 unsigned int rotation) in dcss_plane_can_rotate() argument 125 return !!(rotation & supported_rotation); in dcss_plane_can_rotate() 190 new_plane_state->rotation)) { in dcss_plane_atomic_check() 191 DRM_DEBUG_KMS("requested rotation is not allowed!\n"); in dcss_plane_atomic_check() 264 state->rotation != old_state->rotation || in dcss_plane_needs_setup() 318 new_state->rotation); in dcss_plane_atomic_update() 322 is_rotation_90_or_270 = new_state->rotation & (DRM_MODE_ROTATE_90 | in dcss_plane_atomic_update()
|
/linux/drivers/gpu/drm/arm/ |
H A D | malidp_planes.c | 281 if (state->rotation & MALIDP_ROTATED_MASK) { in malidp_se_check_scaling() 362 * current format, AFBC state and rotation. 365 unsigned int rotation) in malidp_partial_prefetch_supported() argument 369 /* rotation and horizontal flip not supported for partial prefetch */ in malidp_partial_prefetch_supported() 370 if (rotation & (DRM_MODE_ROTATE_90 | DRM_MODE_ROTATE_180 | in malidp_partial_prefetch_supported() 447 ms->base.rotation)) { in malidp_mmu_prefetch_select_mode() 499 bool rotated = new_plane_state->rotation & MALIDP_ROTATED_MASK; in malidp_de_plane_check() 559 /* validate the rotation constraints for each layer */ in malidp_de_plane_check() 560 if (new_plane_state->rotation != DRM_MODE_ROTATE_0) { in malidp_de_plane_check() 581 if (new_plane_state->rotation & MALIDP_ROTATED_MASK) { in malidp_de_plane_check() [all …]
|
/linux/drivers/video/fbdev/omap2/omapfb/ |
H A D | omapfb-sysfs.c | 272 ofbi->rotation[t-1] = ofbi->rotation[t]; in store_overlays() 296 ofbi->rotation[ofbi->num_overlays] = 0; in store_overlays() 333 t == 0 ? "" : ",", ofbi->rotation[t]); in show_overlays_rotate() 351 u8 rotation[OMAPFB_MAX_OVL_PER_FB]; in store_overlays_rotate() local 376 if (ofbi->rotation[num_ovls] != rot) in store_overlays_rotate() 379 rotation[num_ovls++] = rot; in store_overlays_rotate() 392 ofbi->rotation[i] = rotation[i]; in store_overlays_rotate()
|
/linux/drivers/gpu/drm/omapdrm/ |
H A D | omap_fb.c | 155 if (drm_rotation_90_or_270(state->rotation)) in omap_framebuffer_update_scanout() 165 orient = drm_rotation_to_tiler(state->rotation); in omap_framebuffer_update_scanout() 189 info->rotation = state->rotation ?: DRM_MODE_ROTATE_0; in omap_framebuffer_update_scanout() 193 switch (state->rotation & DRM_MODE_ROTATE_MASK) { in omap_framebuffer_update_scanout() 201 "rotation '%d' ignored for non-tiled fb\n", in omap_framebuffer_update_scanout() 202 state->rotation); in omap_framebuffer_update_scanout() 208 info->rotation = DRM_MODE_ROTATE_0; in omap_framebuffer_update_scanout()
|