mirror of
				https://github.com/FreeRTOS/FreeRTOS-Kernel.git
				synced 2025-11-03 18:49:02 +01:00 
			
		
		
		
	Add an assert to catch register overflow (#1265)
This commit is contained in:
		
							parent
							
								
									03db672b8f
								
							
						
					
					
						commit
						4ee6a1f22f
					
				
							
								
								
									
										2
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							@ -7,7 +7,7 @@ on:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
jobs:
 | 
			
		||||
  formatting:
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4.1.1
 | 
			
		||||
      - name: Check Formatting of FreeRTOS-Kernel Files
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										3
									
								
								.github/workflows/formatting.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/workflows/formatting.yml
									
									
									
									
										vendored
									
									
								
							@ -16,10 +16,11 @@ jobs:
 | 
			
		||||
    if: ${{ github.event.issue.pull_request &&
 | 
			
		||||
        ( ( github.event.comment.body == '/bot run uncrustify' ) ||
 | 
			
		||||
          ( github.event.comment.body == '/bot run formatting' ) ) }}
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
    - name: Apply Formatting Fix
 | 
			
		||||
      id: check-formatting
 | 
			
		||||
      uses: FreeRTOS/CI-CD-Github-Actions/formatting-bot@main
 | 
			
		||||
      with:
 | 
			
		||||
        exclude-dirs: portable
 | 
			
		||||
          
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/kernel-checks.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/kernel-checks.yml
									
									
									
									
										vendored
									
									
								
							@ -5,7 +5,7 @@ on: [push, pull_request]
 | 
			
		||||
jobs:
 | 
			
		||||
  kernel-checker:
 | 
			
		||||
    name: FreeRTOS Kernel Header Checks
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      # Install python 3
 | 
			
		||||
      - name: Tool Setup
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/unit-tests.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/unit-tests.yml
									
									
									
									
										vendored
									
									
								
							@ -3,7 +3,7 @@ on: [push, pull_request]
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  run:
 | 
			
		||||
    runs-on: ubuntu-20.04
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
    - name: Checkout Parent Repository
 | 
			
		||||
      uses: actions/checkout@v4.1.1
 | 
			
		||||
 | 
			
		||||
@ -415,6 +415,8 @@
 | 
			
		||||
 * number of the failing assert (for example, "vAssertCalled( __FILE__, __LINE__
 | 
			
		||||
 * )" or it can simple disable interrupts and sit in a loop to halt all
 | 
			
		||||
 * execution on the failing line for viewing in a debugger. */
 | 
			
		||||
 | 
			
		||||
/* *INDENT-OFF* */
 | 
			
		||||
#define configASSERT( x )         \
 | 
			
		||||
    if( ( x ) == 0 )              \
 | 
			
		||||
    {                             \
 | 
			
		||||
@ -422,6 +424,7 @@
 | 
			
		||||
        for( ; ; )                \
 | 
			
		||||
        ;                         \
 | 
			
		||||
    }
 | 
			
		||||
/* *INDENT-ON* */
 | 
			
		||||
 | 
			
		||||
/******************************************************************************/
 | 
			
		||||
/* FreeRTOS MPU specific definitions. *****************************************/
 | 
			
		||||
 | 
			
		||||
@ -246,7 +246,10 @@ void vCoRoutineSchedule( void );
 | 
			
		||||
 * \defgroup crSTART crSTART
 | 
			
		||||
 * \ingroup Tasks
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/* *INDENT-OFF* */
 | 
			
		||||
#define crEND()    }
 | 
			
		||||
/* *INDENT-ON* */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * These macros are intended for internal use by the co-routine implementation
 | 
			
		||||
 | 
			
		||||
@ -234,6 +234,11 @@ __attribute__(( weak )) void vApplicationSetupTickTimerInterrupt( void )
 | 
			
		||||
{
 | 
			
		||||
const uint32_t ulCompareMatch = ( (configPERIPHERAL_CLOCK_HZ / portTIMER_PRESCALE) / configTICK_RATE_HZ ) - 1UL;
 | 
			
		||||
 | 
			
		||||
    /* PR1 is 16-bit. Ensure that the configPERIPHERAL_CLOCK_HZ and
 | 
			
		||||
     * configTICK_RATE_HZ are defined such that ulCompareMatch value would fit
 | 
			
		||||
     * in 16-bits. */
 | 
			
		||||
    configASSERT( ( ulCompareMatch & 0xFFFF0000 ) == 0 );
 | 
			
		||||
 | 
			
		||||
    T1CON = 0x0000;
 | 
			
		||||
    T1CONbits.TCKPS = portPRESCALE_BITS;
 | 
			
		||||
    PR1 = ulCompareMatch;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user