Xiang Xiao
543f4ed8ec
arch/ all assertion functions: up_assert move the register dump to first make the more important info first
2018-11-11 12:53:59 -06:00
Xiang Xiao
dfe788be25
arch/ all assertion functinos: up_stackdump dump the full stack if stack overflow the stack info is very useful to find the backtrace
2018-11-11 12:52:36 -06:00
Xiang Xiao
e4106a3744
arch/ assertions files: up_registerdump capture the general register if not yet saved and up_saveusercontext is implemented, the register dump is very useful to find the cause of failure.
2018-11-11 12:50:50 -06:00
Gregory Nutt
2b3ec4172d
arch/: Add 'BOARD_ASSERT_RESET_VALUE' in config/Kconfig and replace reboot status '0' to 'CONFIG_BOARD_ASSERT_RESET_VALUE'.
2018-11-10 14:06:46 -06:00
Gregory Nutt
6d93658ff8
Add new configuratin CONFIG_NET_MCASTGROUP. This option is selected automatically if either CONFIG_NET_IGMP or CONFIG_NET_MLD are selected. Most conditional logic based on CONFIG_NET_IGMP replaced with conditioning on CONFIG_NET_MCASTGROUP.
2018-10-31 15:03:51 -06:00
Gregory Nutt
9bc951a335
Rename devif_loopback_out to devi_loopback
2018-08-25 08:33:21 -06:00
Xiang Xiao
0074afa0ac
net/netdev: add devif_loopback_out() to check the loopback case where a packet is being sent to itself. Modify the net driver to call this function in this case. This function will simply re-inject the packet back into the network and the network driver will not put anything on the wire.
2018-08-24 09:21:33 -06:00
Xiang Xiao
e1202d2ed3
Replace all ASSERT with DEBUGASSERT to save the code space
2018-08-24 06:58:30 -06:00
Xiang Xiao
a465b6f0d4
configs/: Change CONFIG_BOARD_RESET_ON_CRASH to CONFIG_BOARD_RESET_ON_ASSERT, arch/: Implement call to board_reset() if in all implementations of up_assert() when CONFIG_BOARD_RESET_ON_ASSERT=y.
2018-08-22 17:04:39 -06:00
Gregory Nutt
22cd0d47fa
This commit attempts remove some long standard confusion in naming and some actual problems that result from the naming confusion. The basic problem is the standard MTU does not include the size of the Ethernet header. For clarity, I changed the naming of most things called MTU to PKTSIZE. For example, CONFIG_NET_ETH_MTU is now CONFIG_NET_ETH_PKTSIZE.
...
This makes the user interface a little hostile. People thing of an MTU of 1500 bytes, but the corresponding packet is really 1514 bytes (including the 14 byte Ethernet header). A more friendly solution would configure the MTU (as before), but then derive the packet buffer size by adding the MAC header length. Instead, we define the packet buffer size then derive the MTU.
The MTU is not common currency in networking. On the wire, the only real issue is the MSS which is derived from MTU by subtracting the IP header and TCP header sizes (for the case of TCP). Now it is derived for the PKTSIZE by subtracting the IP header, the TCP header, and the MAC header sizes. So we should be all good and without the recurring 14 byte error in MTU's and MSS's.
Squashed commit of the following:
Trivial update to fix some spacing issues.
net/: Rename several macros containing _MTU to _PKTSIZE.
net/: Rename CONFIG_NET_SLIP_MTU to CONFIG_NET_SLIP_PKTSIZE and similarly for CONFIG_NET_TUN_MTU. These are not the MTU which does not include the size of the link layer header. These are the full size of the packet buffer memory (minus any GUARD bytes).
net/: Rename CONFIG_NET_6LOWPAN_MTU to CONFIG_NET_6LOWPAN_PKTSIZE and similarly for CONFIG_NET_TUN_MTU. These are not the MTU which does not include the size of the link layer header. These are the full size of the packet buffer memory (minus any GUARD bytes).
net/: Rename CONFIG_NET_ETH_MTU to CONFIG_NET_ETH_PKTSIZE. This is not the MTU which does not include the size of the link layer header. This is the full size of the packet buffer memory (minus any GUARD bytes).
net/: Rename the file d_mtu in the network driver structure to d_pktsize. That value saved there is not the MTU. The packetsize is the memory large enough to hold the maximum packet PLUS the size of the link layer header. The MTU does not include the link layer header.
2018-07-04 14:10:40 -06:00
Gregory Nutt
a94e3284b3
syslog: Enable is partial, crippled version of syslog_flush(); arch/: Call syslog_flush() from assertion handling logic.
2018-06-07 16:29:16 -06:00
Gregory Nutt
b54ffe858a
Standardization of some function headers.
2018-03-13 09:52:27 -06:00
Gregory Nutt
de6b13b3ab
Per OpenGroup.org, syslog -- and, hence, nonstandard vsyslog, and debug wrappers -- does not return a value. Rename _vsyslog to nx_vsyslog. Use internal nx_vsyslog in the few cases where a return value is required.
2018-03-04 08:07:07 -06:00
Gregory Nutt
7cf88d7dbd
Make sure that labeling is used consistently in all function headers.
2018-02-01 10:00:02 -06:00
Gregory Nutt
a8b6be4aaf
The existence of the network driver ioctl() method should depend on CONFIG_NETDEV_IOCTL rather than CONFIG_NETDEV_PHY_IOCTL. The former enables the method, the later enables a subset of possible driver IOCTLs. This change should be basically a no-operation. The affected ioctl methods only support those subset of driver IOCTLs selected by CONFIG_NETDEV_PHY_IOCTL and the network logic will tolerate a nul ioctl method.
2018-01-22 08:17:45 -06:00
Gregory Nutt
b6b16bf4da
Fix forward references that were mangled in last large changes.
2017-04-29 06:59:35 -06:00
Sebastien Lorquet
c70d797229
misc archs
2017-04-28 18:24:06 +02:00
Gregory Nutt
79256573e1
net: network drver now retains Ethernet MAC address in a union so that other link layer addresses may be used in a MULTILINK environment.
2017-04-22 11:10:30 -06:00
Gregory Nutt
a581e9206d
Convert remaining serial drivers to use use irq_attach.
2017-02-27 10:27:14 -06:00
Mark Schulte
b3222bbc8a
irq_dispatch: Add argument pointer to irq_dispatch
...
Provide a user defined callback context for irq's, such that when
registering a callback users can provide a pointer that will get
passed back when the isr is called.
2017-02-27 06:27:56 -06:00
Gregory Nutt
62a1f6f110
up_timer_initialize() is named incorrectly. The prefix should be the architecture name, not up_ since it is private to the architecture. up_timerisr() is similarly misnamed and should also be private since it is used only with the xyz_timerisr.c files. Also updat TODO list.
2017-02-07 10:35:04 -06:00
Gregory Nutt
934aded293
arch/: Adapt all Ethernet drivers to work as though CONFIG_NET_MULTIBUFFER were set. Remove all references to CONFIG_NET_MULTIBUFFER
2016-11-29 16:06:48 -06:00
Gregory Nutt
2b23d4b0e7
Correct some comments
2016-08-06 16:25:02 -06:00
Gregory Nutt
5a9519d636
Rename HCS12 version of CONFIG_GPIO_IRQ to CONFIG_HCS12_GPIOIRQ
2016-07-22 14:53:17 -06:00
Gregory Nutt
c00ad93165
Rename HC version of CONFIG_GPIO_IRQ to CONFIG_HCS12_GPIOIRQ
2016-07-22 14:46:54 -06:00
Gregory Nutt
7f16548f57
Replaces last three commits. Does the same thing, but does it in a way that does not change the usage model.
2016-06-21 05:26:08 -06:00
Gregory Nutt
c05da80a27
Eliminate a warning
2016-06-20 22:54:58 -06:00
Gregory Nutt
505ca542e8
Remove some last traces of lowvsyslog that were missed; Add a SYSLOG emergency channel for handling assertion output more cleanly
2016-06-20 16:11:50 -06:00
Gregory Nutt
43eb04bb8f
Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info().
2016-06-20 11:59:15 -06:00
Gregory Nutt
b39e53391d
Add underscore at beginning of alert() as well
2016-06-16 12:38:05 -06:00
Gregory Nutt
a97d3ae707
Centralize definitions associated with CONFIG_DEBUG_GPIO
2016-06-15 09:20:23 -06:00
Gregory Nutt
688e553d1d
arch/hc/: Change some *err() message to *info() messages if what was a *dbg() message does not indicate and error condition.
2016-06-14 12:38:40 -06:00
Gregory Nutt
a98bc05f65
New debug macro: alert(). This is high priority, unconditional output and is used to simplify and stanardize crash error reporting.
2016-06-14 09:07:53 -06:00
Gregory Nutt
0f249016a0
Eliminate some warnings
2016-06-13 14:01:32 -06:00
Gregory Nutt
a1469a3e95
Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err()
2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2
Rename *lldbg to *llerr
2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726
Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES
2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9
Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO
2016-06-11 11:50:18 -06:00
Gregory Nutt
5ef3e3e215
Replace confusing references to uIP with just 'the network'
2016-05-30 11:52:07 -06:00
Gregory Nutt
e2e6ce3f1b
Rename CONFIG_ARCH_HAVE_SCIn to CONFIG_SCIn_SERIALDRIVER
2016-05-25 10:46:55 -06:00
Gregory Nutt
48106e605a
Merge in arch/ submodule
2016-04-10 07:49:41 -06:00
Gregory Nutt
4d4f54a789
Rename current_regs to g_current_regs; For ARM, g_current_regs needs to be an array to support multiple CPUs
2016-03-09 13:41:48 -06:00
Gregory Nutt
9c63736c98
Standard some naming if code sectino comments
2016-02-21 18:06:09 -06:00
Gregory Nutt
83bc1c97c3
Rename irqsave() and irqrestore() to up_irq_save() and up_irq_restore()
2016-02-14 16:11:25 -06:00
Gregory Nutt
70e502adb0
Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section()
2016-02-13 19:11:09 -06:00
Gregory Nutt
2b8d1fcbdb
HC: Replace explicit references to g_readytorun with indirect references via the macro this_task()
2016-02-06 15:20:08 -06:00
Gregory Nutt
1166e311b0
Networking: Remove the HSEC argument from devif_timer.
2016-02-03 11:17:15 -06:00
Gregory Nutt
7a13837fdd
Remove the final vestiges of up_spiinitialize()
2016-01-27 09:26:14 -06:00
Gregory Nutt
a0ce222318
For M9S12 MCUs, rename up_spiinitialize to hcs12_spibus_initialize
2016-01-27 09:10:36 -06:00
Gregory Nutt
71c289ce4f
Rename all architecture files of form xyz_internal.h to just xyz.h
2015-12-29 18:07:11 -06:00
Gregory Nutt
79df561669
Rename board_led_off to board_autoled_off
2015-11-01 09:09:36 -06:00
Gregory Nutt
b28e32e3d3
Rename board_led_on to board_autoled_on
2015-11-01 09:07:06 -06:00
Gregory Nutt
6fc6d17760
Fix some spacing problems
2015-10-04 14:59:08 -06:00
Gregory Nutt
36726b1bc4
Standardize the width of all comment boxes in header files
2015-10-02 17:42:29 -06:00
Gregory Nutt
975d912b40
Cosmetic: Move # of pre-processior command to column 1
2015-09-05 09:07:37 -06:00
Gregory Nutt
e9a3cc3457
Remove the arch/ subdirectory; replace it with a submodule
2015-07-22 10:56:22 -06:00
Gregory Nutt
fb926e7283
Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation
2015-06-28 08:08:57 -06:00
Gregory Nutt
342f5fe33d
Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation
2015-06-28 08:08:57 -06:00
Gregory Nutt
7bd3d5eaf1
Clean up and review of header files for conformance to standards
2015-06-12 19:00:52 -06:00
Gregory Nutt
be0fb09250
Clean up and review of header files for conformance to standards
2015-06-12 19:00:52 -06:00
Gregory Nutt
ae15c6963c
Make some file section headers more consistent with standard
2015-04-08 08:04:12 -06:00
Gregory Nutt
16814e2b00
Make some file section headers more consistent with standard
2015-04-08 08:04:12 -06:00
Gregory Nutt
a5043d5e60
Add support for dumping board-specific information on assertion. From David Sidrane
2015-03-04 07:00:29 -06:00
Gregory Nutt
76007d28f5
Add support for dumping board-specific information on assertion. From David Sidrane
2015-03-04 07:00:29 -06:00
Gregory Nutt
429863f348
arch/: board function prototypes are now in include/nuttx/board.h. Remove from architecture header file; Add inclusion of nuttx/board.h to all files referencing board functions
2015-02-27 17:19:38 -06:00
Gregory Nutt
beaf976626
arch/: board function prototypes are now in include/nuttx/board.h. Remove from architecture header file; Add inclusion of nuttx/board.h to all files referencing board functions
2015-02-27 17:19:38 -06:00
Gregory Nutt
9588b0e7a7
All Ethernet drivers (again): Missed one place where arp_out() is called and neighber_out() needs to be called
2015-01-21 11:36:33 -06:00
Gregory Nutt
32d2a4c548
All Ethernet drivers (again): Missed one place where arp_out() is called and neighber_out() needs to be called
2015-01-21 11:36:33 -06:00
Gregory Nutt
723b7fc430
Networking: Modify all Ethernet drivers: Do neighbor look-up on all outgoing IPv6 packs in order to properly set the destination link layer address.
2015-01-20 15:52:25 -06:00
Gregory Nutt
1ad73c52b1
Networking: Modify all Ethernet drivers: Do neighbor look-up on all outgoing IPv6 packs in order to properly set the destination link layer address.
2015-01-20 15:52:25 -06:00
Gregory Nutt
f6063c3896
Networking: Add missing raw/packet socket support to all Ethernet drivers
2015-01-20 15:14:29 -06:00
Gregory Nutt
a53ae59284
Networking: Add missing raw/packet socket support to all Ethernet drivers
2015-01-20 15:14:29 -06:00
Gregory Nutt
07132f462f
Ethernet drivers: Use IFF_IS_IPv4 macro. Cannot rely on the EtherType being set correctly.
2015-01-20 06:26:14 -06:00
Gregory Nutt
92f440c20c
Ethernet drivers: Use IFF_IS_IPv4 macro. Cannot rely on the EtherType being set correctly.
2015-01-20 06:26:14 -06:00
Gregory Nutt
ac69e11a5f
Networking: All Ethernet drivers: Call ipv6_input if IPv6 is enabled and an IPv6 packet is received
2015-01-15 09:31:23 -06:00
Gregory Nutt
278c485229
Networking: All Ethernet drivers: Call ipv6_input if IPv6 is enabled and an IPv6 packet is received
2015-01-15 09:31:23 -06:00
Gregory Nutt
836a8b1625
- Rename devif_input() ipv4_input()
...
- Copy net/devif/devif_input.c to ipv6_input.c. Remove all IPv4-specific logic.
- Rename net/devif/devif_input.c to ipv4_input.c. Remove all IPv6-specific logic
- Split IPv4 header structure out as net_ipv4hdr_s from net_iphdr_s
2015-01-15 08:03:56 -06:00
Gregory Nutt
89538ac4a2
- Rename devif_input() ipv4_input()
...
- Copy net/devif/devif_input.c to ipv6_input.c. Remove all IPv4-specific logic.
- Rename net/devif/devif_input.c to ipv4_input.c. Remove all IPv6-specific logic
- Split IPv4 header structure out as net_ipv4hdr_s from net_iphdr_s
2015-01-15 08:03:56 -06:00
Gregory Nutt
6bc54c3541
Networking: Condition certain ARP logic on CONFIG_NET_ARP in all Ethernet drivers
2015-01-15 07:07:39 -06:00
Gregory Nutt
2f4aa0bde7
Networking: Condition certain ARP logic on CONFIG_NET_ARP in all Ethernet drivers
2015-01-15 07:07:39 -06:00
Gregory Nutt
bf984b2b3a
Netwoek: Ada a parameter to netdev_register() to indicate the link protocol supported by the driver. Use this value to replace some logic commited yesterday
2014-11-15 08:22:51 -06:00
Gregory Nutt
388ef8db1a
Netwoek: Ada a parameter to netdev_register() to indicate the link protocol supported by the driver. Use this value to replace some logic commited yesterday
2014-11-15 08:22:51 -06:00
Gregory Nutt
db9901e2f9
Update everything under nuttx/arch to use the corrected syslog interfaces
2014-10-08 12:48:47 -06:00
Gregory Nutt
7b310711a1
Update everything under nuttx/arch to use the corrected syslog interfaces
2014-10-08 12:48:47 -06:00
Gregory Nutt
31b8137956
There used to be two ways to pass parameters to new tasks, depending upon the configuration: Either (1) argv[] as created as an array with each string strdup'ed. Or (1) argv[] array and strings were created on the stack before the new task was started. Now, there is only one way, way (1). Way (2) might be slightly more compact, but this is not worth carry the complexity of two different ways of doing the same thing.
2014-09-01 15:39:34 -06:00
Gregory Nutt
64ab35b399
There used to be two ways to pass parameters to new tasks, depending upon the configuration: Either (1) argv[] as created as an array with each string strdup'ed. Or (1) argv[] array and strings were created on the stack before the new task was started. Now, there is only one way, way (1). Way (2) might be slightly more compact, but this is not worth carry the complexity of two different ways of doing the same thing.
2014-09-01 15:39:34 -06:00
Gregory Nutt
2bc16b2ba5
wdog.h does not contain any application interface, only internal OS interface. Further, it is non-standard. Move wdog.h from include/ to include/nuttx. For the same reason, move the description of the watchdog timer interfaces from the Users Guide to the Porting Guide.
2014-08-21 11:16:55 -06:00
Gregory Nutt
ad9b3f8ab8
wdog.h does not contain any application interface, only internal OS interface. Further, it is non-standard. Move wdog.h from include/ to include/nuttx. For the same reason, move the description of the watchdog timer interfaces from the Users Guide to the Porting Guide.
2014-08-21 11:16:55 -06:00
Gregory Nutt
6455f60c60
Remove os_internal.h it has been replace by several new header files under sched/. There have been some sneak inclusion paths via os_internal.h, so expect a few compilation errors for some architectures
2014-08-08 18:39:28 -06:00
Gregory Nutt
e1769b22f1
Remove os_internal.h it has been replace by several new header files under sched/. There have been some sneak inclusion paths via os_internal.h, so expect a few compilation errors for some architectures
2014-08-08 18:39:28 -06:00
Gregory Nutt
4dc151097e
Replace os_internal.h with sched/sched.h in files that actually reference something in sched.h
2014-08-08 17:53:55 -06:00
Gregory Nutt
d798dd37a7
Replace os_internal.h with sched/sched.h in files that actually reference something in sched.h
2014-08-08 17:53:55 -06:00
Gregory Nutt
1c99d53bb1
Move clock functions from sched/ to sched/clock
2014-08-08 14:43:02 -06:00
Gregory Nutt
d4b56eb3cc
Move clock functions from sched/ to sched/clock
2014-08-08 14:43:02 -06:00
Gregory Nutt
594083d870
Rename up_timerinit() to up_timer_initailize(); Add prototypes for candidate interfaces for the tickless OS; Don't build existing timer initialization logic if CONFIG_SCHED_TICKLESS is defined.
2014-08-06 16:26:01 -06:00
Gregory Nutt
736d3c169a
Rename up_timerinit() to up_timer_initailize(); Add prototypes for candidate interfaces for the tickless OS; Don't build existing timer initialization logic if CONFIG_SCHED_TICKLESS is defined.
2014-08-06 16:26:01 -06:00
Gregory Nutt
d7fe256821
NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed.
2014-07-04 19:13:08 -06:00
Gregory Nutt
60246e613b
NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed.
2014-07-04 19:13:08 -06:00
Gregory Nutt
99ce3a44d7
Remove all inclusion of uip.h
2014-07-04 16:58:22 -06:00