Home | History | Annotate | Download | only in pci
History log of /src/sys/dev/pci/if_epic_pci.c
RevisionDateAuthorComments
 1.43  24-Sep-2022  thorpej Remove unnecessary include of <sys/malloc.h>.
 1.42  09-Dec-2018  jdolecek use pci_intr_establish_xname() everywhere
 1.41  29-Mar-2014  christos branches: 1.41.28; 1.41.30;
make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.
 1.40  30-Jan-2012  drochner branches: 1.40.6; 1.40.10;
Use pci_aprint_devinfo(9) instead of pci_devinfo+aprint_{normal,naive}
where it looks straightforward, and pci_aprint_devinfo_fancy in a few
others where drivers want to supply their own device names instead
of the pcidevs generated one. More complicated cases, where names
are composed at runtime, are left alone for now. It certainly makes
sense to simplify the drivers here rather than inventing a catch-all API.
This should serve as as example for new drivers, and also ensure
consistent output in the AB_QUIET ("boot -q") case. Also, it avoids
excessive stack usage where drivers attach child devices because the
buffer for the device name is not kept on the local stack anymore.
 1.39  26-Jul-2011  dyoung branches: 1.39.2; 1.39.6;
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.38  26-Nov-2009  njoly Cleanup interrupt establish error messages. Do not mix
aprint_error/aprint_normal/printf calls for a single line.
 1.37  06-Jul-2008  tsutsui Split device_t/softc with misc cosmetic changes.
 1.36  28-Apr-2008  martin branches: 1.36.2; 1.36.4;
Remove clause 3 and 4 from TNF licenses
 1.35  21-Mar-2008  dyoung branches: 1.35.2; 1.35.4;
Use aprint_*_dev() instead of accessing struct device member dv_xname
directly.
 1.34  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.33  19-Oct-2007  ad branches: 1.33.12; 1.33.16;
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.32  16-Nov-2006  christos branches: 1.32.8; 1.32.22; 1.32.24; 1.32.28;
__unused removal on arguments; approved by core.
 1.31  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.30  17-Jun-2006  christos branches: 1.30.4; 1.30.6;
re-factor the pci powestate api. reviewed by gimpy
 1.29  11-Dec-2005  christos branches: 1.29.4; 1.29.8; 1.29.14; 1.29.16;
merge ktrace-lwp.
 1.28  27-Feb-2005  perry branches: 1.28.4;
nuke trailing whitespace
 1.27  21-Aug-2004  thorpej branches: 1.27.4; 1.27.6;
Use ANSI function decls and make use of static.
 1.26  31-Jan-2003  thorpej branches: 1.26.2;
Use aprint_*().
 1.25  23-Dec-2002  tsutsui Always print the device name first in epic_pci_attach().
 1.24  23-Dec-2002  tsutsui Replace magic numbers for power management control with PCI_PMCSR* macros.

XXX Should we use pci_get_powerstate() and pci_set_powerstate() in pci.c?
 1.23  02-Oct-2002  thorpej Add trailing ; to CFATTACH_DECL.
 1.22  30-Sep-2002  thorpej Use CFATTACH_DECL().
 1.21  27-Sep-2002  thorpej Declare all cfattach structures const.
 1.20  15-Jul-2002  drochner recognize a SMC9432BTX from PCI subsys id and tell the bus independant
backend that it bas a BNC port (just like the SMC9432BTX1)
 1.19  13-Nov-2001  lukem branches: 1.19.8;
add RCSID
 1.18  08-Jul-2001  thorpej branches: 1.18.2;
Remove unnecessary include files. From Onno van der Linden.
 1.17  12-Jun-2001  thorpej Don't need INET or NS includes here.
 1.16  17-May-2001  drochner check PCI subsystem ID for a SMC9432BTX1 or SMC9432FTX and tell the common
driver about their media support (BNC and 100FX, respectively)
 1.15  28-Dec-2000  sommerfeld branches: 1.15.2;
Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
 1.14  17-Jul-2000  tron Don't make assumptions of the actual value of PCI_PMCSR_STATE_D0.
Problem noted by John Hawkinson.
 1.13  17-Jul-2000  tron Don't clobber bits from 2 to 31 when trying to change the power state.
Problem noted by John Hawkinson.
 1.12  16-Jul-2000  tron If card is in power state D3 put it into power state D0 so that it will
at least work after the next reboot.
 1.11  15-Jul-2000  tron Avoid printing duplicate colon when card is waked up.
 1.10  15-Jul-2000  tron Un-__P'ify kernel prototypes.
 1.9  15-Jul-2000  tron Improve kernel message when card is in power state D3. Instead of...

epic0 at pci0 dev 11 function 0 epic0: unable to wake up from ...

... print this:

epic0 at pci0 dev 11 function 0: unable to wake up from power state D3
 1.8  14-Jul-2000  tron Check if card was put into sleep mode using PCI/ACPI power management
and try to restart it. This patch based on hints by Jason Thorpe.
 1.7  27-Jul-1999  thorpej branches: 1.7.2; 1.7.12;
Add support for the SMC 83c175. Also, print out the chip rev when
we attach.
 1.6  24-Mar-1999  thorpej branches: 1.6.4;
