| @@ -1,14 +1,14 @@ | | | @@ -1,14 +1,14 @@ |
1 | /* $NetBSD: ichlpcib.c,v 1.13 2008/08/14 01:20:30 yamt Exp $ */ | | 1 | /* $NetBSD: ichlpcib.c,v 1.14 2008/10/13 15:10:51 joerg Exp $ */ |
2 | | | 2 | |
3 | /*- | | 3 | /*- |
4 | * Copyright (c) 2004 The NetBSD Foundation, Inc. | | 4 | * Copyright (c) 2004 The NetBSD Foundation, Inc. |
5 | * All rights reserved. | | 5 | * All rights reserved. |
6 | * | | 6 | * |
7 | * This code is derived from software contributed to The NetBSD Foundation | | 7 | * This code is derived from software contributed to The NetBSD Foundation |
8 | * by Minoura Makoto and Matthew R. Green. | | 8 | * by Minoura Makoto and Matthew R. Green. |
9 | * | | 9 | * |
10 | * Redistribution and use in source and binary forms, with or without | | 10 | * Redistribution and use in source and binary forms, with or without |
11 | * modification, are permitted provided that the following conditions | | 11 | * modification, are permitted provided that the following conditions |
12 | * are met: | | 12 | * are met: |
13 | * 1. Redistributions of source code must retain the above copyright | | 13 | * 1. Redistributions of source code must retain the above copyright |
14 | * notice, this list of conditions and the following disclaimer. | | 14 | * notice, this list of conditions and the following disclaimer. |
| @@ -29,27 +29,27 @@ | | | @@ -29,27 +29,27 @@ |
29 | * POSSIBILITY OF SUCH DAMAGE. | | 29 | * POSSIBILITY OF SUCH DAMAGE. |
30 | */ | | 30 | */ |
31 | | | 31 | |
32 | /* | | 32 | /* |
33 | * Intel I/O Controller Hub (ICHn) LPC Interface Bridge driver | | 33 | * Intel I/O Controller Hub (ICHn) LPC Interface Bridge driver |
34 | * | | 34 | * |
35 | * LPC Interface Bridge is basically a pcib (PCI-ISA Bridge), but has | | 35 | * LPC Interface Bridge is basically a pcib (PCI-ISA Bridge), but has |
36 | * some power management and monitoring functions. | | 36 | * some power management and monitoring functions. |
37 | * Currently we support the watchdog timer, SpeedStep (on some systems) | | 37 | * Currently we support the watchdog timer, SpeedStep (on some systems) |
38 | * and the power management timer. | | 38 | * and the power management timer. |
39 | */ | | 39 | */ |
40 | | | 40 | |
41 | #include <sys/cdefs.h> | | 41 | #include <sys/cdefs.h> |
42 | __KERNEL_RCSID(0, "$NetBSD: ichlpcib.c,v 1.13 2008/08/14 01:20:30 yamt Exp $"); | | 42 | __KERNEL_RCSID(0, "$NetBSD: ichlpcib.c,v 1.14 2008/10/13 15:10:51 joerg Exp $"); |
43 | | | 43 | |
44 | #include <sys/types.h> | | 44 | #include <sys/types.h> |
45 | #include <sys/param.h> | | 45 | #include <sys/param.h> |
46 | #include <sys/systm.h> | | 46 | #include <sys/systm.h> |
47 | #include <sys/device.h> | | 47 | #include <sys/device.h> |
48 | #include <sys/sysctl.h> | | 48 | #include <sys/sysctl.h> |
49 | #include <sys/timetc.h> | | 49 | #include <sys/timetc.h> |
50 | #include <machine/bus.h> | | 50 | #include <machine/bus.h> |
51 | | | 51 | |
52 | #include <dev/pci/pcivar.h> | | 52 | #include <dev/pci/pcivar.h> |
53 | #include <dev/pci/pcireg.h> | | 53 | #include <dev/pci/pcireg.h> |
54 | #include <dev/pci/pcidevs.h> | | 54 | #include <dev/pci/pcidevs.h> |
55 | | | 55 | |
| @@ -136,26 +136,28 @@ static struct lpcib_device { | | | @@ -136,26 +136,28 @@ static struct lpcib_device { |
136 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801FBM_LPC, 1, 0 }, | | 136 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801FBM_LPC, 1, 0 }, |
137 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801G_LPC, 1, 0 }, | | 137 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801G_LPC, 1, 0 }, |
138 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801GBM_LPC, 1, 0 }, | | 138 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801GBM_LPC, 1, 0 }, |
139 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801GHM_LPC, 1, 0 }, | | 139 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801GHM_LPC, 1, 0 }, |
140 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801H_LPC, 1, 0 }, | | 140 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801H_LPC, 1, 0 }, |
141 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HEM_LPC, 1, 0 }, | | 141 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HEM_LPC, 1, 0 }, |
142 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HH_LPC, 1, 0 }, | | 142 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HH_LPC, 1, 0 }, |
143 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HO_LPC, 1, 0 }, | | 143 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HO_LPC, 1, 0 }, |
144 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HBM_LPC, 1, 0 }, | | 144 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HBM_LPC, 1, 0 }, |
145 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IH_LPC, 1, 0 }, | | 145 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IH_LPC, 1, 0 }, |
146 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IO_LPC, 1, 0 }, | | 146 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IO_LPC, 1, 0 }, |
147 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IR_LPC, 1, 0 }, | | 147 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IR_LPC, 1, 0 }, |
148 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IB_LPC, 1, 0 }, | | 148 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IB_LPC, 1, 0 }, |
| | | 149 | { PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_63XXESB_LPC, 1, 0 }, |
| | | 150 | |
149 | { 0, 0, 0, 0 }, | | 151 | { 0, 0, 0, 0 }, |
150 | }; | | 152 | }; |
151 | | | 153 | |
152 | /* | | 154 | /* |
153 | * Autoconf callbacks. | | 155 | * Autoconf callbacks. |
154 | */ | | 156 | */ |
155 | static int | | 157 | static int |
156 | lpcibmatch(device_t parent, cfdata_t match, void *aux) | | 158 | lpcibmatch(device_t parent, cfdata_t match, void *aux) |
157 | { | | 159 | { |
158 | struct pci_attach_args *pa = aux; | | 160 | struct pci_attach_args *pa = aux; |
159 | struct lpcib_device *lpcib_dev; | | 161 | struct lpcib_device *lpcib_dev; |
160 | | | 162 | |
161 | /* We are ISA bridge, of course */ | | 163 | /* We are ISA bridge, of course */ |