diff options
author | Hauke Mehrtens <hauke@openwrt.org> | 2010-01-01 21:44:37 +0000 |
---|---|---|
committer | Hauke Mehrtens <hauke@openwrt.org> | 2010-01-01 21:44:37 +0000 |
commit | 1a2539e77ebf6cf5df1a723535c146a9d89bf2a2 (patch) | |
tree | dea2b4dd9dbdbe2f1772e2549c22525d7c694cbf /target/linux/amazon/files/drivers/serial/amazon_asc.c | |
parent | 4b1ab04766e42bdf5590fb5b567534fd5c474852 (diff) | |
download | upstream-1a2539e77ebf6cf5df1a723535c146a9d89bf2a2.tar.gz upstream-1a2539e77ebf6cf5df1a723535c146a9d89bf2a2.tar.bz2 upstream-1a2539e77ebf6cf5df1a723535c146a9d89bf2a2.zip |
mazon: use platform_device for most drivers and fix some printk's
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18989 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/amazon/files/drivers/serial/amazon_asc.c')
-rw-r--r-- | target/linux/amazon/files/drivers/serial/amazon_asc.c | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/target/linux/amazon/files/drivers/serial/amazon_asc.c b/target/linux/amazon/files/drivers/serial/amazon_asc.c index 6297549458..f7fa907b00 100644 --- a/target/linux/amazon/files/drivers/serial/amazon_asc.c +++ b/target/linux/amazon/files/drivers/serial/amazon_asc.c @@ -44,6 +44,7 @@ #include <linux/console.h> #include <linux/sysrq.h> #include <linux/irq.h> +#include <linux/platform_device.h> #include <asm/system.h> #include <asm/io.h> @@ -670,7 +671,7 @@ static struct uart_driver amazonasc_reg = { .cons = &amazonasc_console, }; -static int __init amazonasc_init(void) +static int __init amazon_asc_probe(struct platform_device *dev) { unsigned char res; uart_register_driver(&amazonasc_reg); @@ -678,14 +679,38 @@ static int __init amazonasc_init(void) return res; } -static void __exit amazonasc_exit(void) +static int __exit amazon_asc_remove(struct platform_device *dev) { uart_unregister_driver(&amazonasc_reg); + return 0; +} + +static struct platform_driver amazon_asc_driver = { + .probe = amazon_asc_probe, + .remove = amazon_asc_remove, + .driver = { + .name = "amazon_asc", + .owner = THIS_MODULE, + }, +}; + +static int __init amazon_asc_init(void) +{ + int ret = platform_driver_register(&amazon_asc_driver); + if (ret) + printk(KERN_WARNING "amazon_asc: error registering platfom driver!\n"); + return ret; +} + +static void __exit amazon_asc_cleanup(void) +{ + platform_driver_unregister(&amazon_asc_driver); } -module_init(amazonasc_init); -module_exit(amazonasc_exit); +module_init(amazon_asc_init); +module_exit(amazon_asc_cleanup); MODULE_AUTHOR("Gary Jennejohn, Felix Fietkau, John Crispin"); MODULE_DESCRIPTION("MIPS AMAZONASC serial port driver"); MODULE_LICENSE("GPL"); + |