From owner-p4-projects@FreeBSD.ORG Thu Dec 13 22:13:48 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93F2016A473; Thu, 13 Dec 2007 22:13:47 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4580B16A418 for ; Thu, 13 Dec 2007 22:13:47 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 283E713C468 for ; Thu, 13 Dec 2007 22:13:47 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBDMDllu001601 for ; Thu, 13 Dec 2007 22:13:47 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBDMDkjv001598 for perforce@freebsd.org; Thu, 13 Dec 2007 22:13:46 GMT (envelope-from jb@freebsd.org) Date: Thu, 13 Dec 2007 22:13:46 GMT Message-Id: <200712132213.lBDMDkjv001598@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 130814 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Dec 2007 22:13:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=130814 Change 130814 by jb@jb_freebsd1 on 2007/12/13 22:13:45 Another day, another IFC. Affected files ... .. //depot/projects/dtrace/ports/Mk/bsd.emacs.mk#8 integrate .. //depot/projects/dtrace/src/etc/rc.d/ldconfig#6 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-all.h#8 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#23 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-dma.c#7 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-lowlevel.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/sound/pci/hda/hdac.c#16 integrate .. //depot/projects/dtrace/src/tools/tools/ath/athdebug/athdebug.c#5 integrate .. //depot/projects/dtrace/src/tools/tools/ath/athstats/Makefile#6 integrate .. //depot/projects/dtrace/src/tools/tools/ath/athstats/athstats.c#7 integrate .. //depot/projects/dtrace/src/tools/tools/ath/athstats/main.c#4 integrate .. //depot/projects/dtrace/src/tools/tools/ath/athstats/statfoo.c#4 integrate .. //depot/projects/dtrace/src/usr.bin/vmstat/Makefile#4 integrate .. //depot/projects/dtrace/src/usr.bin/vmstat/vmstat.8#7 integrate .. //depot/projects/dtrace/src/usr.bin/vmstat/vmstat.c#7 integrate Differences ... ==== //depot/projects/dtrace/ports/Mk/bsd.emacs.mk#8 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: ports/Mk/bsd.emacs.mk,v 1.69 2007/10/14 10:09:47 vd Exp $ +# $FreeBSD: ports/Mk/bsd.emacs.mk,v 1.70 2007/12/13 19:25:09 anray Exp $ # # bsd.emacs.mk - 19990829 Shigeyuki Fukushima. # @@ -117,7 +117,7 @@ # XEmacs-21.x .elif (${EMACS_PORT_NAME} == "xemacs21") EMACS_NAME= xemacs -EMACS_VER= 21.4.20 +EMACS_VER= 21.4.21 EMACS_MAJOR_VER= 21 EMACS_LIBDIR?= lib/${EMACS_NAME} EMACS_LIBDIR_WITH_VER?= lib/${EMACS_NAME}-${EMACS_VER} @@ -134,7 +134,7 @@ # XEmacs-21.x with Mule .elif (${EMACS_PORT_NAME} == "xemacs21-mule") EMACS_NAME= xemacs -EMACS_VER= 21.4.20 +EMACS_VER= 21.4.21 EMACS_MAJOR_VER= 21 EMACS_LIBDIR?= lib/${EMACS_NAME} EMACS_LIBDIR_WITH_VER?= lib/${EMACS_NAME}-${EMACS_VER} ==== //depot/projects/dtrace/src/etc/rc.d/ldconfig#6 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/ldconfig,v 1.18 2007/12/08 07:20:22 dougb Exp $ +# $FreeBSD: src/etc/rc.d/ldconfig,v 1.19 2007/12/13 00:51:01 jhb Exp $ # # PROVIDE: ldconfig @@ -49,8 +49,14 @@ fi fi done - echo '32-bit compatibility ldconfig path:' ${ldconfig32_paths} - ${ldconfig} -32 -m ${_ins} ${ldconfig32_paths} + _LDC="" + for i in ${ldconfig32_paths}; do + if [ -r "${i}" ]; then + _LDC="${_LDC} ${i}" + fi + done + echo '32-bit compatibility ldconfig path:' ${_LDC} + ${ldconfig} -32 -m ${_ins} ${_LDC} ;; esac ==== //depot/projects/dtrace/src/sys/dev/ata/ata-all.h#8 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.125 2007/11/18 14:44:52 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.126 2007/12/13 11:47:36 sos Exp $ */ /* ATA register defines */ @@ -464,6 +464,8 @@ int (*begin_transaction)(struct ata_request *request); int (*end_transaction)(struct ata_request *request); int (*command)(struct ata_request *request); + void (*tf_read)(struct ata_request *request); + void (*tf_write)(struct ata_request *request); }; /* structure holding resources for an ATA channel */ ==== //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#23 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.210 2007/12/07 13:14:31 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.211 2007/12/13 11:47:36 sos Exp $"); #include "opt_ata.h" #include @@ -99,7 +99,7 @@ static void ata_intel_sata_setmode(device_t dev, int mode); static int ata_intel_31244_allocate(device_t dev); static int ata_intel_31244_status(device_t dev); -static int ata_intel_31244_command(struct ata_request *request); +static void ata_intel_31244_tf_write(struct ata_request *request); static void ata_intel_31244_reset(device_t dev); static int ata_ite_chipinit(device_t dev); static void ata_ite_setmode(device_t dev, int mode); @@ -152,6 +152,8 @@ static void ata_promise_next_hpkt(struct ata_pci_controller *ctlr); static int ata_serverworks_chipinit(device_t dev); static int ata_serverworks_allocate(device_t dev); +static void ata_serverworks_tf_read(struct ata_request *request); +static void ata_serverworks_tf_write(struct ata_request *request); static void ata_serverworks_setmode(device_t dev, int mode); static int ata_sii_chipinit(device_t dev); static int ata_cmd_allocate(device_t dev); @@ -2093,7 +2095,7 @@ ch->flags |= ATA_NO_SLAVE; ata_pci_hw(dev); ch->hw.status = ata_intel_31244_status; - ch->hw.command = ata_intel_31244_command; + ch->hw.tf_write = ata_intel_31244_tf_write; /* enable PHY state change interrupt */ ATA_OUTL(ctlr->r_res2, 0x4, @@ -2111,32 +2113,55 @@ return ata_pci_status(dev); } -static int -ata_intel_31244_command(struct ata_request *request) +static void +ata_intel_31244_tf_write(struct ata_request *request) { struct ata_channel *ch = device_get_softc(device_get_parent(request->dev)); struct ata_device *atadev = device_get_softc(request->dev); - u_int64_t lba; - if (!(atadev->flags & ATA_D_48BIT_ACTIVE)) - return (ata_generic_command(request)); - - lba = request->u.ata.lba; - ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_D_LBA | atadev->unit); - /* enable interrupt */ - ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_4BIT); - ATA_IDX_OUTW(ch, ATA_FEATURE, request->u.ata.feature); - ATA_IDX_OUTW(ch, ATA_COUNT, request->u.ata.count); - ATA_IDX_OUTW(ch, ATA_SECTOR, ((lba >> 16) & 0xff00) | (lba & 0x00ff)); - ATA_IDX_OUTW(ch, ATA_CYL_LSB, ((lba >> 24) & 0xff00) | - ((lba >> 8) & 0x00ff)); - ATA_IDX_OUTW(ch, ATA_CYL_MSB, ((lba >> 32) & 0xff00) | - ((lba >> 16) & 0x00ff)); - - /* issue command to controller */ - ATA_IDX_OUTB(ch, ATA_COMMAND, request->u.ata.command); - - return 0; + if (atadev->flags & ATA_D_48BIT_ACTIVE) { + ATA_IDX_OUTW(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTW(ch, ATA_COUNT, request->u.ata.count); + ATA_IDX_OUTW(ch, ATA_SECTOR, ((request->u.ata.lba >> 16) & 0xff00) | + (request->u.ata.lba & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_CYL_LSB, ((request->u.ata.lba >> 24) & 0xff00) | + ((request->u.ata.lba >> 8) & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_CYL_MSB, ((request->u.ata.lba >> 32) & 0xff00) | + ((request->u.ata.lba >> 16) & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_DRIVE, ATA_D_LBA | atadev->unit); + } + else { + ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count); + if (atadev->flags & ATA_D_USE_CHS) { + int heads, sectors; + + if (atadev->param.atavalid & ATA_FLAG_54_58) { + heads = atadev->param.current_heads; + sectors = atadev->param.current_sectors; + } + else { + heads = atadev->param.heads; + sectors = atadev->param.sectors; + } + ATA_IDX_OUTB(ch, ATA_SECTOR, (request->u.ata.lba % sectors)+1); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, + (request->u.ata.lba / (sectors * heads))); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, + (request->u.ata.lba / (sectors * heads)) >> 8); + ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | atadev->unit | + (((request->u.ata.lba% (sectors * heads)) / + sectors) & 0xf)); + } + else { + ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); + ATA_IDX_OUTB(ch, ATA_DRIVE, + ATA_D_IBM | ATA_D_LBA | atadev->unit | + ((request->u.ata.lba >> 24) & 0x0f)); + } + } } static void @@ -2849,8 +2874,12 @@ /* note start and stop are not used here */ ch->dma->setprd = ata_marvell_edma_dmasetprd; + /* if 64bit support present adjust max address used */ if (ATA_INL(ctlr->r_res1, 0x00d00) & 0x00000004) ch->dma->max_address = BUS_SPACE_MAXADDR; + + /* chip does not reliably do 64K DMA transfers */ + ch->dma->max_iosize = 126 * DEV_BSIZE; } } @@ -4248,10 +4277,97 @@ ch->flags |= ATA_NO_SLAVE; ata_pci_hw(dev); + ch->hw.tf_read = ata_serverworks_tf_read; + ch->hw.tf_write = ata_serverworks_tf_write; + + /* chip does not reliably do 64K DMA transfers */ + if (ch->dma) + ch->dma->max_iosize = 126 * DEV_BSIZE; + return 0; } static void +ata_serverworks_tf_read(struct ata_request *request) +{ + struct ata_channel *ch = device_get_softc(device_get_parent(request->dev)); + struct ata_device *atadev = device_get_softc(request->dev); + + if (atadev->flags & ATA_D_48BIT_ACTIVE) { + u_int16_t temp; + + request->u.ata.count = ATA_IDX_INW(ch, ATA_COUNT); + temp = ATA_IDX_INW(ch, ATA_SECTOR); + request->u.ata.lba = (u_int64_t)(temp & 0x00ff) | + ((u_int64_t)(temp & 0xff00) << 24); + temp = ATA_IDX_INW(ch, ATA_CYL_LSB); + request->u.ata.lba |= ((u_int64_t)(temp & 0x00ff) << 8) | + ((u_int64_t)(temp & 0xff00) << 32); + temp = ATA_IDX_INW(ch, ATA_CYL_MSB); + request->u.ata.lba |= ((u_int64_t)(temp & 0x00ff) << 16) | + ((u_int64_t)(temp & 0xff00) << 40); + } + else { + request->u.ata.count = ATA_IDX_INW(ch, ATA_COUNT) & 0x00ff; + request->u.ata.lba = (ATA_IDX_INW(ch, ATA_SECTOR) & 0x00ff) | + ((ATA_IDX_INW(ch, ATA_CYL_LSB) & 0x00ff) << 8) | + ((ATA_IDX_INW(ch, ATA_CYL_MSB) & 0x00ff) << 16) | + ((ATA_IDX_INW(ch, ATA_DRIVE) & 0xf) << 24); + } +} + +static void +ata_serverworks_tf_write(struct ata_request *request) +{ + struct ata_channel *ch = device_get_softc(device_get_parent(request->dev)); + struct ata_device *atadev = device_get_softc(request->dev); + + if (atadev->flags & ATA_D_48BIT_ACTIVE) { + ATA_IDX_OUTW(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTW(ch, ATA_COUNT, request->u.ata.count); + ATA_IDX_OUTW(ch, ATA_SECTOR, ((request->u.ata.lba >> 16) & 0xff00) | + (request->u.ata.lba & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_CYL_LSB, ((request->u.ata.lba >> 24) & 0xff00) | + ((request->u.ata.lba >> 8) & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_CYL_MSB, ((request->u.ata.lba >> 32) & 0xff00) | + ((request->u.ata.lba >> 16) & 0x00ff)); + ATA_IDX_OUTW(ch, ATA_DRIVE, ATA_D_LBA | atadev->unit); + } + else { + ATA_IDX_OUTW(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTW(ch, ATA_COUNT, request->u.ata.count); + if (atadev->flags & ATA_D_USE_CHS) { + int heads, sectors; + + if (atadev->param.atavalid & ATA_FLAG_54_58) { + heads = atadev->param.current_heads; + sectors = atadev->param.current_sectors; + } + else { + heads = atadev->param.heads; + sectors = atadev->param.sectors; + } + ATA_IDX_OUTW(ch, ATA_SECTOR, (request->u.ata.lba % sectors)+1); + ATA_IDX_OUTW(ch, ATA_CYL_LSB, + (request->u.ata.lba / (sectors * heads))); + ATA_IDX_OUTW(ch, ATA_CYL_MSB, + (request->u.ata.lba / (sectors * heads)) >> 8); + ATA_IDX_OUTW(ch, ATA_DRIVE, ATA_D_IBM | atadev->unit | + (((request->u.ata.lba% (sectors * heads)) / + sectors) & 0xf)); + } + else { + ATA_IDX_OUTW(ch, ATA_SECTOR, request->u.ata.lba); + ATA_IDX_OUTW(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); + ATA_IDX_OUTW(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); + ATA_IDX_OUTW(ch, ATA_DRIVE, + ATA_D_IBM | ATA_D_LBA | atadev->unit | + ((request->u.ata.lba >> 24) & 0x0f)); + } + } +} + +static void ata_serverworks_setmode(device_t dev, int mode) { device_t gparent = GRANDPARENT(dev); @@ -4562,7 +4678,7 @@ if ((ctlr->chip->cfg2 & SIIBUG) && ch->dma) { /* work around errata in early chips */ - ch->dma->boundary = 16 * DEV_BSIZE; + ch->dma->boundary = 8192; ch->dma->segsize = 15 * DEV_BSIZE; } ==== //depot/projects/dtrace/src/sys/dev/ata/ata-dma.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.149 2007/11/20 04:52:19 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.150 2007/12/13 11:47:36 sos Exp $"); #include #include @@ -75,7 +75,7 @@ ch->dma->load = ata_dmaload; ch->dma->unload = ata_dmaunload; ch->dma->alignment = 2; - ch->dma->boundary = 128 * DEV_BSIZE; + ch->dma->boundary = 65536; ch->dma->segsize = 128 * DEV_BSIZE; ch->dma->max_iosize = 128 * DEV_BSIZE; ch->dma->max_address = BUS_SPACE_MAXADDR_32BIT; ==== //depot/projects/dtrace/src/sys/dev/ata/ata-lowlevel.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.79 2007/04/06 16:18:59 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.80 2007/12/13 11:47:36 sos Exp $"); #include "opt_ata.h" #include @@ -50,6 +50,8 @@ static int ata_wait(struct ata_channel *ch, struct ata_device *, u_int8_t); static void ata_pio_read(struct ata_request *, int); static void ata_pio_write(struct ata_request *, int); +static void ata_tf_read(struct ata_request *); +static void ata_tf_write(struct ata_request *); /* * low level ATA functions @@ -63,6 +65,8 @@ ch->hw.end_transaction = ata_end_transaction; ch->hw.status = ata_generic_status; ch->hw.command = ata_generic_command; + ch->hw.tf_read = ata_tf_read; + ch->hw.tf_write = ata_tf_write; } /* must be called with ATA channel locked and state_mtx held */ @@ -244,28 +248,7 @@ /* on control commands read back registers to the request struct */ if (request->flags & ATA_R_CONTROL) { - if (atadev->flags & ATA_D_48BIT_ACTIVE) { - ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_4BIT | ATA_A_HOB); - request->u.ata.count = (ATA_IDX_INB(ch, ATA_COUNT) << 8); - request->u.ata.lba = - ((u_int64_t)(ATA_IDX_INB(ch, ATA_SECTOR)) << 24) | - ((u_int64_t)(ATA_IDX_INB(ch, ATA_CYL_LSB)) << 32) | - ((u_int64_t)(ATA_IDX_INB(ch, ATA_CYL_MSB)) << 40); - - ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_4BIT); - request->u.ata.count |= ATA_IDX_INB(ch, ATA_COUNT); - request->u.ata.lba |= - (ATA_IDX_INB(ch, ATA_SECTOR) | - (ATA_IDX_INB(ch, ATA_CYL_LSB) << 8) | - (ATA_IDX_INB(ch, ATA_CYL_MSB) << 16)); - } - else { - request->u.ata.count = ATA_IDX_INB(ch, ATA_COUNT); - request->u.ata.lba = ATA_IDX_INB(ch, ATA_SECTOR) | - (ATA_IDX_INB(ch, ATA_CYL_LSB) << 8) | - (ATA_IDX_INB(ch, ATA_CYL_MSB) << 16) | - ((ATA_IDX_INB(ch, ATA_DRIVE) & 0xf) << 24); - } + ch->hw.tf_read(request); } /* if we got an error we are done with the HW */ @@ -734,57 +717,96 @@ ATA_PROTO_ATAPI_12 ? 6 : 8); } else { - if (atadev->flags & ATA_D_48BIT_ACTIVE) { - ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature >> 8); - ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature); - ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count >> 8); - ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count); - ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba >> 24); - ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 32); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 40); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); - ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_LBA | atadev->unit); - } - else { - ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature); - ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count); - if (atadev->flags & ATA_D_USE_CHS) { - int heads, sectors; + ch->hw.tf_write(request); + + /* issue command to controller */ + ATA_IDX_OUTB(ch, ATA_COMMAND, request->u.ata.command); + } + return 0; +} + +static void +ata_tf_read(struct ata_request *request) +{ + struct ata_channel *ch = device_get_softc(device_get_parent(request->dev)); + struct ata_device *atadev = device_get_softc(request->dev); + + if (atadev->flags & ATA_D_48BIT_ACTIVE) { + ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_4BIT | ATA_A_HOB); + request->u.ata.count = (ATA_IDX_INB(ch, ATA_COUNT) << 8); + request->u.ata.lba = + ((u_int64_t)(ATA_IDX_INB(ch, ATA_SECTOR)) << 24) | + ((u_int64_t)(ATA_IDX_INB(ch, ATA_CYL_LSB)) << 32) | + ((u_int64_t)(ATA_IDX_INB(ch, ATA_CYL_MSB)) << 40); + + ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_4BIT); + request->u.ata.count |= ATA_IDX_INB(ch, ATA_COUNT); + request->u.ata.lba |= + (ATA_IDX_INB(ch, ATA_SECTOR) | + (ATA_IDX_INB(ch, ATA_CYL_LSB) << 8) | + (ATA_IDX_INB(ch, ATA_CYL_MSB) << 16)); + } + else { + request->u.ata.count = ATA_IDX_INB(ch, ATA_COUNT); + request->u.ata.lba = ATA_IDX_INB(ch, ATA_SECTOR) | + (ATA_IDX_INB(ch, ATA_CYL_LSB) << 8) | + (ATA_IDX_INB(ch, ATA_CYL_MSB) << 16) | + ((ATA_IDX_INB(ch, ATA_DRIVE) & 0xf) << 24); + } +} + +static void +ata_tf_write(struct ata_request *request) +{ + struct ata_channel *ch = device_get_softc(device_get_parent(request->dev)); + struct ata_device *atadev = device_get_softc(request->dev); + + if (atadev->flags & ATA_D_48BIT_ACTIVE) { + ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature >> 8); + ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count >> 8); + ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count); + ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba >> 24); + ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 32); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 40); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); + ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_LBA | atadev->unit); + } + else { + ATA_IDX_OUTB(ch, ATA_FEATURE, request->u.ata.feature); + ATA_IDX_OUTB(ch, ATA_COUNT, request->u.ata.count); + if (atadev->flags & ATA_D_USE_CHS) { + int heads, sectors; - if (atadev->param.atavalid & ATA_FLAG_54_58) { - heads = atadev->param.current_heads; - sectors = atadev->param.current_sectors; - } - else { - heads = atadev->param.heads; - sectors = atadev->param.sectors; - } - ATA_IDX_OUTB(ch, ATA_SECTOR, (request->u.ata.lba % sectors)+1); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, - (request->u.ata.lba / (sectors * heads))); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, - (request->u.ata.lba / (sectors * heads)) >> 8); - ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | atadev->unit | - (((request->u.ata.lba% (sectors * heads)) / - sectors) & 0xf)); + if (atadev->param.atavalid & ATA_FLAG_54_58) { + heads = atadev->param.current_heads; + sectors = atadev->param.current_sectors; } else { - ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); - ATA_IDX_OUTB(ch, ATA_DRIVE, - ATA_D_IBM | ATA_D_LBA | atadev->unit | - ((request->u.ata.lba >> 24) & 0x0f)); + heads = atadev->param.heads; + sectors = atadev->param.sectors; } + + ATA_IDX_OUTB(ch, ATA_SECTOR, (request->u.ata.lba % sectors)+1); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, + (request->u.ata.lba / (sectors * heads))); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, + (request->u.ata.lba / (sectors * heads)) >> 8); + ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | atadev->unit | + (((request->u.ata.lba% (sectors * heads)) / + sectors) & 0xf)); } - - /* issue command to controller */ - ATA_IDX_OUTB(ch, ATA_COMMAND, request->u.ata.command); + else { + ATA_IDX_OUTB(ch, ATA_SECTOR, request->u.ata.lba); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->u.ata.lba >> 8); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->u.ata.lba >> 16); + ATA_IDX_OUTB(ch, ATA_DRIVE, + ATA_D_IBM | ATA_D_LBA | atadev->unit | + ((request->u.ata.lba >> 24) & 0x0f)); + } } - - return 0; } static void ==== //depot/projects/dtrace/src/sys/dev/sound/pci/hda/hdac.c#16 (text+ko) ==== @@ -84,7 +84,7 @@ #define HDA_DRV_TEST_REV "20071129_0050" #define HDA_WIDGET_PARSER_REV 1 -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/hda/hdac.c,v 1.49 2007/12/02 16:38:28 ariff Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/hda/hdac.c,v 1.51 2007/12/13 15:48:45 ariff Exp $"); #define HDA_BOOTVERBOSE(stmt) do { \ if (bootverbose != 0 || snd_verbose > 3) { \ @@ -179,6 +179,7 @@ #define HP_XW4300_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x3013) #define HP_3010_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x3010) #define HP_DV5000_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x30a5) +#define HP_DC7700S_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x2801) #define HP_DC7700_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0x2802) #define HP_ALL_SUBVENDOR HDA_MODEL_CONSTRUCT(HP, 0xffff) /* What is wrong with XN 2563 anyway? (Got the picture ?) */ @@ -2168,6 +2169,18 @@ default: break; } + } else if (id == HDA_CODEC_ALC268 && + HDA_DEV_MATCH(ACER_ALL_SUBVENDOR, sc->pci_subvendor)) { + switch (nid) { + case 28: + config &= ~(HDA_CONFIG_DEFAULTCONF_DEVICE_MASK | + HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK); + config |= (HDA_CONFIG_DEFAULTCONF_DEVICE_CD | + HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_FIXED); + break; + default: + break; + } } HDA_BOOTVERBOSE( @@ -4292,7 +4305,18 @@ } break; case HDA_CODEC_ALC262: - if (subvendor == HP_DC7700_SUBVENDOR) { + if (subvendor == HP_DC7700S_SUBVENDOR) { + ctl = hdac_audio_ctl_amp_get(devinfo, 21, 0, 1); + if (ctl != NULL && ctl->widget != NULL) { + ctl->ossmask = SOUND_MASK_PHONEOUT; + ctl->widget->ctlflags |= SOUND_MASK_PHONEOUT; + } + ctl = hdac_audio_ctl_amp_get(devinfo, 22, 0, 1); + if (ctl != NULL && ctl->widget != NULL) { + ctl->ossmask = SOUND_MASK_SPEAKER; + ctl->widget->ctlflags |= SOUND_MASK_SPEAKER; + } + } else if (subvendor == HP_DC7700_SUBVENDOR) { ctl = hdac_audio_ctl_amp_get(devinfo, 22, 0, 1); if (ctl != NULL && ctl->widget != NULL) { ctl->ossmask = SOUND_MASK_SPEAKER; ==== //depot/projects/dtrace/src/tools/tools/ath/athdebug/athdebug.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/tools/tools/ath/athdebug/athdebug.c,v 1.3 2007/12/04 05:52:58 sam Exp $ + * $FreeBSD: src/tools/tools/ath/athdebug/athdebug.c,v 1.4 2007/12/13 02:01:01 sam Exp $ */ /* @@ -67,6 +67,7 @@ ATH_DEBUG_LED = 0x00100000, /* led management */ ATH_DEBUG_FF = 0x00200000, /* fast frames */ ATH_DEBUG_DFS = 0x00400000, /* DFS processing */ + ATH_DEBUG_TDMA = 0x00800000, /* TDMA processing */ ATH_DEBUG_FATAL = 0x80000000, /* fatal errors */ ATH_DEBUG_ANY = 0xffffffff }; @@ -95,6 +96,7 @@ { "led", ATH_DEBUG_LED }, { "ff", ATH_DEBUG_FF }, { "dfs", ATH_DEBUG_DFS }, + { "tdma", ATH_DEBUG_TDMA }, { "fatal", ATH_DEBUG_FATAL }, }; @@ -135,7 +137,7 @@ int main(int argc, char *argv[]) { - const char *ifname = "ath0"; + const char *ifname; const char *cp, *tp; const char *sep; int c, op, i; @@ -143,6 +145,9 @@ size_t debuglen; char oid[256]; + ifname = getenv("ATH"); + if (ifname == NULL) + ifname = "ath0"; progname = argv[0]; if (argc > 1) { if (strcmp(argv[1], "-i") == 0) { ==== //depot/projects/dtrace/src/tools/tools/ath/athstats/Makefile#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/tools/tools/ath/athstats/Makefile,v 1.4 2007/02/02 02:39:56 sam Exp $ +# $FreeBSD: src/tools/tools/ath/athstats/Makefile,v 1.5 2007/12/13 01:39:30 sam Exp $ PROG= athstats BINDIR= /usr/local/bin @@ -9,9 +9,15 @@ .include CFLAGS+= -I. -CLEANFILES+= opt_ah.h +CLEANFILES+= opt_ah.h ah_osdep.h + +CFLAGS+=-I../../../../sys/contrib/dev/ath +CFLAGS+=-I../../../../sys/net80211 +CFLAGS+=-I../../../../sys/dev/ath -athstats.o: opt_ah.h +athstats.o: opt_ah.h ah_osdep.h opt_ah.h: touch opt_ah.h +ah_osdep.h: + touch ah_osdep.h ==== //depot/projects/dtrace/src/tools/tools/ath/athstats/athstats.c#7 (text+ko) ==== @@ -26,7 +26,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/tools/tools/ath/athstats/athstats.c,v 1.6 2007/12/04 05:52:58 sam Exp $ + * $FreeBSD: src/tools/tools/ath/athstats/athstats.c,v 1.7 2007/12/13 01:39:30 sam Exp $ */ /* @@ -41,256 +41,258 @@ #include #include +#include #include #include #include #include -#include "../../../../sys/contrib/dev/ath/ah_desc.h" -#include "../../../../sys/net80211/ieee80211_ioctl.h" -#include "../../../../sys/net80211/ieee80211_radiotap.h" -#include "../../../../sys/dev/ath/if_athioctl.h" +#include "ah.h" +#include "ah_desc.h" +#include "ieee80211_ioctl.h" +#include "ieee80211_radiotap.h" +#include "if_athioctl.h" #include "athstats.h" #define NOTPRESENT { 0, "", "" } +#define AFTER(prev) ((prev)+1) + static const struct fmt athstats[] = { #define S_INPUT 0 { 8, "input", "input", "data frames received" }, -#define S_OUTPUT 1 +#define S_OUTPUT AFTER(S_INPUT) { 8, "output", "output", "data frames transmit" }, -#define S_TX_ALTRATE 2 +#define S_TX_ALTRATE AFTER(S_OUTPUT) { 7, "altrate", "altrate", "tx frames with an alternate rate" }, -#define S_TX_SHORTRETRY 3 +#define S_TX_SHORTRETRY AFTER(S_TX_ALTRATE) { 7, "short", "short", "short on-chip tx retries" }, -#define S_TX_LONGRETRY 4 +#define S_TX_LONGRETRY AFTER(S_TX_SHORTRETRY) { 7, "long", "long", "long on-chip tx retries" }, -#define S_TX_XRETRIES 5 +#define S_TX_XRETRIES AFTER(S_TX_LONGRETRY) { 6, "xretry", "xretry", "tx failed 'cuz too many retries" }, -#define S_MIB 6 +#define S_MIB AFTER(S_TX_XRETRIES) { 5, "mib", "mib", "mib overflow interrupts" }, #ifndef __linux__ -#define S_TX_LINEAR 7 +#define S_TX_LINEAR AFTER(S_MIB) { 5, "txlinear", "txlinear", "tx linearized to cluster" }, -#define S_BSTUCK 8 +#define S_BSTUCK AFTER(S_TX_LINEAR) { 5, "bstuck", "bstuck", "stuck beacon conditions" }, -#define S_INTRCOAL 9 +#define S_INTRCOAL AFTER(S_BSTUCK) { 5, "intrcoal", "intrcoal", "interrupts coalesced" }, +#define S_RATE AFTER(S_INTRCOAL) #else - NOTPRESENT, NOTPRESENT, NOTPRESENT, +#define S_RATE AFTER(S_MIB) #endif -#define S_RATE 10 { 4, "rate", "rate", "current transmit rate" }, -#define S_WATCHDOG 11 +#define S_WATCHDOG AFTER(S_RATE) { 5, "wdog", "wdog", "watchdog timeouts" }, -#define S_FATAL 12 +#define S_FATAL AFTER(S_WATCHDOG) { 5, "fatal", "fatal", "hardware error interrupts" }, -#define S_BMISS 13 +#define S_BMISS AFTER(S_FATAL) { 5, "bmiss", "bmiss", "beacon miss interrupts" }, -#define S_RXORN 14 +#define S_RXORN AFTER(S_BMISS) { 5, "rxorn", "rxorn", "recv overrun interrupts" }, -#define S_RXEOL 15 +#define S_RXEOL AFTER(S_RXORN) { 5, "rxeol", "rxeol", "recv eol interrupts" }, -#define S_TXURN 16 +#define S_TXURN AFTER(S_RXEOL) { 5, "txurn", "txurn", "txmit underrun interrupts" }, -#define S_TX_MGMT 17 +#define S_TX_MGMT AFTER(S_TXURN) { 5, "txmgt", "txmgt", "tx management frames" }, -#define S_TX_DISCARD 18 +#define S_TX_DISCARD AFTER(S_TX_MGMT) { 5, "txdisc", "txdisc", "tx frames discarded prior to association" }, -#define S_TX_INVALID 19 +#define S_TX_INVALID AFTER(S_TX_DISCARD) { 5, "txinv", "txinv", "tx invalid (19)" }, -#define S_TX_QSTOP 20 +#define S_TX_QSTOP AFTER(S_TX_INVALID) { 5, "qstop", "qstop", "tx stopped 'cuz no xmit buffer" }, -#define S_TX_ENCAP 21 +#define S_TX_ENCAP AFTER(S_TX_QSTOP) { 5, "txencode", "txencode", "tx encapsulation failed" }, -#define S_TX_NONODE 22 +#define S_TX_NONODE AFTER(S_TX_ENCAP) { 5, "txnonode", "txnonode", "tx failed 'cuz no node" }, -#define S_TX_NOMBUF 23 +#define S_TX_NOMBUF AFTER(S_TX_NONODE) { 5, "txnombuf", "txnombuf", "tx failed 'cuz mbuf allocation failed" }, #ifndef __linux__ -#define S_TX_NOMCL 24 +#define S_TX_NOMCL AFTER(S_TX_NOMBUF) { 5, "txnomcl", "txnomcl", "tx failed 'cuz cluster allocation failed" }, +#define S_TX_FIFOERR AFTER(S_TX_NOMCL) #else - NOTPRESENT, +#define S_TX_FIFOERR AFTER(S_TX_NOMBUF) #endif -#define S_TX_FIFOERR 25 { 5, "efifo", "efifo", "tx failed 'cuz FIFO underrun" }, -#define S_TX_FILTERED 26 +#define S_TX_FILTERED AFTER(S_TX_FIFOERR) { 5, "efilt", "efilt", "tx failed 'cuz destination filtered" }, -#define S_TX_BADRATE 27 +#define S_TX_BADRATE AFTER(S_TX_FILTERED) { 5, "txbadrate", "txbadrate", "tx failed 'cuz bogus xmit rate" }, -#define S_TX_NOACK 28 +#define S_TX_NOACK AFTER(S_TX_BADRATE) { 5, "noack", "noack", "tx frames with no ack marked" }, -#define S_TX_RTS 29 +#define S_TX_RTS AFTER(S_TX_NOACK) { 5, "rts", "rts", "tx frames with rts enabled" }, -#define S_TX_CTS 30 +#define S_TX_CTS AFTER(S_TX_RTS) { 5, "cts", "cts", "tx frames with cts enabled" }, -#define S_TX_SHORTPRE 31 +#define S_TX_SHORTPRE AFTER(S_TX_CTS) { 5, "shpre", "shpre", "tx frames with short preamble" }, -#define S_TX_PROTECT 32 +#define S_TX_PROTECT AFTER(S_TX_SHORTPRE) { 5, "protect", "protect", "tx frames with 11g protection" }, -#define S_RX_ORN 33 +#define S_RX_ORN AFTER(S_TX_PROTECT) { 5, "rxorn", "rxorn", "rx failed 'cuz of desc overrun" }, -#define S_RX_CRC_ERR 34 +#define S_RX_CRC_ERR AFTER(S_RX_ORN) { 6, "crcerr", "crcerr", "rx failed 'cuz of bad CRC" }, -#define S_RX_FIFO_ERR 35 +#define S_RX_FIFO_ERR AFTER(S_RX_CRC_ERR) { 5, "rxfifo", "rxfifo", "rx failed 'cuz of FIFO overrun" }, -#define S_RX_CRYPTO_ERR 36 +#define S_RX_CRYPTO_ERR AFTER(S_RX_FIFO_ERR) { 5, "crypt", "crypt", "rx failed 'cuz decryption" }, -#define S_RX_MIC_ERR 37 +#define S_RX_MIC_ERR AFTER(S_RX_CRYPTO_ERR) { 4, "mic", "mic", "rx failed 'cuz MIC failure" }, -#define S_RX_TOOSHORT 38 +#define S_RX_TOOSHORT AFTER(S_RX_MIC_ERR) { 5, "rxshort", "rxshort", "rx failed 'cuz frame too short" }, -#define S_RX_NOMBUF 39 +#define S_RX_NOMBUF AFTER(S_RX_TOOSHORT) { 5, "rxnombuf", "rxnombuf", "rx setup failed 'cuz no mbuf" }, -#define S_RX_MGT 40 +#define S_RX_MGT AFTER(S_RX_NOMBUF) { 5, "rxmgt", "rxmgt", "rx management frames" }, -#define S_RX_CTL 41 +#define S_RX_CTL AFTER(S_RX_MGT) { 5, "rxctl", "rxctl", "rx control frames" }, -#define S_RX_PHY_ERR 42 +#define S_RX_PHY_ERR AFTER(S_RX_CTL) { 7, "phyerr", "phyerr", "rx failed 'cuz of PHY err" }, -#define S_RX_PHY_UNDERRUN 43 +#define S_RX_PHY_UNDERRUN AFTER(S_RX_PHY_ERR) { 6, "phyund", "phyund", "transmit underrun" }, -#define S_RX_PHY_TIMING 44 +#define S_RX_PHY_TIMING AFTER(S_RX_PHY_UNDERRUN) { 6, "phytim", "phytim", "timing error" }, -#define S_RX_PHY_PARITY 45 +#define S_RX_PHY_PARITY AFTER(S_RX_PHY_TIMING) { 6, "phypar", "phypar", "illegal parity" }, -#define S_RX_PHY_RATE 46 +#define S_RX_PHY_RATE AFTER(S_RX_PHY_PARITY) { 6, "phyrate", "phyrate", "illegal rate" }, -#define S_RX_PHY_LENGTH 47 +#define S_RX_PHY_LENGTH AFTER(S_RX_PHY_RATE) { 6, "phylen", "phylen", "illegal length" }, -#define S_RX_PHY_RADAR 48 +#define S_RX_PHY_RADAR AFTER(S_RX_PHY_LENGTH) { 6, "phyradar", "phyradar", "radar detect" }, -#define S_RX_PHY_SERVICE 49 +#define S_RX_PHY_SERVICE AFTER(S_RX_PHY_RADAR) { 6, "physervice", "physervice", "illegal service" }, -#define S_RX_PHY_TOR 50 +#define S_RX_PHY_TOR AFTER(S_RX_PHY_SERVICE) { 6, "phytor", "phytor", "transmit override receive" }, -#define S_RX_PHY_OFDM_TIMING 51 +#define S_RX_PHY_OFDM_TIMING AFTER(S_RX_PHY_TOR) { 6, "ofdmtim", "ofdmtim", "OFDM timing" }, -#define S_RX_PHY_OFDM_SIGNAL_PARITY 52 +#define S_RX_PHY_OFDM_SIGNAL_PARITY AFTER(S_RX_PHY_OFDM_TIMING) { 6, "ofdmsig", "ofdmsig", "OFDM illegal parity" }, -#define S_RX_PHY_OFDM_RATE_ILLEGAL 53 +#define S_RX_PHY_OFDM_RATE_ILLEGAL AFTER(S_RX_PHY_OFDM_SIGNAL_PARITY) { 6, "ofdmrate", "ofdmrate", "OFDM illegal rate" }, -#define S_RX_PHY_OFDM_POWER_DROP 54 +#define S_RX_PHY_OFDM_POWER_DROP AFTER(S_RX_PHY_OFDM_RATE_ILLEGAL) { 6, "ofdmpow", "ofdmpow", "OFDM power drop" }, -#define S_RX_PHY_OFDM_SERVICE 55 +#define S_RX_PHY_OFDM_SERVICE AFTER(S_RX_PHY_OFDM_POWER_DROP) { 6, "ofdmservice", "ofdmservice", "OFDM illegal service" }, -#define S_RX_PHY_OFDM_RESTART 56 +#define S_RX_PHY_OFDM_RESTART AFTER(S_RX_PHY_OFDM_SERVICE) { 6, "ofdmrestart", "ofdmrestart", "OFDM restart" }, -#define S_RX_PHY_CCK_TIMING 57 +#define S_RX_PHY_CCK_TIMING AFTER(S_RX_PHY_OFDM_RESTART) { 6, "ccktim", "ccktim", "CCK timing" }, -#define S_RX_PHY_CCK_HEADER_CRC 58 +#define S_RX_PHY_CCK_HEADER_CRC AFTER(S_RX_PHY_CCK_TIMING) { 6, "cckhead", "cckhead", "CCK header crc" }, -#define S_RX_PHY_CCK_RATE_ILLEGAL 59 +#define S_RX_PHY_CCK_RATE_ILLEGAL AFTER(S_RX_PHY_CCK_HEADER_CRC) { 6, "cckrate", "cckrate", "CCK illegal rate" }, -#define S_RX_PHY_CCK_SERVICE 60 +#define S_RX_PHY_CCK_SERVICE AFTER(S_RX_PHY_CCK_RATE_ILLEGAL) { 6, "cckservice", "cckservice", "CCK illegal service" }, -#define S_RX_PHY_CCK_RESTART 61 +#define S_RX_PHY_CCK_RESTART AFTER(S_RX_PHY_CCK_SERVICE) { 6, "cckrestar", "cckrestar", "CCK restart" }, -#define S_BE_NOMBUF 62 +#define S_BE_NOMBUF AFTER(S_RX_PHY_CCK_RESTART) { 4, "benombuf", "benombuf", "beacon setup failed 'cuz no mbuf" }, -#define S_BE_XMIT 63 +#define S_BE_XMIT AFTER(S_BE_NOMBUF) { 7, "bexmit", "bexmit", "beacons transmitted" }, -#define S_PER_CAL 64 +#define S_PER_CAL AFTER(S_BE_XMIT) { 4, "pcal", "pcal", "periodic calibrations" }, -#define S_PER_CALFAIL 65 +#define S_PER_CALFAIL AFTER(S_PER_CAL) { 4, "pcalf", "pcalf", "periodic calibration failures" }, -#define S_PER_RFGAIN 66 +#define S_PER_RFGAIN AFTER(S_PER_CALFAIL) { 4, "prfga", "prfga", "rfgain value change" }, -#if 0 -#define S_TDMA_UPDATE 67 +#if ATH_SUPPORT_TDMA +#define S_TDMA_UPDATE AFTER(S_PER_RFGAIN) { 5, "tdmau", "tdmau", "TDMA slot timing updates" }, -#define S_TDMA_TIMERS 68 +#define S_TDMA_TIMERS AFTER(S_TDMA_UPDATE) { 5, "tdmab", "tdmab", "TDMA slot update set beacon timers" }, -#define S_TDMA_TSF 69 +#define S_TDMA_TSF AFTER(S_TDMA_TIMERS) { 5, "tdmat", "tdmat", "TDMA slot update set TSF" }, +#define S_RATE_CALLS AFTER(S_TDMA_TSF) #else - NOTPRESENT, NOTPRESENT, NOTPRESENT, +#define S_RATE_CALLS AFTER(S_PER_RFGAIN) #endif -#define S_RATE_CALLS 70 { 5, "ratec", "ratec", "rate control checks" }, -#define S_RATE_RAISE 71 +#define S_RATE_RAISE AFTER(S_RATE_CALLS) { 5, "rate+", "rate+", "rate control raised xmit rate" }, -#define S_RATE_DROP 72 +#define S_RATE_DROP AFTER(S_RATE_RAISE) { 5, "rate-", "rate-", "rate control dropped xmit rate" }, -#define S_TX_RSSI 73 +#define S_TX_RSSI AFTER(S_RATE_DROP) { 4, "arssi", "arssi", "rssi of last ack" }, -#define S_RX_RSSI 74 +#define S_RX_RSSI AFTER(S_TX_RSSI) { 4, "rssi", "rssi", "avg recv rssi" }, -#define S_RX_NOISE 75 +#define S_RX_NOISE AFTER(S_RX_RSSI) { 5, "noise", "noise", "rx noise floor" }, -#define S_BMISS_PHANTOM 76 +#define S_BMISS_PHANTOM AFTER(S_RX_NOISE) { 5, "bmissphantom", "bmissphantom", "phantom beacon misses" }, -#define S_TX_RAW 77 +#define S_TX_RAW AFTER(S_BMISS_PHANTOM) { 5, "txraw", "txraw", "tx frames through raw api" }, -#define S_RX_TOOBIG 78 +#define S_RX_TOOBIG AFTER(S_TX_RAW) { 5, "rx2big", "rx2big", "rx failed 'cuz frame too large" }, #ifndef __linux__ -#define S_CABQ_XMIT 79 +#define S_CABQ_XMIT AFTER(S_RX_TOOBIG) { 5, "cabxmit", "cabxmit", "cabq frames transmitted" }, -#define S_CABQ_BUSY 80 +#define S_CABQ_BUSY AFTER(S_CABQ_XMIT) { 5, "cabqbusy", "cabqbusy", "cabq xmit overflowed beacon interval" }, -#define S_TX_NODATA 81 +#define S_TX_NODATA AFTER(S_CABQ_BUSY) { 5, "txnodata", "txnodata", "tx discarded empty frame" }, -#define S_TX_BUSDMA 82 +#define S_TX_BUSDMA AFTER(S_TX_NODATA) { 5, "txbusdma", "txbusdma", "tx failed for dma resrcs" }, -#define S_RX_BUSDMA 83 +#define S_RX_BUSDMA AFTER(S_TX_BUSDMA) { 5, "rxbusdma", "rxbusdma", "rx setup failed for dma resrcs" }, >>> TRUNCATED FOR MAIL (1000 lines) <<<