Charles, > I'm working on a driver which will use mac80211. My hardware cannot > transmit a frame larger than 1792 bytes, or receive frames larger than > 2048 bytes. Right now I am relying on the fragmentation routines > built into mac80211. Is there a way for my driver to tell mac80211 > what the maximum transmit and receive frame sizes are? Do I need to > implement my own fragmentation code to handle this? Using fragmentation for this is not a good plan -- better adjust the maximum MTU. We currently cannot do that because mac80211 assumes that all devices actually conform to the 802.11 standard wrt. this... Clearly your device does not -- 2048 bytes is much too small, and you cannot force the remote peer to send smaller frames than that (though in practise it they will be smaller most of the time). I would suggest that for now you don't worry about it at all -- the default MTU is 1500 matching ethernet, so the largest frame that mac80211 will give you by default is much smaller than 1792 bytes. Then, once you release your driver under GPL and post it for inclusion into our tree we can think about adding a new hardware capability to mac80211 that restricts users from increasing the MTU above 1792-30-2-8-4 (or something like that). johannes
Attachment:
signature.asc
Description: This is a digitally signed message part