408a68c5f6
Drivers using legacy power management .suspen()/.resume() callbacks have to manage PCI states and device's PM states themselves. They also need to take care of standard configuration registers. Switch to generic power management framework using a single "struct dev_pm_ops" variable to take the unnecessary load from the driver. This also avoids the need for the driver to directly call most of the PCI helper functions and device power state control functions, as through the generic framework PCI Core takes care of the necessary operations, and drivers are required to do only device-specific jobs. Signed-off-by: Vaibhav Gupta <vaibhavgupta40@gmail.com> Link: https://lore.kernel.org/r/20200728123349.1331679-1-vaibhavgupta40@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.