Commit 94d9bd45 authored by Alexandre Bounine's avatar Alexandre Bounine Committed by Linus Torvalds

rapidio/tsi721: convert to modular mport driver

This patch adds an option to build device driver for Tsi721 PCIe-to-SRIO
bridge device as a kernel module.

Currently this module cannot be unloaded because the existing RapidIO
subsystem code does not support dynamic removal of local RapidIO
controllers (TODO).
Signed-off-by: default avatarAlexandre Bounine <alexandre.bounine@idt.com>
Cc: Matt Porter <mporter@kernel.crashing.org>
Cc: Li Yang <leoli@freescale.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Andre van Herk <andre.van.herk@Prodrive.nl>
Cc: Micha Nelissen <micha.nelissen@Prodrive.nl>
Cc: Stef van Os <stef.van.os@Prodrive.nl>
Cc: Jean Delvare <jdelvare@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9edbc30b
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# #
config RAPIDIO_TSI721 config RAPIDIO_TSI721
bool "IDT Tsi721 PCI Express SRIO Controller support" tristate "IDT Tsi721 PCI Express SRIO Controller support"
depends on RAPIDIO && PCIEPORTBUS depends on RAPIDIO && PCIEPORTBUS
default "n" default "n"
---help--- ---help---
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
# Makefile for RapidIO devices # Makefile for RapidIO devices
# #
obj-$(CONFIG_RAPIDIO_TSI721) += tsi721.o obj-$(CONFIG_RAPIDIO_TSI721) += tsi721_mport.o
ifeq ($(CONFIG_RAPIDIO_DMA_ENGINE),y) tsi721_mport-y := tsi721.o
obj-$(CONFIG_RAPIDIO_TSI721) += tsi721_dma.o tsi721_mport-$(CONFIG_RAPIDIO_DMA_ENGINE) += tsi721_dma.o
endif
...@@ -2515,9 +2515,8 @@ static int __init tsi721_init(void) ...@@ -2515,9 +2515,8 @@ static int __init tsi721_init(void)
return pci_register_driver(&tsi721_driver); return pci_register_driver(&tsi721_driver);
} }
static void __exit tsi721_exit(void)
{
pci_unregister_driver(&tsi721_driver);
}
device_initcall(tsi721_init); device_initcall(tsi721_init);
MODULE_DESCRIPTION("IDT Tsi721 PCIExpress-to-SRIO bridge driver");
MODULE_AUTHOR("Integrated Device Technology, Inc.");
MODULE_LICENSE("GPL");
...@@ -1911,6 +1911,7 @@ int rio_register_mport(struct rio_mport *port) ...@@ -1911,6 +1911,7 @@ int rio_register_mport(struct rio_mport *port)
pr_debug("RIO: %s %s id=%d\n", __func__, port->name, port->id); pr_debug("RIO: %s %s id=%d\n", __func__, port->name, port->id);
return 0; return 0;
} }
EXPORT_SYMBOL_GPL(rio_register_mport);
EXPORT_SYMBOL_GPL(rio_local_get_device_id); EXPORT_SYMBOL_GPL(rio_local_get_device_id);
EXPORT_SYMBOL_GPL(rio_get_device); EXPORT_SYMBOL_GPL(rio_get_device);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment