Skip to content

Commit 9d4691f

Browse files
committed
rp2/boards: Add WIZnet EVB boards and wiznet6k submodule.
Signed-off-by: wiznet-grace <Grace@wiznet.io>
1 parent 4ce2dd2 commit 9d4691f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+3889
-11
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,3 +74,6 @@
7474
[submodule "lib/alif-security-toolkit"]
7575
path = lib/alif-security-toolkit
7676
url = https://github.com/micropython/alif-security-toolkit.git
77+
[submodule "lib/wiznet6k"]
78+
path = lib/wiznet6k
79+
url = https://github.com/Wiznet/ioLibrary_Driver

extmod/extmod.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ set(MICROPY_SOURCE_EXTMOD
5353
${MICROPY_EXTMOD_DIR}/network_ninaw10.c
5454
${MICROPY_EXTMOD_DIR}/network_ppp_lwip.c
5555
${MICROPY_EXTMOD_DIR}/network_wiznet5k.c
56+
${MICROPY_EXTMOD_DIR}/network_wiznet6k.c
5657
${MICROPY_EXTMOD_DIR}/os_dupterm.c
5758
${MICROPY_EXTMOD_DIR}/vfs.c
5859
${MICROPY_EXTMOD_DIR}/vfs_blockdev.c

extmod/extmod.mk

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ SRC_EXTMOD_C += \
5656
extmod/network_ninaw10.c \
5757
extmod/network_ppp_lwip.c \
5858
extmod/network_wiznet5k.c \
59+
extmod/network_wiznet6k.c \
5960
extmod/os_dupterm.c \
6061
extmod/vfs.c \
6162
extmod/vfs_blockdev.c \
@@ -488,6 +489,28 @@ SRC_THIRDPARTY_C += $(addprefix $(WIZNET5K_DIR)/,\
488489
endif
489490
endif # MICROPY_PY_NETWORK_WIZNET5K
490491

492+
ifneq ($(MICROPY_PY_NETWORK_WIZNET6K),)
493+
ifneq ($(MICROPY_PY_NETWORK_WIZNET6K),0)
494+
WIZNET6K_DIR=lib/wiznet6k
495+
GIT_SUBMODULES += lib/wiznet6k
496+
INC += -I$(TOP)/$(WIZNET6K_DIR) -I$(TOP)/$(WIZNET6K_DIR)/Ethernet
497+
CFLAGS += -DMICROPY_PY_NETWORK_WIZNET6K=$(MICROPY_PY_NETWORK_WIZNET6K) -D_WIZCHIP_=$(MICROPY_PY_NETWORK_WIZNET6K) -DMICROPY_WIZNET_PIO=$(MICROPY_WIZNET_PIO) -D_WIZCHIP_QSPI_MODE_=${_WIZCHIP_QSPI_MODE_}
498+
CFLAGS_THIRDPARTY += -DWIZCHIP_PREFIXED_EXPORTS=0
499+
ifeq ($(MICROPY_PY_LWIP),1)
500+
# When using MACRAW mode (with lwIP), maximum buffer space must be used for the raw socket
501+
CFLAGS_THIRDPARTY += -DWIZCHIP_USE_MAX_BUFFER
502+
endif
503+
SRC_THIRDPARTY_C += $(addprefix $(WIZNET6K_DIR)/,\
504+
Ethernet/W$(MICROPY_PY_NETWORK_WIZNET6K)/w$(MICROPY_PY_NETWORK_WIZNET6K).c \
505+
Ethernet/wizchip_conf.c \
506+
Ethernet/socket.c \
507+
Internet/DNS/dns.c \
508+
Internet/DHCP/dhcp.c \
509+
)
510+
511+
endif
512+
endif # MICROPY_PY_NETWORK_WIZNET6K
513+
491514
ifeq ($(MICROPY_PY_NETWORK_ESP_HOSTED),1)
492515
ESP_HOSTED_DIR = drivers/esp-hosted
493516
PROTOBUF_C_DIR = lib/protobuf-c

extmod/modmachine.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,9 @@ static const mp_rom_map_elem_t machine_module_globals_table[] = {
231231
#if MICROPY_PY_MACHINE_SPI
232232
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&machine_spi_type) },
233233
#endif
234+
#if MICROPY_PY_MACHINE_WIZNET_PIO_SPI
235+
{ MP_ROM_QSTR(MP_QSTR_WIZNET_PIO_SPI), MP_ROM_PTR(&machine_wiznet_pio_spi_type) },
236+
#endif
234237
#if MICROPY_PY_MACHINE_UART
235238
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&machine_uart_type) },
236239
#endif

