7 #ifndef ZRTOS_VFS_MODULE_W5500_SOCKET_H 8 #define ZRTOS_VFS_MODULE_W5500_SOCKET_H 19 #define ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_BASE 0x4000 20 #define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_BASE 0x6000 21 #define ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_MASK 0x07FF 22 #define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_MASK 0x07FF 23 #define ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_SIZE 2048 24 #define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_SIZE 2048 25 #define ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_ADDR(n)\ 27 ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_BASE\ 28 + (ZRTOS_VFS_MODULE_W5500_SOCKET__TX_BUFFER_SIZE * (n))\ 30 #define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_ADDR(n)\ 32 ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_BASE\ 33 + (ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_SIZE * (n))\ 36 #define ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET(addr,len)\ 37 ((addr << 8) | (0x00 << 6) | len) 38 #define ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET(addr,len)\ 39 ((addr << 8) | (0x01 << 6) | len) 103 #undef ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET 104 #undef ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET 125 uint8_t ctl = _W5500_SPI_READ_;
169 uint16_t rx_base_addr;
174 ,(WIZCHIP_SREG_BLOCK(file_data->
fd) << 3) | _W5500_SPI_READ_
180 ,(WIZCHIP_SREG_BLOCK(file_data->
fd) << 3) | _W5500_SPI_READ_
195 ,(WIZCHIP_SREG_BLOCK(file_data->
fd) << 3) | _W5500_SPI_WRITE_
274 ,(WIZCHIP_SREG_BLOCK(inode_data->num) << 3) | _W5500_SPI_READ_
311 (addr + length < 0x14)
312 || ((addr == 0x15 || addr == 0x16) && length == 1)
313 || (addr >= 0x1E && (addr + length < 0x30))
336 ,WIZCHIP_SREG_BLOCK(file_data->
fd)
#define ZRTOS_CAST(type, value)
zrtos_error_t rtos_vfs_module_w5500_socket__on_can_read_write_helper(zrtos_vfs_file_t *thiz, char *path, uint16_t addr)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_DESTINATION_PORT
bool zrtos_vfs_module_w5500_socket__on_ioctl_helper_validate_addr(uint16_t addr, size_t length)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_SOURCE_PORT
#define ZRTOS_VFS_PLUGIN__4_ON_READ_DEFAULT()
#define ZRTOS_VFS_PLUGIN__3_ON_UMOUNT_DEFAULT()
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_RX_WRITE_POINTER
size_t zrtos_vfs_offset_t
ZRTOS_VFS_PLUGIN__INIT(w5500_socket, ZRTOS_VFS_PLUGIN__0_ON_OPEN_DEFAULT() ZRTOS_VFS_PLUGIN__1_ON_CLOSE_DEFAULT() ZRTOS_VFS_PLUGIN__2_ON_MOUNT_DEFAULT() ZRTOS_VFS_PLUGIN__3_ON_UMOUNT_DEFAULT() ZRTOS_VFS_PLUGIN__4_ON_READ_DEFAULT(rtos_vfs_module_w5500_socket__on_read) ZRTOS_VFS_PLUGIN__5_ON_WRITE_DEFAULT(rtos_vfs_module_w5500_socket__on_write) ZRTOS_VFS_PLUGIN__6_ON_CAN_READ(rtos_vfs_module_w5500_socket__on_can_read) ZRTOS_VFS_PLUGIN__7_ON_CAN_WRITE(rtos_vfs_module_w5500_socket__on_can_write) ZRTOS_VFS_PLUGIN__8_ON_SEEK_DEFAULT() ZRTOS_VFS_PLUGIN__9_ON_IOCTL(zrtos_vfs_module_w5500_socket__on_ioctl))
#define ZRTOS_VFS_PLUGIN__0_ON_OPEN_DEFAULT()
zrtos_error_t rtos_vfs_module_w5500_socket__read_data(zrtos_vfs_fd_t fd, uint8_t n, uint16_t src, uint8_t *dest, uint16_t len)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_MAXIMUM_SEGMENT_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_TX_WRITE_POINTER
zrtos_error_t rtos_vfs_module_w5500_socket__on_write(zrtos_vfs_file_t *thiz, char *path, void *buf, size_t len, zrtos_vfs_offset_t offset, size_t *out)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_TRANSMIT_BUFFER_SIZE
#define ZRTOS_VFS_PLUGIN__5_ON_WRITE_DEFAULT()
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_TX_READ_POINTER
#define ZRTOS_VFS_PLUGIN__8_ON_SEEK_DEFAULT()
#define ZRTOS_VFS_PLUGIN__1_ON_CLOSE_DEFAULT()
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_MAXIMUM_SEGMENT_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_RECEIVE_BUFFER_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_KEEP_ALIVE_TIMER
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_IP_TOS
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_MODE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_RX_READ_POINTER
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_DESTINATION_IP_ADDRESS
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_COMMAND
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_FRAGMENT_OFFSET
zrtos_error_t zrtos_vfs_module_w5500__on_ioctl_helper(zrtos_vfs_fd_t fd, char *path, int request, va_list args, uint8_t ctl_bsb, bool(*validate)(uint16_t addr, size_t length))
#define ZRTOS_VFS_PLUGIN__6_ON_CAN_READ(callback)
zrtos_vfs_module_w5500_inode_t * w5500
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_IP_TOS
#define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_MASK
#define ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET(addr, len)
#define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_MODE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_RX_RECEIVED_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_INTERRUPT_MASK
void * zrtos_vfs_file__get_inode_data(zrtos_vfs_file_t *thiz)
bool zrtos_error__is_success(zrtos_error_t thiz)
#define ZRTOS_TYPES__MIN(a, b)
zrtos_error_t rtos_vfs_module_w5500_socket__on_read(zrtos_vfs_file_t *thiz, char *path, void *buf, size_t len, zrtos_vfs_offset_t offset, size_t *out)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_FRAGMENT_OFFSET
zrtos_error_t zrtos_vfs_module_w5500_socket__on_ioctl(zrtos_vfs_file_t *thiz, char *path, int request, va_list args)
void * zrtos_vfs_file__get_data(zrtos_vfs_file_t *thiz)
#define ZRTOS_VFS_PLUGIN__9_ON_IOCTL(callback)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_IP_TTL
Successful program execution status.
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_DESTINATION_PORT
#define ZRTOS_VFS_MODULE_W5500_SOCKET__RX_BUFFER_ADDR(n)
zrtos_error_t zrtos_vfs_module_w5500__spi_transfer_uint16(zrtos_vfs_fd_t fd, uint16_t addr, uint8_t ctl, uint16_t *val)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_IP_TTL
zrtos_error_t zrtos_vfs_fd__spi_transfer(zrtos_vfs_fd_t fd, size_t len,...)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_DESTINATION_MAC_ADDRESS
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_DESTINATION_MAC_ADDRESS
#define ZRTOS_VFS_PLUGIN__7_ON_CAN_WRITE(callback)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_TRANSMIT_BUFFER_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_SATUS
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_RX_READ_POINTER
struct _ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL_t ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL_t
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_RECEIVE_BUFFER_SIZE
zrtos_error_t rtos_vfs_module_w5500_socket__on_can_write(zrtos_vfs_file_t *thiz, char *path)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_TX_FREE_SIZE
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_DESTINATION_IP_ADDRESS
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_SOURCE_PORT
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_COMMAND
#define ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET(addr, len)
zrtos_error_t rtos_vfs_module_w5500_socket__on_can_read(zrtos_vfs_file_t *thiz, char *path)
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__GET_INTERRUPT
#define ZRTOS_VFS_PLUGIN__2_ON_MOUNT_DEFAULT()
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_TX_WRITE_POINTER
ZRTOS_VFS_MODULE_W5500_SOCKET_IOCTL__SET_INTERRUPT_MASK