diff options
author | Timothy Pearson <tpearson@raptorengineering.com> | 2017-08-23 14:45:25 -0500 |
---|---|---|
committer | Timothy Pearson <tpearson@raptorengineering.com> | 2017-08-23 14:45:25 -0500 |
commit | fcbb27b0ec6dcbc5a5108cb8fb19eae64593d204 (patch) | |
tree | 22962a4387943edc841c72a4e636a068c66d58fd /drivers/mca/mca-driver.c | |
download | ast2050-linux-kernel-fcbb27b0ec6dcbc5a5108cb8fb19eae64593d204.zip ast2050-linux-kernel-fcbb27b0ec6dcbc5a5108cb8fb19eae64593d204.tar.gz |
Initial import of modified Linux 2.6.28 tree
Original upstream URL:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git | branch linux-2.6.28.y
Diffstat (limited to 'drivers/mca/mca-driver.c')
-rw-r--r-- | drivers/mca/mca-driver.c | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/drivers/mca/mca-driver.c b/drivers/mca/mca-driver.c new file mode 100644 index 0000000..32cd39b --- /dev/null +++ b/drivers/mca/mca-driver.c @@ -0,0 +1,63 @@ +/* -*- mode: c; c-basic-offset: 8 -*- */ + +/* + * MCA driver support functions for sysfs. + * + * (C) 2002 James Bottomley <James.Bottomley@HansenPartnership.com> + * +**----------------------------------------------------------------------------- +** +** This program is free software; you can redistribute it and/or modify +** it under the terms of the GNU General Public License as published by +** the Free Software Foundation; either version 2 of the License, or +** (at your option) any later version. +** +** This program is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU General Public License for more details. +** +** You should have received a copy of the GNU General Public License +** along with this program; if not, write to the Free Software +** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +** +**----------------------------------------------------------------------------- + */ + +#include <linux/device.h> +#include <linux/mca.h> +#include <linux/module.h> + +int mca_register_driver(struct mca_driver *mca_drv) +{ + int r; + + if (MCA_bus) { + mca_drv->driver.bus = &mca_bus_type; + if ((r = driver_register(&mca_drv->driver)) < 0) + return r; + mca_drv->integrated_id = 0; + } + + return 0; +} +EXPORT_SYMBOL(mca_register_driver); + +int mca_register_driver_integrated(struct mca_driver *mca_driver, + int integrated_id) +{ + int r = mca_register_driver(mca_driver); + + if (!r) + mca_driver->integrated_id = integrated_id; + + return r; +} +EXPORT_SYMBOL(mca_register_driver_integrated); + +void mca_unregister_driver(struct mca_driver *mca_drv) +{ + if (MCA_bus) + driver_unregister(&mca_drv->driver); +} +EXPORT_SYMBOL(mca_unregister_driver); |