linux/drivers/mca/mca-driver.c
<<
>>
Prefs
   1/* -*- mode: c; c-basic-offset: 8 -*- */
   2
   3/*
   4 * MCA driver support functions for sysfs.
   5 *
   6 * (C) 2002 James Bottomley <James.Bottomley@HansenPartnership.com>
   7 *
   8**-----------------------------------------------------------------------------
   9**  
  10**  This program is free software; you can redistribute it and/or modify
  11**  it under the terms of the GNU General Public License as published by
  12**  the Free Software Foundation; either version 2 of the License, or
  13**  (at your option) any later version.
  14**
  15**  This program is distributed in the hope that it will be useful,
  16**  but WITHOUT ANY WARRANTY; without even the implied warranty of
  17**  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18**  GNU General Public License for more details.
  19**
  20**  You should have received a copy of the GNU General Public License
  21**  along with this program; if not, write to the Free Software
  22**  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  23**
  24**-----------------------------------------------------------------------------
  25 */
  26
  27#include <linux/device.h>
  28#include <linux/mca.h>
  29#include <linux/module.h>
  30
  31int mca_register_driver(struct mca_driver *mca_drv)
  32{
  33        int r;
  34
  35        if (MCA_bus) {
  36                mca_drv->driver.bus = &mca_bus_type;
  37                if ((r = driver_register(&mca_drv->driver)) < 0)
  38                        return r;
  39                mca_drv->integrated_id = 0;
  40        }
  41
  42        return 0;
  43}
  44EXPORT_SYMBOL(mca_register_driver);
  45
  46int mca_register_driver_integrated(struct mca_driver *mca_driver,
  47                                   int integrated_id)
  48{
  49        int r = mca_register_driver(mca_driver);
  50
  51        if (!r)
  52                mca_driver->integrated_id = integrated_id;
  53
  54        return r;
  55}
  56EXPORT_SYMBOL(mca_register_driver_integrated);
  57
  58void mca_unregister_driver(struct mca_driver *mca_drv)
  59{
  60        if (MCA_bus)
  61                driver_unregister(&mca_drv->driver);
  62}
  63EXPORT_SYMBOL(mca_unregister_driver);
  64