summaryrefslogtreecommitdiffstats
path: root/sys/dev/cardbus
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2001-12-15 05:58:28 +0000
committerimp <imp@FreeBSD.org>2001-12-15 05:58:28 +0000
commit9292ea9a4dfc2ff90ee03892a97de158af725c44 (patch)
tree9d150006491e4846d4731d4cb78daa7d0ca0ebd5 /sys/dev/cardbus
parentad82adf6dd23cf18586eae17240b2a0f4b5891a4 (diff)
downloadFreeBSD-src-9292ea9a4dfc2ff90ee03892a97de158af725c44.zip
FreeBSD-src-9292ea9a4dfc2ff90ee03892a97de158af725c44.tar.gz
Add support for suspending/resuming CardBus bridges.
We really should have and use power state information, but none exists today. Submitted by: YAMAMOTO Shigeru-san <shigeru@iij.ad.jp>
Diffstat (limited to 'sys/dev/cardbus')
-rw-r--r--sys/dev/cardbus/cardbus.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/sys/dev/cardbus/cardbus.c b/sys/dev/cardbus/cardbus.c
index fc478b5..4fae016 100644
--- a/sys/dev/cardbus/cardbus.c
+++ b/sys/dev/cardbus/cardbus.c
@@ -146,7 +146,7 @@ static void cardbus_disable_io_method(device_t cbdev, device_t child,
static int
cardbus_probe(device_t cbdev)
{
- device_set_desc(cbdev, "Cardbus bus (newcard)");
+ device_set_desc(cbdev, "CardBus bus");
return 0;
}
@@ -163,6 +163,19 @@ cardbus_detach(device_t cbdev)
return 0;
}
+static int
+cardbus_suspend(device_t self)
+{
+ cardbus_detach_card(self, DETACH_FORCE);
+ return (0);
+}
+
+static int
+cardbus_resume(device_t self)
+{
+ return (0);
+}
+
/************************************************************************/
/* Attach/Detach card */
/************************************************************************/
@@ -1199,8 +1212,8 @@ static device_method_t cardbus_methods[] = {
DEVMETHOD(device_attach, cardbus_attach),
DEVMETHOD(device_detach, cardbus_detach),
DEVMETHOD(device_shutdown, bus_generic_shutdown),
- DEVMETHOD(device_suspend, bus_generic_suspend),
- DEVMETHOD(device_resume, bus_generic_resume),
+ DEVMETHOD(device_suspend, cardbus_suspend),
+ DEVMETHOD(device_resume, cardbus_resume),
/* Bus interface */
DEVMETHOD(bus_print_child, cardbus_print_child),
OpenPOWER on IntegriCloud