锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

RK3288 android7.1显示屏幕修改

时间:2023-01-14 23:30:00 3ad50c晶体管怎样

0.dts中配置1920x1080的分辨率
1.build.prop添加以下属性:
persist.sys.framebuffer.main=1920x600@60
2.hardware/rockchip/hwcomposer以下修下修改:

diff --git a/hwcomposer.cpp b/hwcomposer.cpp
index 0fd2177…3ad13a9 100755
— a/hwcomposer.cpp
b/hwcomposer.cpp
@@ -3498,8 3498,10 @@ static int hwc_get_display_configs(struct hwc_composer_device_1 *dev,

char framebuffer_size[PROPERTY_VALUE_MAX];
uint32_t width = 0, height = 0 , vrefresh = 0 ;

  • if (display == HWC_DISPLAY_PRIMARY)
    property_get(“persist.sys.framebuffer.main”, framebuffer_size, “use_baseparameter”);
  • else if(display == HWC_DISPLAY_EXTERNAL)
  • property_get(“persist.sys.framebuffer.aux”, framebuffer_size, “use_baseparameter”);
    /*
    • if unset framebuffer_size, get it from baseparameter , by libin
      */

@@ -2298,7 2301,8 @@ static int hwc_prepare(hwc_composer_device_1_t *dev, size_t num_displays,
hd->rel_yres = mode.v_display();
hd->v_total = mode.v_total();
hd->w_scale = (float)mode.h_display() / hd->framebuffer_width;

  • hd->h_scale = (float)mode.v_display() / hd->framebuffer_height;
  • //hd->h_scale = (float)mode.v_display() / hd->framebuffer_height;
  • hd->h_scale = 1.0;
    int fbSize = hd->framebuffer_width * hd->framebuffer_height;
    //get plane size for display
    std::vector& plane_groups = ctx->drm.GetPlaneGroups();
    @@ -3638,7 3647,8 @@ static int hwc_set_active_config(struct hwc_composer_device_1 *dev, int display,
    return -ENOENT;
    }
    hd->w_scale = (float)mode.h_display() / hd->framebuffer_width;
  • hd->h_scale = (float)mode.v_display() / hd->framebuffer_height;
  • //hd->h_scale = (float)mode.v_display() / hd->framebuffer_height;

  • hd->h_scale = 1.0;

    c->set_current_mode(mode);
    ctx->drm.UpdateDisplayRoute();

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章