Home | History | Annotate | Download | only in pci
History log of /src/sys/dev/pci/if_atw_pci.c
RevisionDateAuthorComments
 1.29  25-Sep-2022  thorpej Remove unnecessary include of <sys/malloc.h>.
 1.28  09-Dec-2018  jdolecek use pci_intr_establish_xname() everywhere
 1.27  14-Jul-2016  msaitoh branches: 1.27.16; 1.27.18;
- Use aprint*() instead of printf() in xxx_attach().
- Add missing aprint_naive("\n");
- KNF
 1.26  29-Mar-2014  christos branches: 1.26.6;
make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.
 1.25  26-Jul-2011  dyoung branches: 1.25.2; 1.25.12; 1.25.16;
Replace anonymous constants, 0x10, 0x14, ..., with PCI_BAR(0),
PCI_BAR(1), .... There was no change in the generated assembly. I used
this semantic patch:

@ mapsit @
identifier bar;
expression pact;
@@

(
pci_mapreg_map
|
Cardbus_mapreg_map
)(pact, bar, ...)

@ depends on mapsit @
identifier mapsit.bar;
@@
(
- #define bar 0x10
+ #define bar PCI_BAR(0)
|
- #define bar 0x14
+ #define bar PCI_BAR(1)
|
- #define bar 0x18
+ #define bar PCI_BAR(2)
|
- #define bar 0x1C
+ #define bar PCI_BAR(3)
|
- #define bar 0x20
+ #define bar PCI_BAR(4)
)
 1.24  24-Feb-2010  dyoung A pointer typedef entails trading too much flexibility to declare const
and non-const types, and the kernel uses both const and non-const
PMF qualifiers and device suspensors, so change the pmf_qual_t and
device_suspensor_t typedefs from "pointers to const" to non-pointer,
non-const types.
 1.23  08-Jan-2010  dyoung branches: 1.23.2;
Expand PMF_FN_* macros.
 1.22  16-Sep-2009  dyoung In pmf(9), improve the implementation of device self-suspension
and make suspension by self, by drvctl(8), and by ACPI system sleep
play nice together. Start solidifying some temporary API changes.

1. Extract a new header file, <sys/device_if.h>, from <sys/device.h> and
#include it from <sys/pmf.h> instead of <sys/device.h> to break the
circular dependency between <sys/device.h> and <sys/pmf.h>.

2. Introduce pmf_qual_t, an aggregate of qualifications on a PMF
suspend/resume call. Start to replace instances of PMF_FN_PROTO,
PMF_FN_ARGS, et cetera, with a pmf_qual_t.

3. Introduce the notion of a "suspensor," an entity that holds a
device in suspension. More than one suspensor may hold a device
at once. A device stays suspended as long as at least one
suspensor holds it. A device resumes when the last suspensor
releases it.

Currently, the kernel defines three suspensors,

3a the system-suspensor: for system suspension, initiated
by 'sysctl -w machdep.sleep_state=3', by lid closure, by
power-button press, et cetera,

3b the drvctl-suspensor: for device suspension by /dev/drvctl
ioctl, e.g., drvctl -S sip0.

3c the system self-suspensor: for device drivers that suspend
themselves and their children. Several drivers for network
interfaces put the network device to sleep while it is not
administratively up, that is, after the kernel calls if_stop(,
1). The self-suspensor should not be used directly. See
the description of suspensor delegates, below.

A suspensor can have one or more "delegates". A suspensor can
release devices that its delegates hold suspended. Right now,
only the system self-suspensor has delegates. For each device
that a self-suspending driver attaches, it creates the device's
self-suspensor, a delegate of the system self-suspensor.

Suspensors stop a system-wide suspend/resume cycle from waking
devices that the operator put to sleep with drvctl before the cycle.
They also help self-suspension to work more simply, safely, and in
accord with expectations.

4. Add the notion of device activation level, devact_level_t,
and a routine for checking the current activation level,
device_activation(). Current activation levels are DEVACT_LEVEL_BUS,
DEVACT_LEVEL_DRIVER, and DEVACT_LEVEL_CLASS, which respectively
indicate that the device's bus is active, that the bus and device are
active, and that the bus, device, and the functions of the device's
class (network, audio) are active.

Suspend/resume calls can be qualified with a devact_level_t.
The power-management framework treats a devact_level_t that
qualifies a device suspension as the device's current activation
level; it only runs hooks to reduce the activation level from
the presumed current level to the fully suspended state. The
framework treats a devact_level_t qualifying device resumption
as the target activation level; it only runs hooks to raise the
activation level to the target.

5. Use pmf_qual_t, devact_level_t, and self-suspensors in several
drivers.

6. Temporarily add an unused power-management workqueue that I will
remove or replace, soon.
 1.21  06-May-2009  cegger struct cfdata * -> cfdata_t, no functional changes intended.
 1.20  09-Jul-2008  joerg branches: 1.20.8;
- device/softc split
 1.19  28-Apr-2008  martin branches: 1.19.2; 1.19.4; 1.19.6;
Remove clause 3 and 4 from TNF licenses
 1.18  21-Mar-2008  dyoung branches: 1.18.2; 1.18.4;
Use aprint_*_dev() instead of accessing struct device member dv_xname
directly.
 1.17  21-Mar-2008  dyoung pci_activate() expects for its void * argument to be a device_t,
so change the type of the argument to device_t. Update each use
of pci_activate().

