Commit Graph

510 Commits

Author SHA1 Message Date
NIIBE Yutaka
b0986cdb09 Fix preemption.
Consider the sequence:

   chx_handle_intr -> chx_handle_intr -> preempt

We can't use R0 passing as an argument to preempt.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2021-02-05 11:26:20 +09:00
NIIBE Yutaka
c3f00e1c69 cortex-m: Multiple interrupts handling may occur on Cortex-M3 too.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2021-02-05 10:54:41 +09:00
NIIBE Yutaka
6d46ea2a4c cortex-m: Don't share return path between PREEMPT and SVC.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2021-02-05 10:49:09 +09:00
NIIBE Yutaka
7035103a49 Fix the previous commit.
Handle the case when multiple interrupts are active simultaneously.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2021-02-05 09:38:38 +09:00
NIIBE Yutaka
8b6c1ebd24 Fixes for FSM-55.
I realized that tail-chaining doesn't work with STM32F0.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2021-02-04 15:32:23 +09:00
NIIBE Yutaka
34e7673871 Version 2.0.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
release/2.0
2020-06-26 10:03:26 +09:00
NIIBE Yutaka
0e5342b54f doc: Update doc/chopstx-api.texi.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2020-06-24 10:54:43 +09:00
NIIBE Yutaka
afd1339c58 Add chopstx_critical.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2020-06-23 13:29:14 +09:00
NIIBE Yutaka
86d805620c Revert "Fix EP0 receiving more packets."
This reverts commit 3507027e98.

--

Thanks to Jeremy Drake to catch this questionable change.

While the value LEN is used for drivers for other machines to prepare
receiving buffer in hardware USB core, it is not used in STM32F103
which has dedicated hardware memory in the USB core.
2020-01-06 09:58:10 +09:00
NIIBE Yutaka
22fc473eb5 Revert "Add a ChangeLog entry for USB fix."
This reverts commit fe451d6d8a.
2020-01-06 09:57:50 +09:00
NIIBE Yutaka
22a7d6c998 Fix USB driver of GD32VF1 and example-lcd.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:54:40 +09:00
NIIBE Yutaka
99023a1126 Update example-lcd.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:49:35 +09:00
NIIBE Yutaka
76f962fbdd Fix SPI driver.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:47:26 +09:00
NIIBE Yutaka
228d1d06ce Add USB driver for GD32VF103.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:42:22 +09:00
NIIBE Yutaka
167741bdc8 chopstx-gnu-linux.c: cosmetic change.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:37:33 +09:00
NIIBE Yutaka
334240bfe3 board/board-longan-nano.h: Modify Port B config.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:34:29 +09:00
NIIBE Yutaka
a006cb7d0a Add ChangeLog entry.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:26:29 +09:00
NIIBE Yutaka
4f7da4812e chopstx_poll: More change.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:24:51 +09:00
NIIBE Yutaka
50a5951422 Fix chopstx_poll for condition variables, check after woken up.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-27 09:18:11 +09:00
NIIBE Yutaka
8b4ecad359 example-cdc,etc.: Bug fix of examples.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-20 14:40:45 +09:00
NIIBE Yutaka
fe451d6d8a Add a ChangeLog entry for USB fix.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-20 08:31:27 +09:00
NIIBE Yutaka
3507027e98 Fix EP0 receiving more packets.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-20 08:30:49 +09:00
NIIBE Yutaka
746388331c Fix GNU/Linux emulation about termination of a thread.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-04 13:47:29 +09:00
NIIBE Yutaka
6ce92cc0e8 Add rules for RISC-V.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:47:55 +09:00
NIIBE Yutaka
6e1c791b04 Add example-lcd for Longan nano board.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:41:17 +09:00
NIIBE Yutaka
1dbd9811c2 Factoring of USART driver for GD32VF103. 2019-12-03 13:38:47 +09:00
NIIBE Yutaka
2de23d5fd6 Add missing spi.h.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:33:40 +09:00
NIIBE Yutaka
07d1911c2b Add Longan Nano support.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:30:42 +09:00
NIIBE Yutaka
214066fd82 Add RISC-V 32 IMAC support.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:27:16 +09:00
NIIBE Yutaka
51f2ca841f Add SPI driver.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:18:49 +09:00
NIIBE Yutaka
1978ca25b6 Merge the change in RISC-V branch.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:15:56 +09:00
NIIBE Yutaka
913266d6e4 Include arch specific header and implementation by ARCH.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-12-03 13:09:25 +09:00
NIIBE Yutaka
de301bf025 Merge the change for GNU/Linux from riscv branch.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-25 09:53:50 +09:00
NIIBE Yutaka
823ebe222c Rename to preempted_context_switch (GNU/Linux).
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-22 08:55:01 +09:00
NIIBE Yutaka
2841efd9e5 Add an idea of chopstx_critical.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-22 08:55:01 +09:00
NIIBE Yutaka
b17834876f Fix the previous commit.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-21 15:04:40 +09:00
NIIBE Yutaka
86c21fbf5c Common chx_sched and arch specific voluntary_context_switch.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-21 12:37:02 +09:00
NIIBE Yutaka
bbb952429a Fix the previous change.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-21 11:30:44 +09:00
NIIBE Yutaka
cffc8bf96c Removal of CHOPSTX_PRIO_INHIBIT_PREEMPTION.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-21 10:35:14 +09:00
NIIBE Yutaka
89523f22bf more clean up.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-21 08:01:25 +09:00
NIIBE Yutaka
0e5994506a Version 1.17.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
release/1.17
2019-11-20 11:32:27 +09:00
NIIBE Yutaka
bdbc84ba18 chx_running for GNU/Linux port.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-20 11:24:21 +09:00
NIIBE Yutaka
c73258138c Use chx_running function.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-19 08:40:38 +09:00
NIIBE Yutaka
2180ed24be Rename internal functions to express meaning well.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-18 13:04:12 +09:00
NIIBE Yutaka
b70de1b98d Change chx_ready_pop implementation.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-18 11:55:22 +09:00
NIIBE Yutaka
355482550b New: ticks_to_usec.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-18 08:28:05 +09:00
NIIBE Yutaka
858a9f5d01 Have a entry-gnu-linux.c.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-18 08:25:56 +09:00
NIIBE Yutaka
c7b83fd51c Move CHOPSTX_THREAD_SIZE, it's core specific.
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-11-18 08:13:33 +09:00
Jeremy Drake
8e55209f33 Fix USB driver. 2019-10-07 16:07:31 +09:00
NIIBE Yutaka
4bde2ae1fc Fix USB drivers.
Thanks to Jeremy Drake for the report.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2019-09-04 08:57:47 +09:00