diff options
Diffstat (limited to 'components')
| -rw-r--r-- | components/CMSIS/Kconfig | 20 | ||||
| -rw-r--r-- | components/Kconfig | 2 | ||||
| -rw-r--r-- | components/dfs/Kconfig | 29 | ||||
| -rw-r--r-- | components/net/Kconfig | 7 | ||||
| -rw-r--r-- | components/net/lwip-2.0.2/src/netif/ethernetif.c | 24 |
5 files changed, 62 insertions, 20 deletions
diff --git a/components/CMSIS/Kconfig b/components/CMSIS/Kconfig new file mode 100644 index 0000000000..8a27f44405 --- /dev/null +++ b/components/CMSIS/Kconfig @@ -0,0 +1,20 @@ +if ARCH_ARM_CORTEX_M + +menu "ARM CMSIS" + +config RT_USING_CMSIS_OS + bool "Using CMSIS RTOS API" + default n + help + Enable CMSIS RTOS API, which is implemented above RT-Thread. + +config RT_USING_RTT_CMSIS + bool "Using CMSIS Header files in RT-Thread" + default n + help + Use CMSIS header files in RT-Thread/components/CMSIS. Otherwise, use the + CMSIS header files in BSP. + +endmenu + +endif diff --git a/components/Kconfig b/components/Kconfig index b8c94b558a..40d9bee5e2 100644 --- a/components/Kconfig +++ b/components/Kconfig @@ -28,4 +28,6 @@ source "$RTT_DIR/components/vbus/Kconfig" source "$RTT_DIR/components/utilities/Kconfig" +source "$RTT_DIR/components/CMSIS/Kconfig" + endmenu diff --git a/components/dfs/Kconfig b/components/dfs/Kconfig index 91df96cb08..ec9985e21c 100644 --- a/components/dfs/Kconfig +++ b/components/dfs/Kconfig @@ -12,17 +12,20 @@ if RT_USING_DFS default y config DFS_FILESYSTEMS_MAX - int "The maximal number of mounted file system" - default 2 + int "The maximal number of mounted file system" + default 4 if RT_USING_DFS_NFS + default 2 config DFS_FILESYSTEM_TYPES_MAX int "The maximal number of file system type" - default 2 + default 4 if RT_USING_DFS_NFS + default 2 config DFS_FD_MAX int "The maximal number of opened files" + default 16 if RT_USING_DFS_NFS default 4 - + config RT_USING_DFS_ELMFAT bool "Enable elm-chan fatfs" default y @@ -51,18 +54,18 @@ if RT_USING_DFS config RT_DFS_ELM_USE_LFN_2 bool "2: LFN with dynamic LFN working buffer on the stack" - + config RT_DFS_ELM_USE_LFN_3 bool "3: LFN with dynamic LFN working buffer on the heap" endchoice - + config RT_DFS_ELM_USE_LFN int default 0 if RT_DFS_ELM_USE_LFN_0 default 1 if RT_DFS_ELM_USE_LFN_1 default 2 if RT_DFS_ELM_USE_LFN_2 default 3 if RT_DFS_ELM_USE_LFN_3 - + config RT_DFS_ELM_MAX_LFN int "Maximal size of file name length" range 12 255 @@ -81,7 +84,7 @@ if RT_USING_DFS config RT_DFS_ELM_USE_ERASE bool "Enable sector erase feature" default n - + config RT_DFS_ELM_REENTRANT bool "Enable the reentrancy (thread safe) of the FatFs module" default y @@ -91,7 +94,7 @@ if RT_USING_DFS config RT_USING_DFS_DEVFS bool "Using devfs for device objects" default y - + config RT_USING_DFS_NET bool "Enable BSD socket operated by file system API" select RT_USING_LWIP @@ -140,23 +143,23 @@ if RT_USING_DFS config RT_UFFS_ECC_MODE_2 bool "2: Flash driver(or by hardware) calculate the ECC" - + config RT_UFFS_ECC_MODE_3 bool "3: Hardware calculate the ECC and automatically write to spare." endchoice - + config RT_UFFS_ECC_MODE int default 0 if RT_UFFS_ECC_MODE_0 default 1 if RT_UFFS_ECC_MODE_1 default 2 if RT_UFFS_ECC_MODE_2 default 3 if RT_UFFS_ECC_MODE_3 - + endif config RT_USING_DFS_NFS bool "Using NFS v3 client file system" - depends on RT_USING_LWIP + select RT_USING_LWIP default n if RT_USING_DFS_NFS diff --git a/components/net/Kconfig b/components/net/Kconfig index af375e6c03..f75ed461b1 100644 --- a/components/net/Kconfig +++ b/components/net/Kconfig @@ -27,7 +27,7 @@ config RT_USING_LWIP config RT_LWIP_IGMP bool "IGMP protocol" - default n + default y config RT_LWIP_ICMP bool "ICMP protocol" @@ -91,12 +91,12 @@ config RT_USING_LWIP config RT_LWIP_PPPOE bool "PPPoE protocol" default n - + config RT_LWIP_PPPOS bool "PPPoS protocol" default n endif - + config RT_MEMP_NUM_NETCONN int "the number of struct netconns" default 8 @@ -111,6 +111,7 @@ config RT_USING_LWIP config RT_LWIP_UDP_PCB_NUM int "the number of UDP socket" + default 8 if RT_USING_DFS_NFS default 4 if RT_LWIP_TCP diff --git a/components/net/lwip-2.0.2/src/netif/ethernetif.c b/components/net/lwip-2.0.2/src/netif/ethernetif.c index bd28815c4b..ba23528c58 100644 --- a/components/net/lwip-2.0.2/src/netif/ethernetif.c +++ b/components/net/lwip-2.0.2/src/netif/ethernetif.c @@ -173,10 +173,26 @@ static err_t eth_netif_device_init(struct netif *netif) netif->flags = (ethif->flags & 0xff); #if LWIP_IPV6 - netif->output_ip6 = ethip6_output; - netif->ip6_autoconfig_enabled = 1; - netif_create_ip6_linklocal_address(netif, 1); - netif->flags |= NETIF_FLAG_MLD6; + netif->output_ip6 = ethip6_output; + netif->ip6_autoconfig_enabled = 1; + netif_create_ip6_linklocal_address(netif, 1); + +#if LWIP_IPV6_MLD + netif->flags |= NETIF_FLAG_MLD6; + + /* + * For hardware/netifs that implement MAC filtering. + * All-nodes link-local is handled by default, so we must let the hardware know + * to allow multicast packets in. + * Should set mld_mac_filter previously. */ + if (netif->mld_mac_filter != NULL) + { + ip6_addr_t ip6_allnodes_ll; + ip6_addr_set_allnodes_linklocal(&ip6_allnodes_ll); + netif->mld_mac_filter(netif, &ip6_allnodes_ll, NETIF_ADD_MAC_FILTER); + } +#endif /* LWIP_IPV6_MLD */ + #endif /* LWIP_IPV6 */ /* set default netif */ |