Use device_t and accessors. Use aprint_*_dev().
 1.16  07-Mar-2008  dyoung Use device_t and accessors.
 1.15  19-Oct-2007  ad branches: 1.15.12; 1.15.16;
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.14  16-Nov-2006  christos branches: 1.14.8; 1.14.22; 1.14.24; 1.14.28;
__unused removal on arguments; approved by core.
 1.13  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.12  17-Jun-2006  christos branches: 1.12.4; 1.12.6;
re-factor the pci powestate api. reviewed by gimpy
 1.11  11-Dec-2005  christos branches: 1.11.4; 1.11.8; 1.11.14; 1.11.16;
merge ktrace-lwp.
 1.10  22-Jun-2005  dyoung branches: 1.10.2;
Resolve conflicts in importation of 18-May-2005 ath(4) / net80211(9)
from FreeBSD. Introduce compatibility shims (sys/dev/ic/ath_netbsd.[ch],
sys/net80211/ieee80211_netbsd.[ch]). Update drivers (an, atu, atw,
awi, ipw, iwi, rtw, wi) for the new net80211(9) API.
 1.9  27-Feb-2005  perry nuke trailing whitespace
 1.8  21-Aug-2004  thorpej branches: 1.8.4; 1.8.6;
Use ANSI function decls and make use of static.
 1.7  23-Jul-2004  dyoung branches: 1.7.2;
Print and store Cardbus/PCI revision number.

Begin conditioning device configuration on revision number. Four
revisions are known:

1.1/1.5 -> ADM8211A,
2.0 -> ADM8211B,
3.0 -> ADM8211C.

The B and C parts, which are not supported yet, have AP capability.
 1.6  17-Feb-2004  dyoung Move the RF Microdevices RF3000 & Silicon Laboratories SI4126/SI4136
register sets into their own header files for re-use by future
drivers.
 1.5  29-Jan-2004  dyoung Get rid of __P.
 1.4  29-Jan-2004  dyoung Add atw_pci_enable, atw_pci_disable. Fixes a panic at "ifconfig
down" that was reported by Darren Reed.
 1.3  16-Nov-2003  dyoung Add data-link type DLT_IEEE802_11_RADIO to wi and atw. DLT_IEEE802_11_RADIO
lets you monitor radio stats like received signal strength, which
diversity antenna was used, channel/frequency, modulation, and data
rate.
 1.2  13-Oct-2003  dyoung Adapt atw(4) to the new 802.11 layer.

Simplify atw_start, atw_newstate.

Synchronize access to atw_start by bracketing the call to
ieee80211_next_scan in atw_next_scan with splnet()/splx().
 1.1  06-Jul-2003  dyoung Oops. Add the atw(4) sources, too.
 1.7.2.8  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.7.2.7  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.7.2.6  21-Sep-2004  skrll Fix the sync with head I botched.
 1.7.2.5  18-Sep-2004  skrll Sync with HEAD.
 1.7.2.4  25-Aug-2004  skrll Sync with HEAD.
 1.7.2.3  12-Aug-2004  skrll Sync with HEAD.
 1.7.2.2  03-Aug-2004  skrll Sync with HEAD
 1.7.2.1  23-Jul-2004  skrll file if_atw_pci.c was added on branch ktrace-lwp on 2004-08-03 10:49:07 +0000
 1.8.6.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.8.4.1  29-Apr-2005  kent sync with -current
 1.10.2.5  24-Mar-2008  yamt sync with head.
 1.10.2.4  17-Mar-2008  yamt sync with head.
 1.10.2.3  27-Oct-2007  yamt sync with head.
 1.10.2.2  30-Dec-2006  yamt sync with head.
 1.10.2.1  21-Jun-2006  yamt sync with head.
 1.11.16.1  13-Jul-2006  gdamore Merge from HEAD.
 1.11.14.1  19-Jun-2006  chap Sync with head.
 1.11.8.1  26-Jun-2006  yamt sync with head.
 1.11.4.1  09-Sep-2006  rpaulo sync with head
 1.12.6.2  10-Dec-2006  yamt sync with head.
 1.12.6.1  22-Oct-2006  yamt sync with head
 1.12.4.1  18-Nov-2006  ad Sync with head.
 1.14.28.1  25-Oct-2007  bouyer Sync with HEAD.
 1.14.24.2  23-Mar-2008  matt sync with HEAD
 1.14.24.1  06-Nov-2007  matt sync with HEAD
 1.14.22.1  26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.14.8.1  23-Oct-2007  ad Sync with head.
 1.15.16.3  28-Sep-2008  mjf Sync with HEAD.
 1.15.16.2  02-Jun-2008  mjf Sync with HEAD.
 1.15.16.1  03-Apr-2008  mjf Sync with HEAD.
 1.15.12.1  24-Mar-2008  keiichi sync with head.
 1.18.4.4  11-Mar-2010  yamt sync with head
 1.18.4.3  16-May-2009  yamt sync with head
 1.18.4.2  04-May-2009  yamt sync with head.
 1.18.4.1  16-May-2008  yamt sync with head.
 1.18.2.1  18-May-2008  yamt sync with head.
 1.19.6.1  19-Oct-2008  haad Sync with HEAD.
 1.19.4.1  18-Jul-2008  simonb Sync with head.
 1.19.2.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.20.8.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.23.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.25.16.1  18-May-2014  rmind sync with head
 1.25.12.2  03-Dec-2017  jdolecek update from HEAD
 1.25.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.25.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.26.6.1  05-Oct-2016  skrll Sync with HEAD
 1.27.18.1  10-Jun-2019  christos Sync with HEAD
 1.27.16.1  26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts

RSS XML Feed