FimdFramebuffer
S5pv210_video_samsung_memsize_fimd is the physical memory space reserved for framebuffer. the formula below is the size of the framebuffer reserved space.
4 indicates the number of pixels in the LCD screen, generally 32bit. config_fb_cloud_buffers indicates the number of framebuffer; s5pv210_ LCD _width and s5pv210_ LCD _height indicate the width and height of the screen.
#define S5PV210_VIDEO_SAMSUNG_MEMSIZE_FIMD (S5PV210_LCD_WIDTH * S5PV210_LCD_HEIGHT * 4 * CONFIG_FB_S3C_NR_BUFFERS)
G2d
#define S5PV210_VIDEO_SAMSUNG_MEMSIZE_G2D (8192 * SZ_1K)
The FIMG-2D is a 2D Graphics Accelerator that includes the following features
1. Bit block transfer (BLT)
- Memory to memory
- Memory to screen
2. pixel operations
- Window cut
- Flip and rotate
- Grating operation: rop4 (mask, pattern, source, destination)
- Alpha operation
- Color Key
The system generates a misc device node/dev/FIMG-2D for the sec-g2d, through the file operation interface of this device node (mainly IOCTL), upper-layer applications can achieve 2D hardware graphics Acceleration
The upper layer of the FIMG-2D driver is used in the ligfimg library of Samsung/properity/libfimg/directory, libfimg library mainly provides the stretchsecfimg interface, this interface implements hardware accelerated image stretching, rotate color space conversion. For more information about libfimg users, we can find that only libhdmi is connected to this dynamic library, and libhdmi is the video output implementation of hdmi TV.
Therefore, if the system does not support HDMI tvout output, this libfimg 2D library will not be used by the system, so there is no need to keep the FIMG-2D memory space, or even do not need a FIMG-2D driver.
If HDMI output is supported, use the following formula:
FIMG-2D memory size = max (LCD _width * LCD _height, tvout_width * tvout_height) * (32/8) * 2
The fimg-2d driver roughly divides the reserved memory class into two parts, Src buffer and DEST buffer, Src buffer is the content of LCD framebuffer, and DEST buffer is the content of tvout output framebuffer.