extmod/modmachine.h

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ typedef struct _mp_machine_soft_i2c_obj_t {
176176

177177
#endif
178178

179-
#if MICROPY_PY_MACHINE_SPI || MICROPY_PY_MACHINE_SOFTSPI
179+
#if MICROPY_PY_MACHINE_SPI || MICROPY_PY_MACHINE_SOFTSPI || MICROPY_PY_MACHINE_WIZNET_PIO_SPI
180180

181181
// SPI protocol.
182182
typedef struct _mp_machine_spi_p_t {
@@ -191,6 +191,9 @@ typedef struct _mp_machine_soft_spi_obj_t {
191191
mp_soft_spi_obj_t spi;
192192
} mp_machine_soft_spi_obj_t;
193193

194+
// PIO QSPI object.
195+
typedef mp_machine_soft_spi_obj_t machine_wiznet_pio_spi_obj_t;
196+
194197
#endif
195198

196199
// Objects for machine.mem8, machine.mem16 and machine.mem32.
@@ -229,7 +232,11 @@ extern const mp_obj_dict_t mp_machine_i2c_locals_dict;
229232
extern const mp_obj_type_t mp_machine_soft_spi_type;
230233
extern const mp_machine_spi_p_t mp_machine_soft_spi_p;
231234
#endif
232-
#if MICROPY_PY_MACHINE_SPI || MICROPY_PY_MACHINE_SOFTSPI
235+
#if MICROPY_PY_MACHINE_WIZNET_PIO_SPI
236+
extern const mp_obj_type_t machine_wiznet_pio_spi_type;
237+
extern const mp_machine_spi_p_t machine_wiznet_pio_spi_p;
238+
#endif
239+
#if MICROPY_PY_MACHINE_SPI || MICROPY_PY_MACHINE_SOFTSPI || MICROPY_PY_MACHINE_WIZNET_PIO_SPI
233240
extern const mp_obj_dict_t mp_machine_spi_locals_dict;
234241
#endif
235242

extmod/modnetwork.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,10 @@ extern const struct _mp_obj_type_t mp_network_cyw43_type;
4747
extern const struct _mp_obj_type_t mod_network_nic_type_wiznet5k;
4848
#endif
4949

50+
#if MICROPY_PY_NETWORK_WIZNET6K
51+
extern const struct _mp_obj_type_t mod_network_nic_type_wiznet6k;
52+
#endif
53+
5054
#if MICROPY_PY_NETWORK_NINAW10
5155
extern const struct _mp_obj_type_t mod_network_nic_type_nina;
5256
#endif
@@ -196,7 +200,9 @@ static const mp_rom_map_elem_t mp_module_network_globals_table[] = {
196200
#if MICROPY_PY_NETWORK_WIZNET5K
197201
{ MP_ROM_QSTR(MP_QSTR_WIZNET5K), MP_ROM_PTR(&mod_network_nic_type_wiznet5k) },
198202
#endif
199-
203+
#if MICROPY_PY_NETWORK_WIZNET6K
204+
{ MP_ROM_QSTR(MP_QSTR_WIZNET6K), MP_ROM_PTR(&mod_network_nic_type_wiznet6k) },
205+
#endif
200206
#if MICROPY_PY_NETWORK_NINAW10
201207
{ MP_ROM_QSTR(MP_QSTR_WLAN), MP_ROM_PTR(&mod_network_nic_type_nina) },
202208
#endif

0 commit comments

Comments
 (0)