Skip to content

Tickless idle fixes/improvement #59

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 30 commits into from
Oct 3, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
0c7b04b
Fix tickless idle when stopping systick on zero...
jefftenney May 11, 2020
967acc9
Fix imminent tick rescheduled after tickless idle
jefftenney May 11, 2020
316b656
Fix tickless idle with alternate systick clocking
jefftenney May 21, 2020
18222af
Improve comments and name of preprocessor symbol
jefftenney Jun 23, 2020
a10184f
Revert introduction of 2nd name for NVIC register
jefftenney Jul 31, 2020
d904c9a
Merge remote-tracking branch 'upstream/master' into tickless-idle-imp…
jefftenney Sep 11, 2020
607f166
Merge branch 'master' into tickless-idle-improvements
cobusve Oct 22, 2020
85015c7
Merge branch 'master' into tickless-idle-improvements
cobusve Oct 23, 2020
aded661
Merge branch 'main' into tickless-idle-improvements
jefftenney Feb 9, 2021
cfabb61
Replicate to other Cortex M ports
jefftenney Feb 10, 2021
9ae578b
Revert changes to IAR-CM0-portmacro.h
jefftenney Feb 11, 2021
9b8fd32
Merge branch 'main' into tickless-idle-improvements
abhidixi11 May 5, 2021
a7c975a
Merge branch 'main' into tickless-idle-improvements
jefftenney Aug 17, 2021
6b10420
Merge branch 'main' into tickless-idle-improvements
n9wxu Dec 29, 2021
c271c2c
Merge branch 'main' into tickless-idle-improvements
n9wxu Dec 29, 2021
3fd2de8
Merge branch 'main' into tickless-idle-improvements
n9wxu Jan 7, 2022
493b3cf
Merge branch 'main' into tickless-idle-improvements
n9wxu Jan 10, 2022
62f68ec
Merge branch 'main' into tickless-idle-improvements
jefftenney Jan 29, 2022
5e6d000
Handle edge cases with slow SysTick clock
jefftenney Jan 29, 2022
8192434
Merge branch 'main' into tickless-idle-improvements
n9wxu Feb 1, 2022
ac5a74d
Merge branch 'main' into tickless-idle-improvements
jefftenney Feb 9, 2022
fa5fe39
Merge branch 'main' into tickless-idle-improvements
n9wxu Feb 16, 2022
9db8350
Merge branch 'main' into tickless-idle-improvements
n9wxu Feb 18, 2022
ce077f6
Merge branch 'main' into tickless-idle-improvements
n9wxu Feb 24, 2022
4327f77
Merge branch 'main' into tickless-idle-improvements
jefftenney Apr 8, 2022
df539cc
Merge branch 'main' into tickless-idle-improvements
n9wxu Aug 11, 2022
50a7bb5
Merge branch 'main' into tickless-idle-improvements
alfred2g Aug 16, 2022
b5e874f
Merge branch 'main' into tickless-idle-improvements
n9wxu Sep 21, 2022
0dc2a36
Merge branch 'main' into tickless-idle-improvements
n9wxu Sep 26, 2022
8b9fc40
Merge branch 'main' into tickless-idle-improvements
n9wxu Oct 3, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
460 changes: 259 additions & 201 deletions portable/ARMv8M/non_secure/port.c

Large diffs are not rendered by default.

296 changes: 175 additions & 121 deletions portable/CCS/ARM_CM3/port.c

Large diffs are not rendered by default.

296 changes: 175 additions & 121 deletions portable/CCS/ARM_CM4F/port.c

Large diffs are not rendered by default.

195 changes: 125 additions & 70 deletions portable/GCC/ARM_CM0/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/GCC/ARM_CM23/non_secure/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/GCC/ARM_CM23_NTZ/non_secure/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/GCC/ARM_CM3/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/GCC/ARM_CM33/non_secure/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/GCC/ARM_CM33_NTZ/non_secure/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/GCC/ARM_CM4F/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/GCC/ARM_CM7/r0p1/port.c

Large diffs are not rendered by default.

195 changes: 125 additions & 70 deletions portable/IAR/ARM_CM0/port.c

Large diffs are not rendered by default.

5 changes: 2 additions & 3 deletions portable/IAR/ARM_CM0/portmacro.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
*
*/


#ifndef PORTMACRO_H
#define PORTMACRO_H

Expand Down Expand Up @@ -80,8 +79,8 @@

/* Scheduler utilities. */
extern void vPortYield( void );
#define portNVIC_INT_CTRL ( ( volatile uint32_t * ) 0xe000ed04 )
#define portNVIC_PENDSVSET 0x10000000
#define portNVIC_INT_CTRL ( ( volatile uint32_t * ) 0xe000ed04 )
#define portNVIC_PENDSVSET 0x10000000
#define portYIELD() vPortYield()
#define portEND_SWITCHING_ISR( xSwitchRequired ) if( xSwitchRequired ) *( portNVIC_INT_CTRL ) = portNVIC_PENDSVSET
#define portYIELD_FROM_ISR( x ) portEND_SWITCHING_ISR( x )
Expand Down
460 changes: 259 additions & 201 deletions portable/IAR/ARM_CM23/non_secure/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/IAR/ARM_CM23_NTZ/non_secure/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/IAR/ARM_CM3/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/IAR/ARM_CM33/non_secure/port.c

Large diffs are not rendered by default.

460 changes: 259 additions & 201 deletions portable/IAR/ARM_CM33_NTZ/non_secure/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/IAR/ARM_CM4F/port.c

Large diffs are not rendered by default.

294 changes: 174 additions & 120 deletions portable/IAR/ARM_CM7/r0p1/port.c

Large diffs are not rendered by default.

301 changes: 177 additions & 124 deletions portable/MikroC/ARM_CM4F/port.c

Large diffs are not rendered by default.

189 changes: 128 additions & 61 deletions portable/RVDS/ARM_CM0/port.c

Large diffs are not rendered by default.

302 changes: 178 additions & 124 deletions portable/RVDS/ARM_CM3/port.c

Large diffs are not rendered by default.

302 changes: 178 additions & 124 deletions portable/RVDS/ARM_CM4F/port.c

Large diffs are not rendered by default.

302 changes: 178 additions & 124 deletions portable/RVDS/ARM_CM7/r0p1/port.c

Large diffs are not rendered by default.