mirror of https://gitee.com/openkylin/linux.git
staging: sm7xxfb: use module init and exit
use module_init() and module_exit() instead of module_pci_driver and at the same time make way for use of kernel boot parameters. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
f3e5df4348
commit
c65434eb26
|
@ -113,6 +113,8 @@ static struct vesa_mode vesa_mode_table[] = {
|
||||||
|
|
||||||
static struct screen_info smtc_scr_info;
|
static struct screen_info smtc_scr_info;
|
||||||
|
|
||||||
|
static char *mode_option;
|
||||||
|
|
||||||
/* process command line options, get vga parameter */
|
/* process command line options, get vga parameter */
|
||||||
static int __init sm7xx_vga_setup(char *options)
|
static int __init sm7xx_vga_setup(char *options)
|
||||||
{
|
{
|
||||||
|
@ -1017,7 +1019,29 @@ static struct pci_driver smtcfb_driver = {
|
||||||
.driver.pm = SM7XX_PM_OPS,
|
.driver.pm = SM7XX_PM_OPS,
|
||||||
};
|
};
|
||||||
|
|
||||||
module_pci_driver(smtcfb_driver);
|
static int __init sm712fb_init(void)
|
||||||
|
{
|
||||||
|
#ifndef MODULE
|
||||||
|
char *option = NULL;
|
||||||
|
|
||||||
|
if (fb_get_options("sm712fb", &option))
|
||||||
|
return -ENODEV;
|
||||||
|
if (option && *option)
|
||||||
|
mode_option = option;
|
||||||
|
#endif
|
||||||
|
sm7xx_vga_setup(mode_option);
|
||||||
|
|
||||||
|
return pci_register_driver(&smtcfb_driver);
|
||||||
|
}
|
||||||
|
|
||||||
|
module_init(sm712fb_init);
|
||||||
|
|
||||||
|
static void __exit sm712fb_exit(void)
|
||||||
|
{
|
||||||
|
pci_unregister_driver(&smtcfb_driver);
|
||||||
|
}
|
||||||
|
|
||||||
|
module_exit(sm712fb_exit);
|
||||||
|
|
||||||
MODULE_AUTHOR("Siliconmotion ");
|
MODULE_AUTHOR("Siliconmotion ");
|
||||||
MODULE_DESCRIPTION("Framebuffer driver for SMI Graphic Cards");
|
MODULE_DESCRIPTION("Framebuffer driver for SMI Graphic Cards");
|
||||||
|
|
Loading…
Reference in New Issue