From owner-freebsd-wireless@FreeBSD.ORG Tue Aug 23 11:12:54 2011 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 71A3A106566C for ; Tue, 23 Aug 2011 11:12:54 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-vx0-f182.google.com (mail-vx0-f182.google.com [209.85.220.182]) by mx1.freebsd.org (Postfix) with ESMTP id 286AF8FC1B for ; Tue, 23 Aug 2011 11:12:53 +0000 (UTC) Received: by vxh11 with SMTP id 11so6434475vxh.13 for ; Tue, 23 Aug 2011 04:12:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=zDxHFsmdmnd6LZOL76GAE4BYRkvPhXbdZB7vklix4ik=; b=AxdW2yjTMc2cokBVMYlLYbq4aRdSRxObytwk4dqOsPe9ArnJM7RvwrO7L3Miv0DuSC E5f2rxta26l5+yWXfzzq22BuezsPOEZnenG1DfQYwZMI8RnsIvhoXIp/zJUppDqBYZfy 0q/fiNHWxbMr52MAUXsqdLNTscu1cwp6La/Z8= MIME-Version: 1.0 Received: by 10.52.74.2 with SMTP id p2mr3411559vdv.127.1314097973370; Tue, 23 Aug 2011 04:12:53 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.52.33.49 with HTTP; Tue, 23 Aug 2011 04:12:53 -0700 (PDT) In-Reply-To: References: Date: Tue, 23 Aug 2011 19:12:53 +0800 X-Google-Sender-Auth: P2dUog2A8gqSANgjH06bFk8-X2A Message-ID: From: Adrian Chadd To: Kang Yin Su Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-wireless@freebsd.org Subject: Re: AR5416 beacon issue. X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Aug 2011 11:12:54 -0000 Oh, I just wanted to ensure that was the root cause! So the real question is: should the drivers assume for now that sequence numbers should be generated in software? Does all the hardware even support that? Adrian On 23 August 2011 18:54, Kang Yin Su wrote: > Tried disable that, it works also. However the sequence number in packet = is > less controllable. There are some packets like QoS need to fill the seque= nce > number from the TID sequence space. > > -Yin > On Tue, Aug 23, 2011 at 6:29 PM, Adrian Chadd wrote: >> >> That's a great catch. So from memory: >> >> * there are bits that control whether the MAC generates sequence numbers >> or not; >> * the frame type in the TX descriptor can also modify that. >> >> AR5416: >> >> * D_MISC for each DCU, bit 20: Sequence number increment disable; resets >> to 0x0. >> * MAC_PCU_STA_ADDR_U16 - (0x8004) bit 29: REG_PRESERVE_SEQNUM: Stops >> PCU from replacing the sequence number >> >> AR5212: >> >> * D_MISC: same deal: bit 20 - SEQNUMINCDIS >> * same deal with MAC_PCU_STA_ADDR_U16 above: bit 29 >> >> 30 seconds with the HAL has shown what's going on: >> >> ar5416Reset(): >> >> =A0 =A0 =A0 =A0/* >> =A0 =A0 =A0 =A0 * disable seq number generation in hw >> =A0 =A0 =A0 =A0 */ >> =A0 =A0 =A0 =A0 OS_REG_WRITE(ah, AR_STA_ID1, >> =A0 =A0 =A0 =A0 =A0 =A0 OS_REG_READ(ah, AR_STA_ID1) | AR_STA_ID1_PRESERV= E_SEQNUM); >> >> That bit isn't set for the AR5212. >> >> Try disabling that, see if it works on the AR5416. >> >> If it does, then we should (all) have a brief discussion what the >> "correct" behaviour is moving forward. >> >> >> Adrian >> >> >> On 23 August 2011 17:37, Kang Yin Su wrote: >> > Hi all, >> > OK, this patch fix the beacons sequence number from AR5416 chips. With >> > this >> > code added, both beacons send from AR5212 and AR5416 chips are fine, t= he >> > sequence numbers are increase by 1. I have no idea why the AR5212 chip= s >> > do >> > not this require this. The AR5212 hardware probably ignore this field >> > and >> > added the seq no. by itself? >> > Thanks, >> > Yin >> > On Tue, Aug 23, 2011 at 3:50 PM, Kang Yin Su >> > wrote: >> >> >> >> Hi All, >> >> Using FreeBSD HEAD create a AP, found that the beacon frames have no >> >> sequence number on AR5416 WiFi card, however there is sequence number >> >> on >> >> AR5212 WiFi card. Attached is the WiFi capture on both =A0 =A0card. >> >> =A000:1b:b1:59:ab:4d is AR5416 and 00:0b:6b:2d:f2:cc is AR5212. >> >> Thanks, >> >> Yin >> > > >