Make sure bus mastering is enabled.
 1.5  11-Aug-1998  thorpej Adapt to new MII code.
 1.4  05-Jul-1998  jonathan defopt NS, NSIP.
 1.3  05-Jul-1998  jonathan defopt INET, NETATALK.
 1.2  08-Jun-1998  thorpej Nuke __BROKEN_INDIRECT_CONFIG.
 1.1  02-Jun-1998  thorpej Device driver for the SMC 83c170 Ethernet PCI Integrated Controller (EPIC/100)
used in the SMC EtherPower II.

Media control isn't yet supported, due to some MII infrastructure
problems which I hope to address soon. This isn't a huge deal, since
the PHY defaults to auto-negotiate mode.

Also, the device just programs the multicast hash table to accept all
multicast, to avoid a hardware bug that causes the multicast address
filter to lose in 10Mb/s mode. This bug will be fixed in a more sane
way once the media control issues are dealt with.
 1.6.4.1  02-Aug-1999  thorpej Update from trunk.
 1.7.12.4  16-Jul-2000  tron Sync with NetBSD-current (pull up approved by thorpej):

syssrc/sys/dev/pci/if_epic_pci.c, 1.12
syssrc/sys/dev/pci/if_tlp_pci.c, 1.43

If card is in power state D3 put it into power state D0 so that it will
at least work after the next reboot.
 1.7.12.3  15-Jul-2000  tron Sync with NetBSD-current (pull up approved by thorpej):

syssrc/sys/dev/pci/if_epic_pci.c, 1.11
syssrc/sys/dev/pci/if_tlp_pci.c, 1.42

Avoid printing duplicate colon when card is waked up.
 1.7.12.2  15-Jul-2000  tron Sync with NetBSD-current (pull up approved by thorpej):

syssrc/sys/dev/pci/if_epic_pci.c, 1.9
syssrc/sys/dev/pci/if_tlp_pci.c, 1.41

Improve kernel message when card is in power state D3. Instead of...

epic0 at pci0 dev 11 function 0 epic0: unable to wake up from ...

... print this:

epic0 at pci0 dev 11 function 0: unable to wake up from power state D3
 1.7.12.1  14-Jul-2000  tron Pull up revision 1.8 (approved by thorpej):
Check if card was put into sleep mode using PCI/ACPI power management
and try to restart it. This patch based on hints by Jason Thorpe.
 1.7.2.2  05-Jan-2001  bouyer Sync with HEAD
 1.7.2.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.15.2.6  29-Dec-2002  thorpej Sync with HEAD.
 1.15.2.5  18-Oct-2002  nathanw Catch up to -current.
 1.15.2.4  01-Aug-2002  nathanw Catch up to -current.
 1.15.2.3  14-Nov-2001  nathanw Catch up to -current.
 1.15.2.2  24-Aug-2001  nathanw Catch up with -current.
 1.15.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.18.2.3  10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.18.2.2  06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.18.2.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.19.8.1  20-Jul-2002  gehenna catch up with -current.
 1.26.2.4  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.26.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.26.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.26.2.1  25-Aug-2004  skrll Sync with HEAD.
 1.27.6.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.27.4.1  29-Apr-2005  kent sync with -current
 1.28.4.4  24-Mar-2008  yamt sync with head.
 1.28.4.3  27-Oct-2007  yamt sync with head.
 1.28.4.2  30-Dec-2006  yamt sync with head.
 1.28.4.1  21-Jun-2006  yamt sync with head.
 1.29.16.1  13-Jul-2006  gdamore Merge from HEAD.
 1.29.14.1  19-Jun-2006  chap Sync with head.
 1.29.8.1  26-Jun-2006  yamt sync with head.
 1.29.4.1  09-Sep-2006  rpaulo sync with head
 1.30.6.2  10-Dec-2006  yamt sync with head.
 1.30.6.1  22-Oct-2006  yamt sync with head
 1.30.4.1  18-Nov-2006  ad Sync with head.
 1.32.28.1  25-Oct-2007  bouyer Sync with HEAD.
 1.32.24.2  23-Mar-2008  matt sync with HEAD
 1.32.24.1  06-Nov-2007  matt sync with HEAD
 1.32.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.32.8.1  23-Oct-2007  ad Sync with head.
 1.33.16.3  28-Sep-2008  mjf Sync with HEAD.
 1.33.16.2  02-Jun-2008  mjf Sync with HEAD.
 1.33.16.1  03-Apr-2008  mjf Sync with HEAD.
 1.33.12.1  24-Mar-2008  keiichi sync with head.
 1.35.4.3  11-Mar-2010  yamt sync with head
 1.35.4.2  04-May-2009  yamt sync with head.
 1.35.4.1  16-May-2008  yamt sync with head.
 1.35.2.1  18-May-2008  yamt sync with head.
 1.36.4.1  18-Jul-2008  simonb Sync with head.
 1.36.2.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.39.6.1  18-Feb-2012  mrg merge to -current.
 1.39.2.2  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.39.2.1  17-Apr-2012  yamt sync with head
 1.40.10.1  18-May-2014  rmind sync with head
 1.40.6.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.41.30.1  10-Jun-2019  christos Sync with HEAD
 1.41.28.1  26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts

RSS XML Feed