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

Link to this comparison view

Both sides previous revision Previous revision
soc:2008:mdeck:journal:week3 [2008/06/15 08:49]
mdeck
soc:2008:mdeck:journal:week3 [2008/06/15 14:00] (current)
mdeck
Line 125: Line 125:
   * [[http://​git.etherboot.org/?​p=people/​mdeck/​gpxe.git;​a=commit;​h=b7ff5f923bdc7970839819c48942c22ac79c7454|[Drivers-eepro100] Purely formatting changes. New header. IFEC.]]   * [[http://​git.etherboot.org/?​p=people/​mdeck/​gpxe.git;​a=commit;​h=b7ff5f923bdc7970839819c48942c22ac79c7454|[Drivers-eepro100] Purely formatting changes. New header. IFEC.]]
 I removed the description of operation as it's all changing. I'll write in a new description once the final driver operation is set.  IFEC = Intel Fast Ethernet Controller. ​ From what I can find, it seems only these controllers are referred to as Fast Ethernet Controllers by Intel. ​ It's short and simple. I removed the description of operation as it's all changing. I'll write in a new description once the final driver operation is set.  IFEC = Intel Fast Ethernet Controller. ​ From what I can find, it seems only these controllers are referred to as Fast Ethernet Controllers by Intel. ​ It's short and simple.
 +
 +=== 15 June ===
 +
 +I rewrote ''​ifec_scb_cmd_wait()''​. ​ Now it returns an error code if the command unit doesn'​t become ready within a timeout interval. ​ The timeout is a configurable ''#​define CU_CMD_TIMEOUT''​. ​ The return code is propagated through ''​ifec_scb_cmd()'',​ so the caller can check that if they want.
 +  * Commit: [[http://​git.etherboot.org/?​p=people/​mdeck/​gpxe.git;​a=commit;​h=e629a17b8b74b74a759a5ef4bfe971976837cce3|[Drivers-eepro100] Update ifec_scb_cmd_wait,​ more formatting.]]
 +I rearranged operations in ''​ifec_net_open()'',​ to give a seemingly more logical order. ​ It seems to work the same, I wonder if this makes a difference.
 +  * Commit: [[http://​git.etherboot.org/?​p=people/​mdeck/​gpxe.git;​a=commit;​h=c7e921e8b2dba0d40a81cbee32f5dd265b86dae1|[Drivers-eepro100] Rearranged ifec_net_open() operations.]]
 +After the last commit, I considered there may be some nuance to the hardware design that makes the original ordering always work, and the new ordering occasionally fail.  I wouldn'​t notice this for a while.
 +
 +This got me wondering if I should strive to keep the drivers as close to the original Linux version as possible. ​ This could take advantage of any subtle hardware problems that their code has evolved to avert.
 +
 +Although I may just be over-thinking things. One would hope any hardware defects would be clearly identified. Would the Intel engineers releasing open-source drivers for their hardware spell out how they worked around hardware bugs..? ​ I wonder if my work over the past few days hasn't been a waste.
 +
 +I haven'​t spoken to Marty since making these changes, so we'll see what he says.
 +
 +Tomorrow I hope to integrate dynamic allocation for the tx & rx, as well as expand tx to multiple descriptors.

QR Code
QR Code soc:2008:mdeck:journal:week3 (generated for current page)