History log of /freebsd-9.3-release/sys/dev/rp/rp_pci.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 254306 13-Aug-2013 scottl

Merge r254263:

Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCI
command register. The lazy BAR allocation code in FreeBSD sometimes
disables this bit when it detects a range conflict, and will re-enable
it on demand when a driver allocates the BAR. Thus, the bit is no longer
a reliable indication of capability, and should not be checked. This
results in the elimination of a lot of code from drivers, and also gives
the opportunity to simplify a lot of drivers to use a helper API to set
the busmaster enable bit.

This changes fixes some recent reports of disk controllers and their
associated drives/enclosures disappearing during boot.

Candidate for 9.2

Submitted by: jhb
Reviewed by: jfv, marius, adrian, achim


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 196858 05-Sep-2009 imp

These checks against BUSY aren't needed: the newbus layer does this
already with the appropriate locks held... There's no need to do it
here, so just delete the checks.


# 191563 27-Apr-2009 ambrisko

Start to convert this over to the new tty layer. These changes allow
this driver to compile and limp along with the new layer. These changes
do not deal with proper locking around access to the HW. This is only
a starting point. I have not tested modem control but tip seems to work
okay and I can send and receive characters which I needed for one of my
-current boxes. I have not tied this driver back up to the build since
I don't want people to think it is ready for prime time. If anyone
else has some cycles to work on this feel free to!

Also add support for a 16 port PCI interface I have at work.

Glanced at by: ed


# 154817 25-Jan-2006 jhb

The UPCI 32 rp(4) card uses BAR 2 like the UPCI 80 card.

Submitted by: Vitaliy Skakun vit dot ska at gmail dot com
MFC after: 3 days


# 153084 04-Dec-2005 ru

Fix -Wundef from compiling the amd64 LINT.


# 144090 25-Mar-2005 jhb

- Use pci_get_device() and pci_get_vendor() when we only want one part
of the device id.
- Use BAR2 rather than BAR0 for the Rocketport UPCI 8O card. I suspect
that other UPCI cards might need to use BAR2 as well.

Tested by: wsk at gddsn dot org dot cn
MFC after: 1 week


# 142890 01-Mar-2005 imp

Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in
preference to some random negative number to allow other drivers a
bite at the apple.


# 130841 21-Jun-2004 gallatin

Prevent the rp driver from panic'ing on first access and make at
least the pci device unloadable

- Use ttymalloc() rather than a plain malloc to allocate the
rp->rp_tty ttys. This is now required due to the recent locking
changes to ttys and prevents a panic due to locking an unitialized
t_mtx.

- Allow the pci driver to be unloaded. This involved moving
the call rp_releaseresource() to the end of rp_pcireleaseresource(),
since rp_pcireleaseresource() uses ctlp->dev, which is freed
by rp_releaseresource().

- Allow the generic part of the driver to be unattached by providing
a hook to cancel timeouts.

Glanced at by: obrien


# 129879 30-May-2004 phk

Add missing <sys/module.h> includes


# 127135 17-Mar-2004 njl

Convert callers to the new bus_alloc_resource_any(9) API.

Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde


# 119418 24-Aug-2003 obrien

Use __FBSDID().
Also some minor style cleanups.


# 119285 22-Aug-2003 imp

Prefer new location of pci include files (which have only been in the
tree for two or more years now), except in a few places where there's
code to be compatible with older versions of FreeBSD.


# 105215 16-Oct-2002 phk

Be consistent about functions being static.

Spotted by: FlexeLint.


# 69781 08-Dec-2000 dwmalone

Convert more malloc+bzero to malloc+M_ZERO.

Submitted by: josh@zipperup.org
Submitted by: Robert Drehmel <robd@gmx.net>


# 67882 29-Oct-2000 phk

Remove unneeded #include <sys/proc.h> lines.


# 61541 11-Jun-2000 tanimura

1. Update Comtrol RocketPort driver(rp) to version 3.02.
2. Newbusify the driver.
3. Build as a module.

4. Use correct minor numbers when creating device files.
5. Correctly lock control characters.
6. Return ENXIO when device not configured.
Submitted by: Tor Egge <Tor.Egge@fast.no>

7. Fix the baud_table.
Submitted by: Elliot Dierksen <ebd@oau.org>

Note:
- the old driver still lives in src/sys/i386/isa, so that you can
revert to it if something goes wrong.
- The module does not detach very well. Attaching works fine.