- Nov 22, 2016
-
-
Gregory Nutt authored
SMP: Add logic to avoid a deadlock condition when CPU1 is hung waiting for g_cpu_irqlock and CPU0 is waitin for g_cpu_paused
-
Gregory Nutt authored
-
Sebastien Lorquet authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Sebastien Lorquet authored
The examples/qencoder app was trying to init the encoder by a direct call into the board, cheating in a local header to declare the normally unavailable function prototype.
-
- Nov 21, 2016
-
-
Gregory Nutt authored
-
Gregory Nutt authored
Remove a assertion condition that appears to rarely cause false-alarm assertions. Teported by Petteri Aimonen
-
Gregory Nutt authored
-
Gregory Nutt authored
Spinlocks: Added capability to provide architecture-specific memory barriers. This was for i.MX6 but does not help with the SMP problems. It is still a good feature.
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
- Nov 20, 2016
-
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
This commit adds a new internal interfaces and fixes a problem with three APIs in the SMP configuration. The new internal interface is sched_cpu_pause(tcb). This function will pause a CPU if the task associated with 'tcb' is running on that CPU. This allows a different CPU to modify that OS data stuctures associated with the CPU. When the other CPU is resumed, those modifications can safely take place. The three fixes are to handle cases in the SMP configuration where one CPU does need to make modifications to TCB and data structures on a task that could be running running on another CPU. Those three cases are task_delete(), task_restart(), and execution of signal handles. In all three cases the solutions is basically the same: (1) Call sched_cpu_pause(tcb) to pause the CPU on which the task is running, (2) perform the necessary operations, then (3) call up_cpu_resume() to restart the paused CPU.
-
- Nov 19, 2016
-
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Gregory Nutt authored
-
Rajan Gill authored
sched/clock: Correct calculation for the case of Tickless mode with a 32-bit timer. In that case, the calculation was returning millisecond accuracy. That is not good when the timer accuracy is < 1 msec.
-
Gregory Nutt authored
Refresh all networking configurations due to changes in work-queue related configuration variables for Ethernet drivers.
-
Gregory Nutt authored
arch/: Add option to use low-priority work queue to all Ethernet drivers in arch that support CONFIG_NET_NOINTS.
-
Gregory Nutt authored
-
Gregory Nutt authored
vfork(): Fix a race condition in the SMP case. Existing logic depended on the fact that the child would not run until waitpid was called because the child had the same priority as the parent. BUT in the SMP case that is not true... the child may run immediately on a different CPU.
-
Gregory Nutt authored
-
Gregory Nutt authored
Master
-
Gregory Nutt authored
STM32: STM32F303xB and STM32F303xC chips have 4 ADCs
-
Wolfgang Reißnegger authored
-
Wolfgang Reißnegger authored
-
Wolfgang Reißnegger authored
-
Wolfgang Reißnegger authored
The flag is not necessary. The state of the endpoint can be determined using 'epstate' instead.
-
Wolfgang Reißnegger authored
-
Wolfgang Reißnegger authored
We need to add a delay between setting and clearing the endpoint reset bit in SAM_UDP_RSTEP. Without the delay the USB controller will (may?) not reset the endpoint. If the endpoint is not being reset, the Data Toggle (DTGLE) bit will not to be cleared which will cause the next transaction to fail if DTGLE is 1. If that happens the host will time-out and reset the bus. Adding this delay may also fix the USBMSC_STALL_RACEWAR in usbmsc_scsi.c, however this has not been verified yet.
-