On Fri, 2007-03-30 at 23:19 +0200, Michael Buesch wrote:

> Ok, what's actually done in the initvals _exactly_?
> Does someone have a complete and exact summary?
> All I know is that it's stuff dependent on the loaded
> microcode and the running core revision.

Well. Saying it exactly would require a few pages worth of email ;)

Basically all the initial values do is hit registers and set various
things. For example, they'll set the RXE copy length register and the
RXE copy offset register. SHM core revision, then they program the FIFO
sizes (also up on the registers spec page). A few other FIFO parameters
are programmed, TXE template masks set...

The initial values also program the SHM layout, i.e. that key offset
pointer, a whole bunch of SHM values are set for the microcode (even
some that my disassembler doesn't handle yet meaning they might not even
be used). Finally, it sets all the microcode registers to some
pre-defined values (some of the registers are assigned special meaning
by convention, see http://bcm-v4.sipsolutions.net/802.11/ObjectMemory

> Btw, I also added some mechanism to define and generate initvals
> to bcm43xx-asm. I think the initvals are useful and we want
> them in future, too. Even with possible free microcode.

Yeah.

> Any comments on this implementation are desired, too.

Seems sane to me. a "reg" primitive would be good too, and I don't think
PHY or radio registers are required (not that they hurt).

> Currently there's mechanism to define several sets of initvals
> (several sets for, for example, several different core revisions)
> in the microcode assembly file.

:)

johannes

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to