Paul Sokolovsky
478887c62f
zephyr/modzephyr: Add shell_net_iface() function.
...
Calls out to Zephyr's shell, submodule "net", command "iface", and shows
network interface information (if CONFIG_NET_SHELL is enabled).
2017-08-20 08:57:34 +03:00
Paul Sokolovsky
394c536675
zephyr/prj_96b_carbon.conf: Re-enable networking on Carbon.
...
The original issue leading to crash on startup if no default network
interface was presented, was resolved some time ago.
Note that this enables generic networking subsystem, not networking
on Carbon.
2017-08-19 11:55:18 +03:00
Paul Sokolovsky
09b561f108
zephyr/modusocket: Update struct sockaddr family field name.
...
Was changed to "sa_family" for POSIX compatibility.
2017-08-19 11:45:21 +03:00
Paul Sokolovsky
9404093606
zephyr/prj_base.conf: Enable CONFIG_INIT_STACKS.
...
As required for zephyr.stack_analyze().
2017-08-16 09:34:13 +03:00
Paul Sokolovsky
ad937c49aa
zephyr/modzephyr: Add current_tid() and stacks_analyze() functions.
...
current_tid() returns current thread ID. stacks_analyze() calls
k_call_stacks_analyze() which, with CONFIG_INIT_STACKS enabled,
will print stack usage for some well-known threads in the system.
2017-08-16 09:24:06 +03:00
Damien George
7d4a2f773c
all: Make use of $(TOP) variable in Makefiles, instead of "..".
...
$(TOP) is defined in py/mkenv.mk and should be used to refer to the top
level of this repository.
2017-08-11 12:22:19 +10:00
Paul Sokolovsky
63edc2e78b
zephyr/modusocket: Fully switch to native Zephyr sockets.
2017-08-09 15:08:27 +03:00
Paul Sokolovsky
cb7ecda9f0
zephyr/modusocket: recv: Switch to native sockets.
2017-08-09 10:22:41 +03:00
Paul Sokolovsky
675ceb2dd9
zephyr/modusocket: send: Switch to native sockets.
2017-08-09 10:17:15 +03:00
Paul Sokolovsky
600f5afed3
zephyr/modusocket: bind, connect, listen, accept: Swtich to native sockets.
2017-08-08 12:32:08 +03:00
Paul Sokolovsky
6c55cdafa3
zephyr/modusocket: socket, close: Switch to native Zephyr socket calls.
2017-08-07 21:41:03 +03:00
Paul Sokolovsky
642d9fd2a5
zephyr/modusocket: Allow to use socketized net_context in upstream.
...
Accesses recv_q, accept_q directly in net_context.
2017-08-07 21:36:57 +03:00
Paul Sokolovsky
ca582675e1
zephyr/Makefile: Explicitly define default target as "all".
...
For some reason, with the latest Zephyr master, running just "make" led
to executing Zephyr's "qemu" target.
2017-08-03 00:16:38 +03:00
Alexander Steffen
55f33240f3
all: Use the name MicroPython consistently in comments
...
There were several different spellings of MicroPython present in comments,
when there should be only one.
2017-07-31 18:35:40 +10:00
Alexander Steffen
299bc62586
all: Unify header guard usage.
...
The code conventions suggest using header guards, but do not define how
those should look like and instead point to existing files. However, not
all existing files follow the same scheme, sometimes omitting header guards
altogether, sometimes using non-standard names, making it easy to
accidentally pick a "wrong" example.
This commit ensures that all header files of the MicroPython project (that
were not simply copied from somewhere else) follow the same pattern, that
was already present in the majority of files, especially in the py folder.
The rules are as follows.
Naming convention:
* start with the words MICROPY_INCLUDED
* contain the full path to the file
* replace special characters with _
In addition, there are no empty lines before #ifndef, between #ifndef and
one empty line before #endif. #endif is followed by a comment containing
the name of the guard macro.
py/grammar.h cannot use header guards by design, since it has to be
included multiple times in a single C file. Several other files also do not
need header guards as they are only used internally and guaranteed to be
included only once:
* MICROPY_MPHALPORT_H
* mpconfigboard.h
* mpconfigport.h
* mpthreadport.h
* pin_defs_*.h
* qstrdefs*.h
2017-07-18 11:57:39 +10:00
Damien George
d91c1170ca
zephyr: Remove long-obsolete machine_ptr_t typedef's.
2017-07-17 15:17:06 +10:00
Paul Sokolovsky
bfa68ef6b2
zephyr/Makefile: Revert prj.conf construction rule to the previous state.
...
CONF_FILE can be overriden, e.g. for minimal build, and we don't construct
such overriden conf file like we do for prj_merged.conf.
2017-07-09 11:56:37 +03:00
Paul Sokolovsky
0c75990d6e
zephyr/Makefile: Rework dependencies and "clean" target.
...
Got tired of running rm -rf manually. Make should clean, and should clean
fast. Also, fix always-running config-related commands (by having per-board
merged configs).
2017-07-08 21:36:16 +03:00
Paul Sokolovsky
0161939ed1
zephyr/machine_pin: Use native Zephyr types for Zephyr API calls.
...
In 1.8, Zephyr made a controversial change of dumping C99 stdint types
and switching to its own types.
2017-06-10 19:40:31 +03:00
Paul Sokolovsky
4352b944d2
zephyr: Define MICROPY_PY_SYS_PLATFORM (to "zephyr").
2017-06-08 17:58:55 +03:00
Paul Sokolovsky
43f58386e0
zephyr/modusocket: getaddrinfo: Fix mp_obj_len() usage.
...
Return value is mp_obj_t, so needs to be accessed using
MP_OBJ_SMALL_INT_VALUE().
2017-06-03 16:11:53 +03:00
Ville Skyttä
ca16c38210
various: Spelling fixes
2017-05-29 11:36:05 +03:00
Paul Sokolovsky
011684bd4f
zephyr/modusocket: Use DEBUG_PRINT macro name as other modules do.
...
Indeed, just "DEBUG" is too generic.
2017-05-26 10:20:25 +03:00
Paul Sokolovsky
982e676902
zephyr/modusocket: getaddrinfo: Raise OSError on resolution timeout, etc.
2017-05-24 19:55:14 +03:00
Paul Sokolovsky
bcf31a3908
esp8266, stmhal, zephyr: Rename machine.Pin high/low methods to on/off.
...
For consistent Pin/Signal class hierarchy. With it, Signal is a proper
(while still ducktyped) subclass of a Pin, and any (direct) usage of Pin
can be replace with Signal.
As stmhal's class is reused both as machine.Pin and legacy pyb.Pin,
high/low methods actually retained there.
2017-05-21 17:44:58 +03:00
Paul Sokolovsky
0912334f54
zephyr/modusocket: getaddrinfo: Use RAISE_ERRNO for proper error decoding.
2017-05-17 00:21:22 +03:00
Paul Sokolovsky
5f648ff60e
zephyr/main: Check default netif before applying operations to it.
...
If no network driver is enabled (e.g., it doesn't exist for a particular
board), it will be NULL.
2017-05-17 00:17:53 +03:00
Paul Sokolovsky
aa9ce283c2
zephyr/modusocket: Get rid of cur_pkt object member.
...
Instead, just peek a packet at the head of the queue and work with it.
2017-05-16 13:46:54 +03:00
Paul Sokolovsky
a3008e447c
zephyr/modusocket: First step to switch to alternative FIFO processing.
...
Here we wait for non-empty FIFO, and then directly access/drop its head
element.
2017-05-16 13:43:06 +03:00
Paul Sokolovsky
0c57979ce2
zephyr/modusocket: Implement getaddrinfo().
2017-05-13 16:42:35 +03:00
Paul Sokolovsky
86c4544ef9
zephyr/modusocket: If there're no packets in recv_q, cancel waiter.
...
This solves a case when socker_read() has blocked on fifo, and then peer
closed event arrives.
2017-05-13 16:22:14 +03:00
Paul Sokolovsky
69f0b4ad5b
zephyr/modusocket: Switch to net_pkt_append() returning length.
...
Requires patch in review.
2017-05-13 16:05:10 +03:00
Paul Sokolovsky
39d3335606
zephyr/modusocket: Update for net_pkt refactor.
2017-05-13 15:47:47 +03:00
Paul Sokolovsky
c022c9a2f0
zephyr/modusocket: Wrap pkt_get_info() call.
...
The most important info it returns are numbers of free buffers
in different pools (rx/tx packet headers, data fragments).
2017-05-13 15:23:31 +03:00
Paul Sokolovsky
5383a50072
zephyr/README: Update to require Zephyr 1.8.
...
There're a lot of changes and fixes in 1.8 regarding IP stack,
incompatible with previous Zephyr versions, so supporting them
doesn't make sense.
This is the last commit which should build with Zephyr 1.7.
2017-05-12 22:05:07 +03:00
Paul Sokolovsky
d57c6564dc
zephyr/prj_qemu_x86.conf: Bump RAM size to 320K.
2017-05-12 21:58:51 +03:00
Paul Sokolovsky
50d7ed325a
zephyr/modusocket: Add SOL_SOCKET and SO_REUSEADDR constants.
2017-05-12 21:55:42 +03:00
Paul Sokolovsky
1659c0645d
zephyr/modusocket: Add dummy setsockopt() implementation.
2017-05-12 21:54:32 +03:00
Paul Sokolovsky
4c2fa83f2a
zephyr/main: Remove superfluous include.
2017-05-02 23:35:13 +03:00
Paul Sokolovsky
b5159a9149
zephyr/mpconfigport.h: Enable line number information for scripts.
2017-05-02 23:33:16 +03:00
Paul Sokolovsky
674da04e2e
zephyr/Makefile: Add debugserver Zephyr target.
2017-05-02 01:12:02 +03:00
Paul Sokolovsky
31bbcd448c
zephyr/modusocket: Add dummy makefile() implementation.
2017-04-27 14:57:49 +03:00
Paul Sokolovsky
868453d3d8
zephyr/modusocket: sock_read: Check socket status only at the start of packet.
...
Otherwise, if we already have a packet in progress, finish it first, before
check "peer closed" status.
2017-04-26 09:14:41 +03:00
Paul Sokolovsky
1fe0f678f8
zephyr/modusocket: Add read/readline/readinto stream methods.
2017-04-26 08:43:07 +03:00
Paul Sokolovsky
ef55be159c
zephyr/modusocket: Refactor recv() into stream read() method.
2017-04-26 08:43:07 +03:00
Paul Sokolovsky
63068875c5
zephyr/modusocket: Enable stream write() method.
2017-04-26 01:06:42 +03:00
Paul Sokolovsky
0e177e0649
zephyr/modusocket: Refactor send() into stream write() method.
2017-04-26 01:05:54 +03:00
Kushal Das
083cd21a74
zephyr: Add 96b_carbon configuration.
...
As there's no networking support in mainline yet, networking is disabled,
because otherwise the board hangs on startup.
2017-04-26 00:22:48 +03:00
Paul Sokolovsky
5e66f2b751
zephyr/main: Configure IPv4 netmask and gateway to allow Internet access.
2017-04-22 19:29:47 +03:00
Paul Sokolovsky
5846770997
zephyr/modmachine: Implement machine.reset().
2017-04-19 13:28:36 +03:00