Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
soc:2009:oremanj:journal:week2 [2009/06/06 11:38]
rwcr
soc:2009:oremanj:journal:week2 [2009/06/06 22:38]
rwcr
Line 44: Line 44:
  
 ==== Friday, 5 June ==== ==== Friday, 5 June ====
 +
  
 More work on the MAC layer, to fill in the gaping "​insert association functionality here" hole. No commits today, since I got to a state where the code had a dozen half-finished parts and I should be able to clean it up tomorrow. I realized I hadn't fully mapped out how the association process should work, so I took a break from the coding to do that; the notes are in my [[soc:​2009:​oremanj:​notes:​design|design notes]] page. I figure the association will be managed by a process that's created whenever it's needed. My goal is to have it appear to higher layers like the "link up" on a wired Ethernet link, so it needs to happen asynchronously - netdev_open() returns right away, and some time later the ''​NETDEV_LINK_UP''​ flag is automagically set (assuming everything works properly). More work on the MAC layer, to fill in the gaping "​insert association functionality here" hole. No commits today, since I got to a state where the code had a dozen half-finished parts and I should be able to clean it up tomorrow. I realized I hadn't fully mapped out how the association process should work, so I took a break from the coding to do that; the notes are in my [[soc:​2009:​oremanj:​notes:​design|design notes]] page. I figure the association will be managed by a process that's created whenever it's needed. My goal is to have it appear to higher layers like the "link up" on a wired Ethernet link, so it needs to happen asynchronously - netdev_open() returns right away, and some time later the ''​NETDEV_LINK_UP''​ flag is automagically set (assuming everything works properly).
Line 61: Line 62:
   * Milestone for next week: get the MAC layer usable by Wednesday, spend remainder of time testing and bugfixing rtl8180 boot, hopefully have working boot by end of week.   * Milestone for next week: get the MAC layer usable by Wednesday, spend remainder of time testing and bugfixing rtl8180 boot, hopefully have working boot by end of week.
   * Hardware purchase issues: [[http://​www.amazon.com/​RTL8185L-802-11g-Wireless-LAN-Adapter/​dp/​B0012430RS/​ref=sr_1_20?​ie=UTF8&​s=electronics&​qid=1244312934&​sr=1-202009-06-06|we found a rtl8185 card]]   * Hardware purchase issues: [[http://​www.amazon.com/​RTL8185L-802-11g-Wireless-LAN-Adapter/​dp/​B0012430RS/​ref=sr_1_20?​ie=UTF8&​s=electronics&​qid=1244312934&​sr=1-202009-06-06|we found a rtl8185 card]]
 +
 +Commits for today:
 +  * [[http://​git.etherboot.org/?​p=people/​oremanj/​gpxe.git;​a=commit;​h=490714353c660e66b84953444fe48f282f515019|
 +[802.11] The 802.11 MAC layer, second big commit]]
 +  * [[http://​git.etherboot.org/?​p=people/​oremanj/​gpxe.git;​a=commit;​h=bae2489240d2eecd28a3f54bb3de3287a4aadf28|
 +[drivers rtl8180] Updated rtl8180 driver for API changes]]
 +  * [[http://​git.etherboot.org/?​p=people/​oremanj/​gpxe.git;​a=commit;​h=095b23f38626677c11781ae9a0fedc29fde40d5d|
 +[aesthetic] Adjust parenthesis spacing on net80211.[ch] to fit gPXE style]]
 +
 +I'm almost done with the initial coding for the MAC layer; all I have left to write is the network scanning function, ''​net80211_probe()''​. It looks like I should be able to start testing bug-hunting on Monday if not tomorrow.
 +
 +I did some packet sniffing on my home wireless network today, and found that ordinary 2.4GHz-band consumer-grade networks generally don't even include the IEEE country information element that I had assumed we'd be able to use to set regulatory parameters. It may be possible to get at them with a probe packet, but if not, we're left guessing about maximum TX power - we'd have to use 20 dBm (maximum value for Europe and Japan) even in the US where a higher-range 27 dBm is allowable. For now I'm leaving it fixed at 20 always.

QR Code
QR Code soc:2009:oremanj:journal:week2 (generated for current page)