diff --git a/demos/host/host_os_none/host_os_none.uvopt b/demos/host/host_os_none/host_os_none.uvopt
index d54fd60d0..083fddd67 100644
--- a/demos/host/host_os_none/host_os_none.uvopt
+++ b/demos/host/host_os_none/host_os_none.uvopt
@@ -73,7 +73,7 @@
1
0
- 0
+ 1
8
@@ -465,7 +465,7 @@
1
0
- 1
+ 0
8
@@ -928,10 +928,10 @@
1
0
0
- 1
+ 0
0
- 122
- 142
+ 1
+ 1
0
..\src\msc_app.c
msc_app.c
@@ -1018,8 +1018,8 @@
0
0
0
- 147
- 166
+ 1
+ 1
0
..\..\..\tinyusb\host\hub.c
hub.c
@@ -1112,10 +1112,10 @@
1
0
0
- 17
+ 0
0
32
- 45
+ 38
0
..\..\..\tinyusb\hal\hal_lpc175x_6x.c
hal_lpc175x_6x.c
@@ -1162,7 +1162,7 @@
0
0
0
- 1
+ 15
34
0
..\..\..\tinyusb\class\cdc_host.c
@@ -1304,10 +1304,10 @@
1
0
0
- 63
+ 15
0
- 584
- 605
+ 3
+ 10
0
..\..\..\tinyusb\host\ohci\ohci.c
ohci.c
@@ -1726,7 +1726,7 @@
bsp lpc175x_6x
- 1
+ 0
0
0
0
@@ -1752,10 +1752,10 @@
1
0
0
- 0
+ 35
0
- 0
- 0
+ 74
+ 86
0
..\..\..\mcu\lpc175x_6x\LPC17xx_DriverLib\source\lpc17xx_clkpwr.c
lpc17xx_clkpwr.c
diff --git a/demos/host/host_os_none/host_os_none.uvproj b/demos/host/host_os_none/host_os_none.uvproj
index 4e639ebf4..734b6bbf8 100644
--- a/demos/host/host_os_none/host_os_none.uvproj
+++ b/demos/host/host_os_none/host_os_none.uvproj
@@ -347,7 +347,7 @@
0
0
- --gnu --c99 --diag_suppress=66
+ --gnu --c99
CORE_M4 TUSB_CFG_MCU=MCU_LPC43XX BOARD=BOARD_EA4357 TUSB_CFG_OS=TUSB_OS_NONE
..\src;..\..\..\mcu\lpc43xx\CMSIS_LPC43xx_DriverLib\inc;..\..\..\boards;..\..\..\tinyusb;..\..\..\vendor\fatfs
@@ -1877,7 +1877,7 @@
0
0
- --gnu --c99 --diag_suppress=66
+ --gnu --c99
TUSB_CFG_MCU=MCU_LPC175X_6X BOARD=BOARD_LPCXPRESSO1769 TUSB_CFG_OS=TUSB_OS_NONE
..\src;..\..\..\mcu\lpc175x_6x\CMSIS_CORE_LPC17xx\inc;..\..\..\mcu\lpc175x_6x\LPC17xx_DriverLib\include;..\..\..\boards;..\..\..\tinyusb;..\..\..\vendor\fatfs
diff --git a/tinyusb/class/cdc_rndis.h b/tinyusb/class/cdc_rndis.h
index 33df6cf6b..c610e5781 100644
--- a/tinyusb/class/cdc_rndis.h
+++ b/tinyusb/class/cdc_rndis.h
@@ -51,6 +51,10 @@
extern "C" {
#endif
+#ifdef __CC_ARM
+#pragma diag_suppress 66 // Suppress Keil warnings #66-D: enumeration value is out of "int" range
+#endif
+
/// RNDIS Message Types
typedef enum {
RNDIS_MSG_PACKET = 0x00000001UL, ///< The host and device use this to send network data to one another.
@@ -85,6 +89,10 @@ typedef enum {
RNDIS_STATUS_MEDIA_DISCONNECT = 0x4001000CUL ///< Device is disconnected from the medium.
}rndis_msg_status_t;
+#ifdef __CC_ARM
+#pragma diag_default 66 // return Keil 66 to normal severity
+#endif
+
//--------------------------------------------------------------------+
// MESSAGE STRUCTURE
//--------------------------------------------------------------------+
diff --git a/tinyusb/hal/hal_lpc175x_6x.c b/tinyusb/hal/hal_lpc175x_6x.c
index c04b1660c..c611656a6 100644
--- a/tinyusb/hal/hal_lpc175x_6x.c
+++ b/tinyusb/hal/hal_lpc175x_6x.c
@@ -41,6 +41,10 @@
#if TUSB_CFG_MCU == MCU_LPC175X_6X
+#ifdef __CC_ARM
+#pragma diag_suppress 66 // Suppress Keil warnings #66-D: enumeration value is out of "int" range
+#endif
+
//--------------------------------------------------------------------+
// IMPLEMENTATION
//--------------------------------------------------------------------+
diff --git a/tinyusb/host/ohci/ohci.c b/tinyusb/host/ohci/ohci.c
index 63b30e0ac..5bd7db475 100644
--- a/tinyusb/host/ohci/ohci.c
+++ b/tinyusb/host/ohci/ohci.c
@@ -79,6 +79,10 @@ enum {
OHCI_PERIODIC_START = 0x3E67
};
+#ifdef __CC_ARM
+#pragma diag_suppress 66 // Suppress Keil warnings #66-D: enumeration value is out of "int" range
+#endif
+
enum {
OHCI_INT_SCHEDULING_OVERUN_MASK = BIT_(0),
OHCI_INT_WRITEBACK_DONEHEAD_MASK = BIT_(1),
@@ -92,6 +96,10 @@ enum {
OHCI_INT_MASTER_ENABLE_MASK = BIT_(31),
};
+#ifdef __CC_ARM
+#pragma diag_default 66 // return Keil 66 to normal severity
+#endif
+
enum {
OHCI_RHPORT_CURRENT_CONNECT_STATUS_MASK = BIT_(0),
OHCI_RHPORT_PORT_ENABLE_STATUS_MASK = BIT_(1),