On Jan 15, 2009, at 4:59 PM, Larry Finger wrote:
Michael Buesch wrote:
Yes, please introduce a feature-bitfield at some location in SHM
that's unused
by the proprietary firmware. This bitfields would contain a bit for
QoS and
a bit for hwcrypto.
Also change your firmware so the driver detects it as open-source
firmware.
I think that's done by writing 0xFFFF to the date/time field in
SHM. I don't
quite remember, but it's something like that.
Note that this might mean that the firmware watchdog in the driver
will trigger,
as that's enabled by the open-source-firmware-flag. We might want
to temporarly
disable the watchdog in the driver for the time being.
I like the idea of encoding the capabilities in the firmware as it
would be a self-documenting method as the firmware evolves.
Is using the Broadcom names for the firmware the best course of
action? What if the opensource firmware files were named something
like "os-ucode5.fw", etc. and b43 were coded to check for those files
first? It would then fall back to the standard firmware if the
opensource version is not found.
Larry
It could be interesting to also not separate the initvalues in two
different files, everything could be coded in a single file. Never
understood why original init values are split in two files.
Michael: SHM(0x0014) (16bit) is not used by the open source firmware,
I know the b43 reads core revision from SHM(0x0016). Normally
SHM(0x0014) is set to zero. We can put fw capabilities here (0x0014),
e.g.:
- bit 0: [0 state that encryption should be handled by b43]
- bit 1: [0 state that qos is not supported]
We can prepare a firmware image with such feature + watchdog. Posting
ASAP with new initvals (less values).
A question: is the standard kernel aware that date set to FFFF
indicates an opensource firmware or some define should be activated on
compilation?
Cheers,
-FG
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html