PERFORCE change 63472 for review
John Baldwin
jhb at FreeBSD.org
Thu Oct 21 08:55:36 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=63472
Change 63472 by jhb at jhb_slimer on 2004/10/21 15:55:18
IFC @63467. Working if_de(4), compilable LINT, etc.
Affected files ...
.. //depot/projects/smpng/sys/alpha/alpha/promcons.c#21 integrate
.. //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#32 integrate
.. //depot/projects/smpng/sys/alpha/tlsb/zs_tlsb.c#18 integrate
.. //depot/projects/smpng/sys/amd64/amd64/nexus.c#14 integrate
.. //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#5 integrate
.. //depot/projects/smpng/sys/boot/common/help.common#16 integrate
.. //depot/projects/smpng/sys/boot/common/loader.8#31 integrate
.. //depot/projects/smpng/sys/dev/aic7xxx/ahc_isa.c#3 integrate
.. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.c#21 integrate
.. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.h#12 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-all.c#64 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-card.c#21 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-queue.c#22 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bge.c#47 integrate
.. //depot/projects/smpng/sys/dev/dcons/dcons_os.c#2 integrate
.. //depot/projects/smpng/sys/dev/digi/digi.c#27 integrate
.. //depot/projects/smpng/sys/dev/digi/digi.h#10 integrate
.. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#24 integrate
.. //depot/projects/smpng/sys/dev/em/if_em.c#38 integrate
.. //depot/projects/smpng/sys/dev/ex/if_ex.c#14 integrate
.. //depot/projects/smpng/sys/dev/fdc/fdc.c#12 integrate
.. //depot/projects/smpng/sys/dev/hifn/hifn7751.c#18 integrate
.. //depot/projects/smpng/sys/dev/hifn/hifn7751var.h#5 integrate
.. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#20 integrate
.. //depot/projects/smpng/sys/dev/nmdm/nmdm.c#23 integrate
.. //depot/projects/smpng/sys/dev/ofw/ofw_console.c#21 integrate
.. //depot/projects/smpng/sys/dev/pci/pci.c#43 integrate
.. //depot/projects/smpng/sys/dev/random/harvest.c#10 integrate
.. //depot/projects/smpng/sys/dev/sio/sio_pci.c#14 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/mss.c#20 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/buffer.c#12 integrate
.. //depot/projects/smpng/sys/dev/syscons/syscons.c#44 integrate
.. //depot/projects/smpng/sys/dev/syscons/sysmouse.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/ubsa.c#12 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#64 integrate
.. //depot/projects/smpng/sys/dev/zs/zs.c#19 integrate
.. //depot/projects/smpng/sys/geom/label/g_label.c#7 integrate
.. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#10 integrate
.. //depot/projects/smpng/sys/i386/bios/apm.c#9 integrate
.. //depot/projects/smpng/sys/i386/i386/nexus.c#16 integrate
.. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#54 integrate
.. //depot/projects/smpng/sys/i386/isa/npx.c#43 integrate
.. //depot/projects/smpng/sys/i386/isa/pcvt/pcvt_drv.c#16 integrate
.. //depot/projects/smpng/sys/ia64/ia64/nexus.c#8 integrate
.. //depot/projects/smpng/sys/ia64/ia64/ssc.c#15 integrate
.. //depot/projects/smpng/sys/isa/atkbdc_isa.c#10 integrate
.. //depot/projects/smpng/sys/isa/isahint.c#4 integrate
.. //depot/projects/smpng/sys/kern/kern_descrip.c#70 integrate
.. //depot/projects/smpng/sys/kern/kern_event.c#34 integrate
.. //depot/projects/smpng/sys/kern/kern_switch.c#49 integrate
.. //depot/projects/smpng/sys/kern/kern_synch.c#84 integrate
.. //depot/projects/smpng/sys/kern/subr_bus.c#42 integrate
.. //depot/projects/smpng/sys/kern/subr_kdb.c#7 integrate
.. //depot/projects/smpng/sys/kern/tty.c#51 integrate
.. //depot/projects/smpng/sys/kern/tty_pty.c#35 integrate
.. //depot/projects/smpng/sys/kern/uipc_domain.c#10 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket.c#59 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket2.c#37 integrate
.. //depot/projects/smpng/sys/kern/uipc_syscalls.c#60 integrate
.. //depot/projects/smpng/sys/kern/uipc_usrreq.c#41 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#86 integrate
.. //depot/projects/smpng/sys/modules/ipdivert/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/netgraph/device/Makefile#2 integrate
.. //depot/projects/smpng/sys/net/if.c#56 integrate
.. //depot/projects/smpng/sys/net/if_var.h#31 integrate
.. //depot/projects/smpng/sys/net/raw_cb.c#10 integrate
.. //depot/projects/smpng/sys/net/raw_usrreq.c#17 integrate
.. //depot/projects/smpng/sys/netatalk/ddp_pcb.c#4 integrate
.. //depot/projects/smpng/sys/netatm/atm_socket.c#12 integrate
.. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#14 integrate
.. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#12 integrate
.. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c#11 integrate
.. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#7 integrate
.. //depot/projects/smpng/sys/netgraph/ng_device.c#9 integrate
.. //depot/projects/smpng/sys/netgraph/ng_device.h#4 integrate
.. //depot/projects/smpng/sys/netinet/in.h#28 integrate
.. //depot/projects/smpng/sys/netinet/in_pcb.c#50 integrate
.. //depot/projects/smpng/sys/netinet/in_pcb.h#33 integrate
.. //depot/projects/smpng/sys/netinet/in_proto.c#17 integrate
.. //depot/projects/smpng/sys/netinet/in_var.h#12 integrate
.. //depot/projects/smpng/sys/netinet/ip_divert.c#39 integrate
.. //depot/projects/smpng/sys/netinet/ip_divert.h#2 integrate
.. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#12 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw2.c#43 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw_pfil.c#6 integrate
.. //depot/projects/smpng/sys/netinet/ip_input.c#60 integrate
.. //depot/projects/smpng/sys/netinet/ip_var.h#26 integrate
.. //depot/projects/smpng/sys/netinet/tcp_subr.c#56 integrate
.. //depot/projects/smpng/sys/netinet6/in6_pcb.c#35 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_input.c#37 integrate
.. //depot/projects/smpng/sys/netipx/ipx_pcb.c#12 integrate
.. //depot/projects/smpng/sys/netipx/ipx_usrreq.c#15 integrate
.. //depot/projects/smpng/sys/netnatm/natm.c#20 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#40 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#35 integrate
.. //depot/projects/smpng/sys/pc98/pc98/fd.c#38 integrate
.. //depot/projects/smpng/sys/pc98/pc98/sio.c#49 integrate
.. //depot/projects/smpng/sys/pci/if_de.c#21 integrate
.. //depot/projects/smpng/sys/pci/if_vr.c#31 integrate
.. //depot/projects/smpng/sys/security/mac_bsdextended/mac_bsdextended.c#13 integrate
.. //depot/projects/smpng/sys/security/mac_bsdextended/mac_bsdextended.h#4 integrate
.. //depot/projects/smpng/sys/sys/bufobj.h#1 branch
.. //depot/projects/smpng/sys/sys/proc.h#132 integrate
.. //depot/projects/smpng/sys/sys/protosw.h#12 integrate
.. //depot/projects/smpng/sys/sys/socketvar.h#41 integrate
.. //depot/projects/smpng/sys/sys/tty.h#18 integrate
.. //depot/projects/smpng/sys/sys/ttydefaults.h#5 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#49 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_alloc.c#30 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_balloc.c#13 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#34 integrate
.. //depot/projects/smpng/sys/ufs/ufs/dinode.h#7 integrate
.. //depot/projects/smpng/sys/vm/vm_fault.c#42 integrate
.. //depot/projects/smpng/sys/vm/vm_page.c#57 integrate
Differences ...
==== //depot/projects/smpng/sys/alpha/alpha/promcons.c#21 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/promcons.c,v 1.41 2004/09/17 11:02:53 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/promcons.c,v 1.43 2004/10/20 16:22:53 jhb Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -107,12 +107,7 @@
tp->t_dev = dev;
if ((tp->t_state & TS_ISOPEN) == 0) {
tp->t_state |= TS_CARR_ON;
- ttychars(tp);
- tp->t_iflag = TTYDEF_IFLAG;
- tp->t_oflag = TTYDEF_OFLAG;
- tp->t_cflag = TTYDEF_CFLAG|CLOCAL;
- tp->t_lflag = TTYDEF_LFLAG;
- tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED;
+ ttyconsolemode(tp, 0);
ttsetwater(tp);
setuptimeout = 1;
==== //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#32 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.49 2004/10/05 18:51:09 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.50 2004/10/14 10:43:47 phk Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1772,7 +1772,7 @@
name[1] = KERN_HOSTNAME;
mtx_lock(&Giant);
retval = userland_sysctl(td, name, 2, uap->buf, &len,
- 1, 0, 0, &bytes);
+ 1, 0, 0, &bytes, 0);
mtx_unlock(&Giant);
td->td_retval[0] = bytes;
return(retval);
==== //depot/projects/smpng/sys/alpha/tlsb/zs_tlsb.c#18 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/tlsb/zs_tlsb.c,v 1.48 2004/09/17 11:04:57 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/tlsb/zs_tlsb.c,v 1.49 2004/10/18 21:51:24 phk Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -283,12 +283,7 @@
tp = dev->si_tty;
if ((tp->t_state & TS_ISOPEN) == 0) {
tp->t_state |= TS_CARR_ON;
- ttychars(tp);
- tp->t_iflag = TTYDEF_IFLAG;
- tp->t_oflag = TTYDEF_OFLAG;
- tp->t_cflag = TTYDEF_CFLAG|CLOCAL;
- tp->t_lflag = TTYDEF_LFLAG;
- tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED;
+ ttyconsolemode(tp, 0);
ttsetwater(tp);
setuptimeout = 1;
} else if ((tp->t_state & TS_XCLUDE) && suser(td)) {
==== //depot/projects/smpng/sys/amd64/amd64/nexus.c#14 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.63 2004/08/24 19:22:54 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.64 2004/10/14 22:36:47 njl Exp $");
/*
* This code implements a `root nexus' for Intel Architecture
@@ -259,6 +259,8 @@
retval += bus_print_child_header(bus, child);
retval += nexus_print_all_resources(child);
+ if (device_get_flags(child))
+ retval += printf(" flags %#x", device_get_flags(child));
retval += printf(" on motherboard\n"); /* XXX "motherboard", ick */
return (retval);
==== //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#5 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.4 2004/09/23 21:57:47 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.5 2004/10/21 11:59:33 cognet Exp $");
/*
* MacPPC bus dma support routines
@@ -687,7 +687,7 @@
int resid;
struct iovec *iov;
- if (op == BUS_DMASYNC_POSTREAD)
+ if (op == BUS_DMASYNC_POSTWRITE)
return;
if (map->flags & DMAMAP_COHERENT)
return;
==== //depot/projects/smpng/sys/boot/common/help.common#16 (text+ko) ====
@@ -311,6 +311,18 @@
this option provides a hint as to the actual size of
system memory (which will be tested before use).
+ set hw.{acpi,pci}.host_start_mem=<value>
+
+ Sets the lowest address that the pci code will assign
+ when it doesn't have other information about the address
+ to assign (like from a pci bridge). This is only useful
+ in older systems without a pci bridge. Also, it only
+ impacts devices that the BIOS doesn't assign to, typically
+ CardBus bridges. The default <value> is 0x80000000, but
+ some systems need values like 0xf0000000, 0xfc000000 or
+ 0xfe000000 may be suitable for older systems (the older
+ the system, the higher the number typically should be).
+
set hw.pci.enable_io_modes=<value>
Enable PCI resources which are left off by some BIOSes
==== //depot/projects/smpng/sys/boot/common/loader.8#31 (text+ko) ====
@@ -22,9 +22,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.74 2004/10/01 00:15:13 ru Exp $
+.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.76 2004/10/15 06:44:13 ru Exp $
.\"
-.Dd October 1, 2004
+.Dd October 15, 2004
.Dt LOADER 8
.Os
.Sh NAME
@@ -429,6 +429,15 @@
respectively.
An invalid suffix will result in the variable being ignored by the
kernel.
+.It Va hw.pci.host_start_mem , hw.acpi.host_start_mem
+When not otherwise constrained, this limits the memory start
+address.
+The default is 0x80000000 and should be set to at least size of the
+memory and not conflict with other resources.
+Typically, only systems without PCI bridges need to set this variable
+since PCI bridges typically constrain the memory starting address
+(and the variable is only used when bridges do not constrain this
+address).
.It Va hw.pci.enable_io_modes
Enable PCI resources which are left off by some BIOSes or are not
enabled correctly by the device driver.
==== //depot/projects/smpng/sys/dev/aic7xxx/ahc_isa.c#3 (text+ko) ====
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_isa.c,v 1.4 2004/08/30 20:15:42 gibbs Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_isa.c,v 1.5 2004/10/15 23:39:52 gibbs Exp $");
#include <dev/aic7xxx/aic7xxx_osm.h>
@@ -137,11 +137,15 @@
int error;
int zero;
- error = ENODEV;
+ error = ENXIO;
zero = 0;
regs = NULL;
irq = NULL;
+ /* Skip probes for ISA PnP devices */
+ if (isa_get_logicalid(dev) != 0)
+ return (error);
+
regs = bus_alloc_resource_any(dev, SYS_RES_IOPORT, &zero, RF_ACTIVE);
if (regs == NULL) {
device_printf(dev, "No resources allocated.\n");
==== //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.c#21 (text+ko) ====
@@ -46,7 +46,7 @@
#include "aicasm/aicasm_insformat.h"
#else
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx.c,v 1.102 2004/08/17 00:14:30 gibbs Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx.c,v 1.103 2004/10/19 20:48:05 gibbs Exp $");
#include <dev/aic7xxx/aic7xxx_osm.h>
#include <dev/aic7xxx/aic7xxx_inline.h>
#include <dev/aic7xxx/aicasm/aicasm_insformat.h>
@@ -2828,11 +2828,17 @@
case MSG_TYPE_TARGET_MSGIN:
{
int msgdone;
- int msgout_request;
if (ahc->msgout_len == 0)
panic("Target MSGIN with no active message");
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0) {
+ ahc_print_devinfo(ahc, &devinfo);
+ printf("TARGET_MSG_IN");
+ }
+#endif
+
/*
* If we interrupted a mesgout session, the initiator
* will not know this until our first REQ. So, we
@@ -2840,24 +2846,47 @@
* first byte.
*/
if ((ahc_inb(ahc, SCSISIGI) & ATNI) != 0
- && ahc->msgout_index > 0)
- msgout_request = TRUE;
- else
- msgout_request = FALSE;
+ && ahc->msgout_index > 0) {
+
+ /*
+ * Change gears and see if this messages is
+ * of interest to us or should be passed back
+ * to the sequencer.
+ */
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0)
+ printf(" Honoring ATN Request.\n");
+#endif
+ ahc->msg_type = MSG_TYPE_TARGET_MSGOUT;
- if (msgout_request) {
+ /*
+ * Disable SCSI Programmed I/O during the
+ * phase change so as to avoid phantom REQs.
+ */
+ ahc_outb(ahc, SXFRCTL0,
+ ahc_inb(ahc, SXFRCTL0) & ~SPIOEN);
/*
- * Change gears and see if
- * this messages is of interest to
- * us or should be passed back to
- * the sequencer.
+ * Since SPIORDY asserts when ACK is asserted
+ * for P_MSGOUT, and SPIORDY's assertion triggered
+ * our entry into this routine, wait for ACK to
+ * *de-assert* before changing phases.
*/
- ahc->msg_type = MSG_TYPE_TARGET_MSGOUT;
+ while ((ahc_inb(ahc, SCSISIGI) & ACKI) != 0)
+ ;
+
ahc_outb(ahc, SCSISIGO, P_MESGOUT | BSYO);
+
+ /*
+ * All phase line changes require a bus
+ * settle delay before REQ is asserted.
+ * [SCSI SPI4 10.7.1]
+ */
+ ahc_flush_device_writes(ahc);
+ aic_delay(AHC_BUSSETTLE_DELAY);
+
ahc->msgin_index = 0;
- /* Dummy read to REQ for first byte */
- ahc_inb(ahc, SCSIDATL);
+ /* Enable SCSI Programmed I/O to REQ for first byte */
ahc_outb(ahc, SXFRCTL0,
ahc_inb(ahc, SXFRCTL0) | SPIOEN);
break;
@@ -2874,6 +2903,11 @@
/*
* Present the next byte on the bus.
*/
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0)
+ printf(" byte 0x%x\n",
+ ahc->msgout_buf[ahc->msgout_index]);
+#endif
ahc_outb(ahc, SXFRCTL0, ahc_inb(ahc, SXFRCTL0) | SPIOEN);
ahc_outb(ahc, SCSIDATL, ahc->msgout_buf[ahc->msgout_index++]);
break;
@@ -2883,6 +2917,12 @@
int lastbyte;
int msgdone;
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0) {
+ ahc_print_devinfo(ahc, &devinfo);
+ printf("TARGET_MSG_OUT");
+ }
+#endif
/*
* The initiator signals that this is
* the last byte by dropping ATN.
@@ -2896,6 +2936,13 @@
*/
ahc_outb(ahc, SXFRCTL0, ahc_inb(ahc, SXFRCTL0) & ~SPIOEN);
ahc->msgin_buf[ahc->msgin_index] = ahc_inb(ahc, SCSIDATL);
+
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0)
+ printf(" byte 0x%x\n",
+ ahc->msgin_buf[ahc->msgin_index]);
+#endif
+
msgdone = ahc_parse_msg(ahc, &devinfo);
if (msgdone == MSGLOOP_TERMINATED) {
/*
@@ -2921,7 +2968,33 @@
* to the Message in phase and send it.
*/
if (ahc->msgout_len != 0) {
+#ifdef AHC_DEBUG
+ if ((ahc_debug & AHC_SHOW_MESSAGES) != 0) {
+ ahc_print_devinfo(ahc, &devinfo);
+ printf(" preparing response.\n");
+ }
+#endif
ahc_outb(ahc, SCSISIGO, P_MESGIN | BSYO);
+
+ /*
+ * All phase line changes require a bus
+ * settle delay before REQ is asserted.
+ * [SCSI SPI4 10.7.1] When transitioning
+ * from an OUT to an IN phase, we must
+ * also wait a data release delay to allow
+ * the initiator time to release the data
+ * lines. [SCSI SPI4 10.12]
+ */
+ ahc_flush_device_writes(ahc);
+ aic_delay(AHC_BUSSETTLE_DELAY
+ + AHC_DATARELEASE_DELAY);
+
+ /*
+ * Enable SCSI Programmed I/O. This will
+ * immediately cause SPIORDY to assert,
+ * and the sequencer will call our message
+ * loop again.
+ */
ahc_outb(ahc, SXFRCTL0,
ahc_inb(ahc, SXFRCTL0) | SPIOEN);
ahc->msg_type = MSG_TYPE_TARGET_MSGIN;
@@ -7052,7 +7125,7 @@
active_scb = ahc_lookup_scb(ahc, active_scb_index);
if (active_scb != scb) {
if (ahc_other_scb_timeout(ahc, scb,
- active_scb) != 0)
+ active_scb) == 0)
goto bus_reset;
continue;
}
==== //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.h#12 (text+ko) ====
@@ -39,7 +39,7 @@
*
* $Id: //depot/aic7xxx/aic7xxx/aic7xxx.h#85 $
*
- * $FreeBSD: src/sys/dev/aic7xxx/aic7xxx.h,v 1.52 2004/08/18 16:31:56 gibbs Exp $
+ * $FreeBSD: src/sys/dev/aic7xxx/aic7xxx.h,v 1.53 2004/10/19 20:48:06 gibbs Exp $
*/
#ifndef _AIC7XXX_H_
@@ -181,6 +181,10 @@
/* Reset line assertion time in us */
#define AHC_BUSRESET_DELAY 25
+/* Phase change constants used in target mode. */
+#define AHC_BUSSETTLE_DELAY 400
+#define AHC_DATARELEASE_DELAY 400
+
/******************* Chip Characteristics/Operating Settings *****************/
/*
* Chip Type
==== //depot/projects/smpng/sys/dev/ata/ata-all.c#64 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.232 2004/10/13 15:16:35 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.233 2004/10/19 20:13:38 sos Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -306,6 +306,12 @@
}
}
+ ch->flags &= ~ATA_IMMEDIATE_MODE;
+ mtx_lock(&ch->state_mtx);
+ ch->state = ATA_IDLE;
+ mtx_unlock(&ch->state_mtx);
+ ch->locking(ch, ATA_LF_UNLOCK);
+
/* attach new devices */
if ((newdev = ~devices & ch->devices)) {
if ((newdev & (ATA_ATA_MASTER | ATA_ATAPI_MASTER)) &&
@@ -323,12 +329,6 @@
if (bootverbose)
ata_printf(ch, -1, "device config done ..\n");
- ch->flags &= ~ATA_IMMEDIATE_MODE;
- mtx_lock(&ch->state_mtx);
- ch->state = ATA_IDLE;
- mtx_unlock(&ch->state_mtx);
- ch->locking(ch, ATA_LF_UNLOCK);
-
ata_start(ch);
return 0;
}
@@ -337,19 +337,19 @@
ata_suspend(device_t dev)
{
struct ata_channel *ch;
- int gotit = 0;
if (!dev || !(ch = device_get_softc(dev)))
return ENXIO;
- while (!gotit) {
+ while (1) {
mtx_lock(&ch->state_mtx);
if (ch->state == ATA_IDLE) {
ch->state = ATA_ACTIVE;
- gotit = 1;
+ mtx_unlock(&ch->state_mtx);
+ break;
}
mtx_unlock(&ch->state_mtx);
- tsleep(&gotit, PRIBIO, "atasusp", hz/10);
+ tsleep(ch, PRIBIO, "atasusp", hz/10);
}
ch->locking(ch, ATA_LF_UNLOCK);
return 0;
==== //depot/projects/smpng/sys/dev/ata/ata-card.c#21 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-card.c,v 1.26 2004/10/06 19:46:07 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-card.c,v 1.27 2004/10/19 10:29:00 le Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -91,7 +91,7 @@
static int
ata_pccard_locknoop(struct ata_channel *ch, int type)
{
- return 1;
+ return ch->unit;
}
static void
==== //depot/projects/smpng/sys/dev/ata/ata-queue.c#22 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.37 2004/10/13 15:16:35 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.39 2004/10/20 10:11:05 sos Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -182,15 +182,13 @@
/* check for the right state */
mtx_lock(&ch->state_mtx);
if (ch->state == ATA_IDLE) {
+ ATA_DEBUG_RQ(request, "starting");
TAILQ_REMOVE(&ch->ata_queue, request, chain);
ch->running = request;
-
- ATA_DEBUG_RQ(request, "starting");
-
+ ch->state = ATA_ACTIVE;
if (!dumping)
callout_reset(&request->callout, request->timeout * hz,
(timeout_t*)ata_timeout, request);
-
if (ch->hw.begin_transaction(request) == ATA_OP_FINISHED) {
ch->running = NULL;
ch->state = ATA_IDLE;
@@ -200,8 +198,6 @@
ata_finish(request);
return;
}
- else
- ch->state = ATA_ACTIVE;
}
mtx_unlock(&ch->state_mtx);
}
@@ -242,14 +238,11 @@
/* if we had a timeout, reinit channel and deal with the falldown */
if (request->flags & ATA_R_TIMEOUT) {
- int error = ata_reinit(ch);
-
- /* if our device disappeared return as cleanup was done already */
- if (!request->device->param)
- return;
-
- /* if reinit succeeded and retries still permit, reinject request */
- if (!error && request->retries-- > 0) {
+ /*
+ * if reinit succeeds, retries still permit and device didn't
+ * get removed by the reinit, reinject request
+ */
+ if (ata_reinit(ch) && request->retries-- > 0 && request->device->param){
request->flags &= ~(ATA_R_TIMEOUT | ATA_R_DEBUG);
request->flags |= (ATA_R_IMMEDIATE | ATA_R_REQUEUE);
ATA_DEBUG_RQ(request, "completed reinject");
==== //depot/projects/smpng/sys/dev/bge/if_bge.c#47 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.75 2004/09/25 05:07:20 ps Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.76 2004/10/19 02:42:49 scottl Exp $");
/*
* Broadcom BCM570x family gigabit ethernet driver for FreeBSD.
@@ -1935,7 +1935,7 @@
* Create tag for RX mbufs.
*/
nseg = 32;
- error = bus_dma_tag_create(sc->bge_cdata.bge_parent_tag, ETHER_ALIGN,
+ error = bus_dma_tag_create(sc->bge_cdata.bge_parent_tag, 1,
0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL,
NULL, MCLBYTES * nseg, nseg, MCLBYTES, 0, NULL, NULL,
&sc->bge_cdata.bge_mtag);
@@ -2024,7 +2024,7 @@
*/
error = bus_dma_tag_create(sc->bge_cdata.bge_parent_tag,
- ETHER_ALIGN, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL,
+ 1, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL,
NULL, MCLBYTES * nseg, nseg, BGE_JLEN, 0, NULL, NULL,
&sc->bge_cdata.bge_mtag_jumbo);
==== //depot/projects/smpng/sys/dev/dcons/dcons_os.c#2 (text+ko) ====
@@ -31,7 +31,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/dcons/dcons_os.c,v 1.1 2004/10/13 05:38:42 simokawa Exp $
+ * $FreeBSD: src/sys/dev/dcons/dcons_os.c,v 1.3 2004/10/18 21:51:25 phk Exp $
*/
#include <sys/param.h>
@@ -294,12 +294,7 @@
s = spltty();
if ((tp->t_state & TS_ISOPEN) == 0) {
tp->t_state |= TS_CARR_ON;
- ttychars(tp);
- tp->t_iflag = TTYDEF_IFLAG;
- tp->t_oflag = TTYDEF_OFLAG;
- tp->t_cflag = TTYDEF_CFLAG|CLOCAL;
- tp->t_lflag = TTYDEF_LFLAG;
- tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED;
+ ttyconsolemode(tp, 0);
ttsetwater(tp);
} else if ((tp->t_state & TS_XCLUDE) && suser(td)) {
splx(s);
@@ -493,7 +488,9 @@
static int
dcons_drv_init(int stage)
{
+#ifdef __i386__
int addr, size;
+#endif
if (drv_init)
return(drv_init);
==== //depot/projects/smpng/sys/dev/digi/digi.c#27 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/digi/digi.c,v 1.56 2004/10/06 20:01:49 phk Exp $
+ * $FreeBSD: src/sys/dev/digi/digi.c,v 1.57 2004/10/18 21:51:25 phk Exp $
*/
/*-
@@ -85,9 +85,6 @@
fepcmd(port, cmd, (op2 << 8) | op1, ncmds)
#define fepcmd_w fepcmd
-
-static speed_t digidefaultrate = TTYDEF_SPEED;
-
struct con_bios {
struct con_bios *next;
u_char *bios;
@@ -589,19 +586,7 @@
bc->edelay = 100;
- /*
- * We don't use all the flags from <sys/ttydefaults.h> since
- * they are only relevant for logins. It's important to have
- * echo off initially so that the line doesn't start blathering
- * before the echo flag can be turned off.
- */
- tp->t_init_in.c_iflag = 0;
- tp->t_init_in.c_oflag = 0;
- tp->t_init_in.c_cflag = TTYDEF_CFLAG;
- tp->t_init_in.c_lflag = 0;
- termioschars(&tp->t_init_in);
- tp->t_init_in.c_ispeed = tp->t_init_in.c_ospeed = digidefaultrate;
- tp->t_init_out = tp->t_init_in;
+ ttyinitmode(tp, 0, 0);
port->send_ring = 1; /* Default action on signal RI */
ttycreate(tp, NULL, 0, MINOR_CALLOUT, "D%r%r", sc->res.unit, i);
}
==== //depot/projects/smpng/sys/dev/digi/digi.h#10 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/digi/digi.h,v 1.18 2004/10/06 20:01:49 phk Exp $
+ * $FreeBSD: src/sys/dev/digi/digi.h,v 1.19 2004/10/14 18:37:59 phk Exp $
*/
#define W(p) (*(u_int16_t *)(p))
@@ -163,7 +163,6 @@
#endif
struct digi_p *ports; /* pointer to array of port descriptors */
- struct tty *ttys; /* pointer to array of TTY structures */
volatile struct global_data *gdata;
u_char window; /* saved window */
int win_size;
==== //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#24 (text+ko) ====
@@ -24,7 +24,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/ed/if_ed_pccard.c,v 1.59 2004/07/21 20:38:12 imp Exp $
+ * $FreeBSD: src/sys/dev/ed/if_ed_pccard.c,v 1.60 2004/10/20 04:54:50 imp Exp $
*/
#include "opt_ed.h"
@@ -123,6 +123,7 @@
#define NE2000DVF_AX88190 0x0002 /* chip is ASIX AX88190 */
} ed_pccard_products[] = {
{ PCMCIA_CARD(ACCTON, EN2212, 0), 0},
+ { PCMCIA_CARD(ACCTON, EN2216, 0), 0},
{ PCMCIA_CARD(ALLIEDTELESIS, LA_PCM, 0), 0},
{ PCMCIA_CARD(AMBICOM, AMB8002T, 0), 0},
{ PCMCIA_CARD(BILLIONTON, LNT10TN, 0), 0},
==== //depot/projects/smpng/sys/dev/em/if_em.c#38 (text+ko) ====
@@ -31,7 +31,7 @@
***************************************************************************/
-/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.47 2004/10/09 07:27:03 scottl Exp $*/
+/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.50 2004/10/19 23:31:44 mux Exp $*/
#include <dev/em/if_em.h>
@@ -1339,6 +1339,8 @@
* Advance the Transmit Descriptor Tail (Tdt), this tells the E1000
* that this frame is available to transmit.
*/
+ bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map,
+ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
if (adapter->hw.mac_type == em_82547 &&
adapter->link_duplex == HALF_DUPLEX) {
em_82547_move_tail_locked(adapter);
@@ -2056,13 +2058,6 @@
goto fail_0;
}
- r = bus_dmamap_create(dma->dma_tag, BUS_DMA_NOWAIT, &dma->dma_map);
- if (r != 0) {
- printf("em%d: em_dma_malloc: bus_dmamap_create failed; "
- "error %u\n", adapter->unit, r);
- goto fail_1;
- }
-
r = bus_dmamem_alloc(dma->dma_tag, (void**) &dma->dma_vaddr,
BUS_DMA_NOWAIT, &dma->dma_map);
if (r != 0) {
@@ -2090,8 +2085,6 @@
bus_dmamap_unload(dma->dma_tag, dma->dma_map);
fail_2:
bus_dmamem_free(dma->dma_tag, dma->dma_vaddr, dma->dma_map);
-fail_1:
- bus_dmamap_destroy(dma->dma_tag, dma->dma_map);
bus_dma_tag_destroy(dma->dma_tag);
fail_0:
dma->dma_map = NULL;
@@ -2104,7 +2097,6 @@
{
bus_dmamap_unload(dma->dma_tag, dma->dma_map);
bus_dmamem_free(dma->dma_tag, dma->dma_vaddr, dma->dma_map);
- bus_dmamap_destroy(dma->dma_tag, dma->dma_map);
bus_dma_tag_destroy(dma->dma_tag);
}
@@ -2145,7 +2137,7 @@
* Setup DMA descriptor areas.
*/
if (bus_dma_tag_create(NULL, /* parent */
- PAGE_SIZE, 0, /* alignment, bounds */
+ 1, 0, /* alignment, bounds */
BUS_SPACE_MAXADDR, /* lowaddr */
BUS_SPACE_MAXADDR, /* highaddr */
NULL, NULL, /* filter, filterarg */
@@ -2400,6 +2392,8 @@
tx_buffer = &adapter->tx_buffer_area[i];
tx_desc = &adapter->tx_desc_base[i];
+ bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map,
+ BUS_DMASYNC_POSTREAD);
while (tx_desc->upper.fields.status & E1000_TXD_STAT_DD) {
tx_desc->upper.data = 0;
@@ -2407,8 +2401,6 @@
if (tx_buffer->m_head) {
ifp->if_opackets++;
- bus_dmamap_sync(adapter->txtag, tx_buffer->map,
- BUS_DMASYNC_POSTWRITE);
bus_dmamap_unload(adapter->txtag, tx_buffer->map);
bus_dmamap_destroy(adapter->txtag, tx_buffer->map);
@@ -2422,6 +2414,8 @@
tx_buffer = &adapter->tx_buffer_area[i];
tx_desc = &adapter->tx_desc_base[i];
}
+ bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map,
+ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
adapter->oldest_used_tx_desc = i;
@@ -2523,7 +2517,7 @@
sizeof(struct em_buffer) * adapter->num_rx_desc);
error = bus_dma_tag_create(NULL, /* parent */
- PAGE_SIZE, 0, /* alignment, bounds */
+ 1, 0, /* alignment, bounds */
BUS_SPACE_MAXADDR, /* lowaddr */
BUS_SPACE_MAXADDR, /* highaddr */
NULL, NULL, /* filter, filterarg */
@@ -2561,6 +2555,8 @@
return(error);
}
}
+ bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map,
+ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
return(0);
@@ -2746,6 +2742,8 @@
ifp = &adapter->interface_data.ac_if;
i = adapter->next_rx_desc_to_check;
current_desc = &adapter->rx_desc_base[i];
+ bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map,
+ BUS_DMASYNC_POSTREAD);
if (!((current_desc->status) & E1000_RXD_STAT_DD)) {
#ifdef DBG_STATS
@@ -2893,6 +2891,8 @@
} else
current_desc++;
}
+ bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map,
+ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
adapter->next_rx_desc_to_check = i;
return;
}
==== //depot/projects/smpng/sys/dev/ex/if_ex.c#14 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ex/if_ex.c,v 1.53 2004/08/13 23:06:55 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ex/if_ex.c,v 1.54 2004/10/17 21:44:11 glebius Exp $");
/*
* Intel EtherExpress Pro/10, Pro/10+ Ethernet driver
@@ -697,7 +697,7 @@
ipkt->m_len = MHLEN;
while (pkt_len > 0) {
- if (pkt_len > MINCLSIZE) {
+ if (pkt_len >= MINCLSIZE) {
MCLGET(m, M_DONTWAIT);
if (m->m_flags & M_EXT) {
m->m_len = MCLBYTES;
==== //depot/projects/smpng/sys/dev/fdc/fdc.c#12 (text+ko) ====
@@ -51,7 +51,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.296 2004/10/10 23:39:59 peadar Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.298 2004/10/15 04:54:16 njl Exp $");
#include "opt_fdc.h"
@@ -1682,7 +1682,6 @@
device_t
fdc_add_child(device_t dev, const char *name, int unit)
{
- int flags;
struct fdc_ivars *ivar;
device_t child;
@@ -1697,8 +1696,6 @@
device_set_ivars(child, ivar);
ivar->fdunit = unit;
ivar->fdtype = FDT_NONE;
- if (resource_int_value(name, unit, "flags", &flags) == 0)
- device_set_flags(child, flags);
if (resource_disabled(name, unit))
device_disable(child);
return (child);
==== //depot/projects/smpng/sys/dev/hifn/hifn7751.c#18 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/hifn/hifn7751.c,v 1.28 2004/07/04 16:11:01 stefanf Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/hifn/hifn7751.c,v 1.30 2004/10/15 03:54:56 sam Exp $");
/*
* Driver for various Hifn encryption processors.
@@ -465,10 +465,9 @@
rbase = 'M';
rseg /= 1024;
}
- device_printf(sc->sc_dev, "%s, rev %u, %d%cB %cram, %u sessions\n",
+ device_printf(sc->sc_dev, "%s, rev %u, %d%cB %cram\n",
hifn_partname(sc), rev,
- rseg, rbase, sc->sc_drammodel ? 'd' : 's',
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list