aboutsummaryrefslogtreecommitdiff
path: root/stmhal/modcc3k.c
AgeCommit message (Collapse)Author
2014-12-04stmhal: Overhaul network drivers; has generic network protocol in C.Damien George
This patch overhauls the network driver interface. A generic NIC must provide a set of C-level functions to implement low-level socket control (eg socket, bind, connect, send, recv). Doing this, the network and usocket modules can then use such a NIC to implement proper socket control at the Python level. This patch also updates the CC3K and WIZNET5K drivers to conform to the new interface, and fixes some bugs in the drivers. They now work reasonably well.
2014-11-17stream: Convert .ioctl() to take fixed number of args.Paul Sokolovsky
This is more efficient, as allows to use register calling convention. If needed, a structure pointer can be passed as argument to pass more data.
2014-10-31stmhal: Update some inlined docs for network and CAN.Damien George
2014-10-30stmhal: Fix ptr arith in CC3000 code; enable network build in travis.Damien George
2014-10-22stmhal: Change cc3k.recv to only make 1 call to underlying recv().Damien George
Also make cc3k.send and cc3k.recv independent functions (not wrapped by stream write/read). Also make wiznet5k.recv more memory efficient. This might address issue #920.
2014-09-30stmhal: Enable patch_program in cc3k driver, with key.Damien George
2014-09-30drivers, cc3000: Wrap exported functions in a macro for renaming.Damien George
2014-09-30stmhal: Add network and usocket module.Damien George
As per issue #876, the network module is used to configure NICs (hardware modules) and configure routing. The usocket module is supposed to implement the normal Python socket module and selects the underlying NIC using routing logic. Right now the routing logic is brain dead: first-initialised, first-used. And the routing table is just a list of registered NICs. cc3k and wiznet5k work, but not at the same time due to C name clashes (to be fixed). Note that the usocket module has alias socket, so that one can import socket and it works as normal. But you can also override socket with your own module, using usocket at the backend.
2014-09-26stmhal, modcc3k: Add ioctl to cc3k sockets so select works.Damien George
2014-09-26stmhal: Initial implementation of cc3k module and driver.Damien George
Pulled in and modified work done by mux/iabdalkader on cc3k driver, from iabdalkader-cc3k-update branch. That branch was terribly messy and had too many conflicts to merge neatly.