aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2008-10-18 21:43:30 +0000
committerFelix Fietkau <nbd@openwrt.org>2008-10-18 21:43:30 +0000
commit1e570a9288856bcd288a80115f2233c9c785706c (patch)
tree8491af08bde47e22f96c01e6f560206b3fd02a4a /target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c
parent487c622ac0c37f3cd26add56df9081ea7caf3835 (diff)
downloadupstream-1e570a9288856bcd288a80115f2233c9c785706c.tar.gz
upstream-1e570a9288856bcd288a80115f2233c9c785706c.tar.bz2
upstream-1e570a9288856bcd288a80115f2233c9c785706c.zip
change the way ./files* and the generic kernel files are applied. ./files now applies to *ALL* kernel versions, and is copied along with ./files-* - this gets rid of quite a bit of redundancy in the extra kernel drivers.
SVN-Revision: 13010
Diffstat (limited to 'target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c')
-rw-r--r--target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c104
1 files changed, 0 insertions, 104 deletions
diff --git a/target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c b/target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c
deleted file mode 100644
index 82a10abef6..0000000000
--- a/target/linux/generic-2.6/files/drivers/ssb/pcihost_wrapper.c
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Sonics Silicon Backplane
- * PCI Hostdevice wrapper
- *
- * Copyright (c) 2005 Martin Langer <martin-langer@gmx.de>
- * Copyright (c) 2005 Stefano Brivio <st3@riseup.net>
- * Copyright (c) 2005 Danny van Dyk <kugelfang@gentoo.org>
- * Copyright (c) 2005 Andreas Jaggi <andreas.jaggi@waterwave.ch>
- * Copyright (c) 2005-2007 Michael Buesch <mbuesch@freenet.de>
- *
- * Licensed under the GNU/GPL. See COPYING for details.
- */
-
-#include <linux/pci.h>
-#include <linux/ssb/ssb.h>
-
-
-#ifdef CONFIG_PM
-static int ssb_pcihost_suspend(struct pci_dev *dev, pm_message_t state)
-{
- pci_save_state(dev);
- pci_disable_device(dev);
- pci_set_power_state(dev, pci_choose_state(dev, state));
-
- return 0;
-}
-
-static int ssb_pcihost_resume(struct pci_dev *dev)
-{
- int err;
-
- pci_set_power_state(dev, 0);
- err = pci_enable_device(dev);
- if (err)
- return err;
- pci_restore_state(dev);
-
- return 0;
-}
-#else /* CONFIG_PM */
-# define ssb_pcihost_suspend NULL
-# define ssb_pcihost_resume NULL
-#endif /* CONFIG_PM */
-
-static int ssb_pcihost_probe(struct pci_dev *dev,
- const struct pci_device_id *id)
-{
- struct ssb_bus *ssb;
- int err = -ENOMEM;
- const char *name;
-
- ssb = kzalloc(sizeof(*ssb), GFP_KERNEL);
- if (!ssb)
- goto out;
- err = pci_enable_device(dev);
- if (err)
- goto err_kfree_ssb;
- name = dev->dev.bus_id;
- if (dev->driver && dev->driver->name)
- name = dev->driver->name;
- err = pci_request_regions(dev, name);
- if (err)
- goto err_pci_disable;
- pci_set_master(dev);
-
- err = ssb_bus_pcibus_register(ssb, dev);
- if (err)
- goto err_pci_release_regions;
-
- pci_set_drvdata(dev, ssb);
-
-out:
- return err;
-
-err_pci_release_regions:
- pci_release_regions(dev);
-err_pci_disable:
- pci_disable_device(dev);
-err_kfree_ssb:
- kfree(ssb);
- return err;
-}
-
-static void ssb_pcihost_remove(struct pci_dev *dev)
-{
- struct ssb_bus *ssb = pci_get_drvdata(dev);
-
- ssb_bus_unregister(ssb);
- pci_release_regions(dev);
- pci_disable_device(dev);
- kfree(ssb);
- pci_set_drvdata(dev, NULL);
-}
-
-int ssb_pcihost_register(struct pci_driver *driver)
-{
- driver->probe = ssb_pcihost_probe;
- driver->remove = ssb_pcihost_remove;
- driver->suspend = ssb_pcihost_suspend;
- driver->resume = ssb_pcihost_resume;
-
- return pci_register_driver(driver);
-}
-EXPORT_SYMBOL(ssb_pcihost_register);