diff --git a/bsps/arm/altera-cyclone-v/contrib/hwlib/src/hwmgr/alt_clock_manager.c b/bsps/arm/altera-cyclone-v/contrib/hwlib/src/hwmgr/alt_clock_manager.c index 436a733971..728728b46b 100644 --- a/bsps/arm/altera-cyclone-v/contrib/hwlib/src/hwmgr/alt_clock_manager.c +++ b/bsps/arm/altera-cyclone-v/contrib/hwlib/src/hwmgr/alt_clock_manager.c @@ -45,6 +45,9 @@ #include #include #include +#ifdef __rtems__ +#include +#endif /* __rtems__ */ #define UINT12_MAX (4096) @@ -4693,6 +4696,9 @@ ALT_STATUS_CODE alt_clk_freq_get(ALT_CLK_t clk, alt_freq_t* freq) case ALT_CLK_NAND: denom = 4; // the absence of a break statement here is not a mistake +#ifdef __rtems__ + RTEMS_FALL_THROUGH(); +#endif /* __rtems__ */ case ALT_CLK_NAND_X: temp = ALT_CLKMGR_PERPLL_SRC_NAND_GET(alt_read_word(ALT_CLKMGR_PERPLL_SRC_ADDR)); if (temp == ALT_CLKMGR_PERPLL_SRC_NAND_E_F2S_PERIPH_REF_CLK) diff --git a/bsps/arm/csb337/umon/monlib.c b/bsps/arm/csb337/umon/monlib.c index 44c9ec01d0..b6a594cfca 100644 --- a/bsps/arm/csb337/umon/monlib.c +++ b/bsps/arm/csb337/umon/monlib.c @@ -46,6 +46,9 @@ #define _INSIDE_MONLIB #include +#ifdef __rtems__ +#include +#endif /* __rtems__ */ static int (*_tfsseek)(int,int,int); static int (*_tfsgetline)(int,char *,int); static int (*_tfsipmod)(char *,char *,int,int); @@ -386,6 +389,9 @@ monUnlock(void) break; case 2: ignorelock--; +#ifdef __rtems__ + RTEMS_FALL_THROUGH(); +#endif default: _monunlock(); break; diff --git a/bsps/i386/pc386/console/i386-stub.c b/bsps/i386/pc386/console/i386-stub.c index e9fe4c7b8a..1107d8c843 100644 --- a/bsps/i386/pc386/console/i386-stub.c +++ b/bsps/i386/pc386/console/i386-stub.c @@ -1023,7 +1023,9 @@ handle_exception (int exceptionVector) break; case '2': reg = 1; + RTEMS_FALL_THROUGH(); case '3': + RTEMS_FALL_THROUGH(); case '4': default: reg = 3; diff --git a/bsps/i386/pc386/console/inch.c b/bsps/i386/pc386/console/inch.c index 71e8ce8ba8..514a68fd24 100644 --- a/bsps/i386/pc386/console/inch.c +++ b/bsps/i386/pc386/console/inch.c @@ -137,6 +137,7 @@ _IBMPC_scankey(char *outChar) case 0x2a: if (extended) return false; + RTEMS_FALL_THROUGH(); case 0x36: shift_pressed = 1; return false; @@ -144,6 +145,7 @@ _IBMPC_scankey(char *outChar) case 0xaa: if (extended) return false; + RTEMS_FALL_THROUGH(); case 0xb6: shift_pressed = 0; return false; diff --git a/bsps/powerpc/beatnik/marvell/discovery.c b/bsps/powerpc/beatnik/marvell/discovery.c index 1d84ac3a01..1383544031 100644 --- a/bsps/powerpc/beatnik/marvell/discovery.c +++ b/bsps/powerpc/beatnik/marvell/discovery.c @@ -134,6 +134,7 @@ printk("config data is %p\n", BSP_pci_configuration.pci_config_data); case 0x20: return (rval = GT_64260_B); } + RTEMS_FALL_THROUGH(); default: if ( assertion ) { diff --git a/bsps/powerpc/gen5200/mscan/mscan.c b/bsps/powerpc/gen5200/mscan/mscan.c index 15bbfde758..1fa586eee7 100644 --- a/bsps/powerpc/gen5200/mscan/mscan.c +++ b/bsps/powerpc/gen5200/mscan/mscan.c @@ -176,18 +176,25 @@ static void mpc5200_mscan_interrupt_handler(rtems_irq_hdl_param handle) switch (m->txdlr) { case 8: m->txdsr7 = tx_mess_ptr->mess_data[7]; + RTEMS_FALL_THROUGH(); case 7: m->txdsr6 = tx_mess_ptr->mess_data[6]; + RTEMS_FALL_THROUGH(); case 6: m->txdsr5 = tx_mess_ptr->mess_data[5]; + RTEMS_FALL_THROUGH(); case 5: m->txdsr4 = tx_mess_ptr->mess_data[4]; + RTEMS_FALL_THROUGH(); case 4: m->txdsr3 = tx_mess_ptr->mess_data[3]; + RTEMS_FALL_THROUGH(); case 3: m->txdsr2 = tx_mess_ptr->mess_data[2]; + RTEMS_FALL_THROUGH(); case 2: m->txdsr1 = tx_mess_ptr->mess_data[1]; + RTEMS_FALL_THROUGH(); case 1: m->txdsr0 = tx_mess_ptr->mess_data[0]; break; @@ -278,20 +285,28 @@ static void mpc5200_mscan_interrupt_handler(rtems_irq_hdl_param handle) switch (rx_mess_ptr->mess_len) { case 8: rx_mess_ptr->mess_data[7] = m->rxdsr7; + RTEMS_FALL_THROUGH(); case 7: rx_mess_ptr->mess_data[6] = m->rxdsr6; + RTEMS_FALL_THROUGH(); case 6: rx_mess_ptr->mess_data[5] = m->rxdsr5; + RTEMS_FALL_THROUGH(); case 5: rx_mess_ptr->mess_data[4] = m->rxdsr4; + RTEMS_FALL_THROUGH(); case 4: rx_mess_ptr->mess_data[3] = m->rxdsr3; + RTEMS_FALL_THROUGH(); case 3: rx_mess_ptr->mess_data[2] = m->rxdsr2; + RTEMS_FALL_THROUGH(); case 2: rx_mess_ptr->mess_data[1] = m->rxdsr1; + RTEMS_FALL_THROUGH(); case 1: rx_mess_ptr->mess_data[0] = m->rxdsr0; + RTEMS_FALL_THROUGH(); case 0: default: break; @@ -1161,6 +1176,7 @@ rtems_device_driver mscan_control(rtems_device_major_number major, break; } + RTEMS_FALL_THROUGH(); /* set tx buffer ID */ case MSCAN_SET_TX_ID: diff --git a/bsps/powerpc/shared/cpuIdent.c b/bsps/powerpc/shared/cpuIdent.c index 96a79449a0..e171315248 100644 --- a/bsps/powerpc/shared/cpuIdent.c +++ b/bsps/powerpc/shared/cpuIdent.c @@ -169,6 +169,7 @@ ppc_cpu_id_t get_ppc_cpu_type(void) case PPC_7455: case PPC_7457: current_ppc_features.has_8_bats = 1; + RTEMS_FALL_THROUGH(); case PPC_7400: /* NOTE: PSIM PVR doesn't tell us anything (its * contents are not set based on what model @@ -181,12 +182,14 @@ ppc_cpu_id_t get_ppc_cpu_type(void) */ case PPC_PSIM: current_ppc_features.has_altivec = 1; + RTEMS_FALL_THROUGH(); case PPC_604: case PPC_604e: case PPC_604r: case PPC_750: case PPC_750_IBM: current_ppc_features.has_hw_ptbl_lkup = 1; + RTEMS_FALL_THROUGH(); case PPC_8260: case PPC_8245: case PPC_601: @@ -195,6 +198,7 @@ ppc_cpu_id_t get_ppc_cpu_type(void) case PPC_603ev: case PPC_603le: current_ppc_features.is_60x = 1; + RTEMS_FALL_THROUGH(); default: break; } diff --git a/bsps/powerpc/shared/vme/vmeTsi148.c b/bsps/powerpc/shared/vme/vmeTsi148.c index 0a384836b1..a5068c6872 100644 --- a/bsps/powerpc/shared/vme/vmeTsi148.c +++ b/bsps/powerpc/shared/vme/vmeTsi148.c @@ -623,6 +623,7 @@ unsigned long tm = TSI_TM_SCT_IDX; case 3: tm = TSI_TM_BLT_IDX; break; default: break; } + RTEMS_FALL_THROUGH(); case VME_AM_STD_SUP_DATA: case VME_AM_STD_USR_DATA: @@ -645,6 +646,7 @@ unsigned long tm = TSI_TM_SCT_IDX; case 3: tm = TSI_TM_BLT_IDX; break; default: break; } + RTEMS_FALL_THROUGH(); case VME_AM_EXT_SUP_DATA: case VME_AM_EXT_USR_DATA: diff --git a/bsps/shared/grlib/slink/grslink.c b/bsps/shared/grlib/slink/grslink.c index d4cdcae868..7d838f8311 100644 --- a/bsps/shared/grlib/slink/grslink.c +++ b/bsps/shared/grlib/slink/grslink.c @@ -281,6 +281,9 @@ static rtems_isr SLINK_interrupt_handler(void *v) cfg->rword = wrd; break; } +#ifdef __rtems__ + RTEMS_FALL_THROUGH(); +#endif default: /* Unsolicited request */ SLINK_enqueue(wrd); break;