mirror of
https://github.com/torvalds/linux.git
synced 2024-12-02 09:01:34 +00:00
aaec586a3c
If ioremap_wc() fails, the code jumps to the "exit" label and forgets to free the bus memory mapped into "sm750_dev->pvReg". Mapped bus memory must always be freed by calling iounmap(). Call iounmap(sm750_dev->pvReg) when the above-mentioned failures happen. The site of the missing iounmap() has been detected by Smatch. Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com> Link: https://lore.kernel.org/r/20220402175655.31512-1-fmdefrancesco@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
---|---|---|
.. | ||
ddk750_chip.c | ||
ddk750_chip.h | ||
ddk750_display.c | ||
ddk750_display.h | ||
ddk750_dvi.c | ||
ddk750_dvi.h | ||
ddk750_hwi2c.c | ||
ddk750_hwi2c.h | ||
ddk750_mode.c | ||
ddk750_mode.h | ||
ddk750_power.c | ||
ddk750_power.h | ||
ddk750_reg.h | ||
ddk750_sii164.c | ||
ddk750_sii164.h | ||
ddk750_swi2c.c | ||
ddk750_swi2c.h | ||
ddk750.h | ||
Kconfig | ||
Makefile | ||
readme | ||
sm750_accel.c | ||
sm750_accel.h | ||
sm750_cursor.c | ||
sm750_cursor.h | ||
sm750_hw.c | ||
sm750.c | ||
sm750.h | ||
TODO |
Introduction: SM750 of Silicon MOtion is pci express display controller device. The SM750 embedded graphics features include: - dual display - 2D acceleration - 16MB integrated video memory About the kernel module parameter of driver: Use 1280,8bpp index color and 60 hz mode: insmod ./sm750fb.ko g_option="1280x1024-8@60" Disable MTRR,Disable 2d acceleration,Disable hardware cursor, and use a 800x600 mode : insmod ./sm750fb.ko g_option="noaccel:nomtrr:nohwc:800x600" dual frame buffer for driver with "dual" parameter insmod ./sm750fb.ko g_option="dual,800x600:1024x768" it will create fb0 and fb1 (or fb1,fb2 if fb0 already exist) under /dev and user can use con2fb to link fbX and ttyX Notes: 1) if you build the driver with built-in method, the parameter you edited in the grub config file will be also the same format as above modular method,but additionally add "video=sm750fb:" ahead of parameters,so,it looks like: video=sm750fb:noaccel,1280x1024@60,otherparam,etc... it equal to modular method with below command: insmod ./sm750fb.ko g_option="noaccel:1280x1024@60:otherparm:etc..." 2) if you put 800x600 into the parameter without bpp and refresh rate, kernel driver will defaulty use 16bpp and 60hz Important: if you have vesafb enabled in your config then /dev/fb0 will be created by vesafb and this driver will use fb1, fb2. In that case, you need to configure your X-server to use fb1. Another simple althernative is to disable vesafb from your config.