summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2014-03-14 11:59:39 +0700
committerhathach <[email protected]>2014-03-14 11:59:39 +0700
commit5e2ed2534ebc7576f028e09023bae923965c645e (patch)
tree1f613ccf069bcdb02d65ec91f3d1bb428a205e70
parent214af7e9885f100d4f4d1882e9305899b6afc2b7 (diff)
clean up warning in lpcxpresso
remove -Wpacked -Wpadded in gcc
-rw-r--r--demos/host/host_os_none/.cproject19
-rw-r--r--demos/host/src/cdc_serial_app.c8
-rw-r--r--demos/host/src/cli.c14
-rw-r--r--demos/host/src/keyboard_app.c7
-rw-r--r--demos/host/src/mouse_app.c7
-rw-r--r--demos/host/src/msc_app.c6
-rw-r--r--tinyusb/class/custom_class.h3
-rw-r--r--tinyusb/class/hid_host.c10
-rw-r--r--tinyusb/common/tusb_types.h7
-rw-r--r--tinyusb/host/hub.c2
-rw-r--r--tinyusb/host/usbh.c37
-rw-r--r--vendor/fatfs/diskio.c3
12 files changed, 77 insertions, 46 deletions
diff --git a/demos/host/host_os_none/.cproject b/demos/host/host_os_none/.cproject
index 7a8906709..1d510fa1a 100644
--- a/demos/host/host_os_none/.cproject
+++ b/demos/host/host_os_none/.cproject
@@ -1567,8 +1567,8 @@
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.crt.advproject.config.exe.debug.1239969983.636406670" moduleId="org.eclipse.cdt.core.settings" name="Board EA4357">
<macros>
<stringMacro name="CFLAGS_OFF" type="VALUE_TEXT" value=""/>
- <stringMacro name="CFLAGS" type="VALUE_TEXT" value="${CFLAGS_OFF}"/>
- <stringMacro name="CFLAGS_ON" type="VALUE_TEXT" value="-pedantic -Wextra -Wswitch-default -Wunsafe-loop-optimizations -Wcast-align -Wlogical-op -Wpacked-bitfield-compat -Wpadded -Wnested-externs -Wredundant-decls -Winline -Wpacked"/>
+ <stringMacro name="CFLAGS" type="VALUE_TEXT" value="${CFLAGS_ON}"/>
+ <stringMacro name="CFLAGS_ON" type="VALUE_TEXT" value="-Wextra -Wswitch-default -Wunsafe-loop-optimizations -Wcast-align -Wlogical-op -Wpacked-bitfield-compat -Wnested-externs -Wredundant-decls -Winline"/>
</macros>
<externalSettings/>
<extensions>
@@ -9369,8 +9369,8 @@
<storageModule moduleId="com.crt.config">
<projectStorage>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&#13;
&lt;TargetConfig&gt;&#13;
-&lt;Properties property_0="" property_3="NXP" property_4="LPC4330" property_count="5" version="1"/&gt;&#13;
-&lt;infoList vendor="NXP"&gt;&lt;info chip="LPC4330" match_id="0x0" name="LPC4330" resetscript="LPC18LPC43ExternalFLASHBootResetscript.scp" stub="crt_emu_lpc18_43_nxp"&gt;&lt;chip&gt;&lt;name&gt;LPC4330&lt;/name&gt;&#13;
+&lt;Properties property_0="" property_2="LPC18x7_43x7_2x512_BootA.cfx" property_3="NXP" property_4="LPC4357" property_count="5" version="1"/&gt;&#13;
+&lt;infoList vendor="NXP"&gt;&lt;info chip="LPC4357" flash_driver="LPC18x7_43x7_2x512_BootA.cfx" match_id="0x0" name="LPC4357" resetscript="LPC18LPC43InternalFLASHBootResetscript.scp" stub="crt_emu_lpc18_43_nxp"&gt;&lt;chip&gt;&lt;name&gt;LPC4357&lt;/name&gt;&#13;
&lt;family&gt;LPC43xx&lt;/family&gt;&#13;
&lt;vendor&gt;NXP (formerly Philips)&lt;/vendor&gt;&#13;
&lt;reset board="None" core="Real" sys="Real"/&gt;&#13;
@@ -9378,11 +9378,17 @@
&lt;memory can_program="true" id="Flash" is_ro="true" type="Flash"/&gt;&#13;
&lt;memory id="RAM" type="RAM"/&gt;&#13;
&lt;memory id="Periph" is_volatile="true" type="Peripheral"/&gt;&#13;
-&lt;memoryInstance derived_from="RAM" id="RamLoc128" location="0x10000000" size="0x20000"/&gt;&#13;
-&lt;memoryInstance derived_from="RAM" id="RamLoc72" location="0x10080000" size="0x12000"/&gt;&#13;
+&lt;memoryInstance derived_from="Flash" id="MFlashA512" location="0x1a000000" size="0x80000"/&gt;&#13;
+&lt;memoryInstance derived_from="Flash" id="MFlashB512" location="0x1b000000" size="0x80000"/&gt;&#13;
+&lt;memoryInstance derived_from="RAM" id="RamLoc32" location="0x10000000" size="0x8000"/&gt;&#13;
+&lt;memoryInstance derived_from="RAM" id="RamLoc40" location="0x10080000" size="0xa000"/&gt;&#13;
&lt;memoryInstance derived_from="RAM" id="RamAHB32" location="0x20000000" size="0x8000"/&gt;&#13;
&lt;memoryInstance derived_from="RAM" id="RamAHB16" location="0x20008000" size="0x4000"/&gt;&#13;
&lt;memoryInstance derived_from="RAM" id="RamAHB_ETB16" location="0x2000c000" size="0x4000"/&gt;&#13;
+&lt;prog_flash blocksz="0x2000" location="0x1a000000" maxprgbuff="0x400" progwithcode="TRUE" size="0x10000"/&gt;&#13;
+&lt;prog_flash blocksz="0x10000" location="0x1a010000" maxprgbuff="0x400" progwithcode="TRUE" size="0x70000"/&gt;&#13;
+&lt;prog_flash blocksz="0x2000" location="0x1b000000" maxprgbuff="0x400" progwithcode="TRUE" size="0x10000"/&gt;&#13;
+&lt;prog_flash blocksz="0x10000" location="0x1b010000" maxprgbuff="0x400" progwithcode="TRUE" size="0x70000"/&gt;&#13;
&lt;peripheralInstance derived_from="V7M_MPU" id="MPU" location="0xe000ed90"/&gt;&#13;
&lt;peripheralInstance derived_from="V7M_NVIC" id="NVIC" location="0xe000e000"/&gt;&#13;
&lt;peripheralInstance derived_from="V7M_DCR" id="DCR" location="0xe000edf0"/&gt;&#13;
@@ -9394,6 +9400,7 @@
&lt;peripheralInstance derived_from="EMC" id="EMC" location="0x40005000"/&gt;&#13;
&lt;peripheralInstance derived_from="USB0" id="USB0" location="0x40006000"/&gt;&#13;
&lt;peripheralInstance derived_from="USB1" id="USB1" location="0x40007000"/&gt;&#13;
+&lt;peripheralInstance derived_from="LCD" id="LCD" location="0x40008000"/&gt;&#13;
&lt;peripheralInstance derived_from="EEPROM" id="EEPROM" location="0x4000e000"/&gt;&#13;
&lt;peripheralInstance derived_from="ETHERNET" id="ETHERNET" location="0x40010000"/&gt;&#13;
&lt;peripheralInstance derived_from="ATIMER" id="ATIMER" location="0x40040000"/&gt;&#13;
diff --git a/demos/host/src/cdc_serial_app.c b/demos/host/src/cdc_serial_app.c
index 6c9e2359e..6226d44b9 100644
--- a/demos/host/src/cdc_serial_app.c
+++ b/demos/host/src/cdc_serial_app.c
@@ -61,7 +61,7 @@ static uint8_t received_bytes; // set by transfer complete callback
//--------------------------------------------------------------------+
void tusbh_cdc_mounted_cb(uint8_t dev_addr)
{ // application set-up
- printf("\na CDC device is mounted\n");
+ printf("\na CDC device (address %d) is mounted\n", dev_addr);
memclr_(serial_in_buffer, sizeof(serial_in_buffer));
memclr_(serial_out_buffer, sizeof(serial_out_buffer));
@@ -73,11 +73,13 @@ void tusbh_cdc_mounted_cb(uint8_t dev_addr)
void tusbh_cdc_unmounted_cb(uint8_t dev_addr)
{ // application tear-down
- printf("\na CDC device is unmounted\n");
+ printf("\na CDC device (address %d) is unmounted \n", dev_addr);
}
void tusbh_cdc_xfer_isr(uint8_t dev_addr, tusb_event_t event, cdc_pipeid_t pipe_id, uint32_t xferred_bytes)
{
+ (void) dev_addr; // compiler warnings
+
switch ( pipe_id )
{
case CDC_PIPE_DATA_IN:
@@ -119,6 +121,8 @@ void cdc_serial_app_init(void)
//------------- main task -------------//
OSAL_TASK_FUNCTION( cdc_serial_app_task ) (void* p_task_para)
{
+ (void) p_task_para;
+
OSAL_TASK_LOOP_BEGIN
//------------- send characters got from uart terminal to the first CDC device -------------//
diff --git a/demos/host/src/cli.c b/demos/host/src/cli.c
index 1dd2aadd9..da3f2efb8 100644
--- a/demos/host/src/cli.c
+++ b/demos/host/src/cli.c
@@ -206,11 +206,11 @@ void cli_poll(char ch)
//------------- Separate Command & Parameter -------------//
putchar('\n');
char* p_space = strchr(cli_buffer, ' ');
- uint32_t command_len = (p_space == NULL) ? strlen(cli_buffer) : (p_space - cli_buffer);
+ uint32_t command_len = (p_space == NULL) ? strlen(cli_buffer) : (uint32_t) (p_space - cli_buffer);
char* p_para = (p_space == NULL) ? (cli_buffer+command_len) : (p_space+1); // point to NULL-character or after space
//------------- Find entered command in lookup table & execute it -------------//
- uint32_t cmd_id;
+ uint8_t cmd_id;
for(cmd_id = CLI_CMDTYPE_COUNT - 1; cmd_id > CLI_CMDTYPE_unknown; cmd_id--)
{
if( 0 == strncmp(cli_buffer, cli_string_tbl[cmd_id], command_len) ) break;
@@ -230,8 +230,9 @@ void cli_poll(char ch)
//--------------------------------------------------------------------+
// UNKNOWN Command
//--------------------------------------------------------------------+
-cli_error_t cli_cmd_unknown(char * para)
+cli_error_t cli_cmd_unknown(char * p_para)
{
+ (void) p_para;
puts("unknown command, please type \"help\" for list of supported commands");
return CLI_ERROR_NONE;
}
@@ -239,10 +240,12 @@ cli_error_t cli_cmd_unknown(char * para)
//--------------------------------------------------------------------+
// HELP command
//--------------------------------------------------------------------+
-cli_error_t cli_cmd_help(char * para)
+cli_error_t cli_cmd_help(char * p_para)
{
+ (void) p_para;
+
puts("current supported commands are:");
- for(uint32_t cmd_id = CLI_CMDTYPE_help+1; cmd_id < CLI_CMDTYPE_COUNT; cmd_id++)
+ for(uint8_t cmd_id = CLI_CMDTYPE_help+1; cmd_id < CLI_CMDTYPE_COUNT; cmd_id++)
{
printf("%s\t%s\n", cli_string_tbl[cmd_id], cli_description_tbl[cmd_id]);
}
@@ -255,6 +258,7 @@ cli_error_t cli_cmd_help(char * para)
//--------------------------------------------------------------------+
cli_error_t cli_cmd_clear(char* p_para)
{
+ (void) p_para;
printf(ANSI_ERASE_SCREEN(2) ANSI_CURSOR_POSITION(1,1) );
return CLI_ERROR_NONE;
}
diff --git a/demos/host/src/keyboard_app.c b/demos/host/src/keyboard_app.c
index a6631a760..6a770a06d 100644
--- a/demos/host/src/keyboard_app.c
+++ b/demos/host/src/keyboard_app.c
@@ -67,8 +67,7 @@ static inline void process_kbd_report(hid_keyboard_report_t const * report);
void tusbh_hid_keyboard_mounted_cb(uint8_t dev_addr)
{
// application set-up
-
- puts("\na Keyboard device is mounted");
+ printf("\na Keyboard device (address %d) is mounted\n", dev_addr);
osal_queue_flush(queue_kbd_hdl);
tusbh_hid_keyboard_get_report(dev_addr, (uint8_t*) &usb_keyboard_report); // first report
@@ -77,7 +76,7 @@ void tusbh_hid_keyboard_mounted_cb(uint8_t dev_addr)
void tusbh_hid_keyboard_unmounted_cb(uint8_t dev_addr)
{
// application tear-down
- puts("\na Keyboard device is unmounted");
+ printf("\na Keyboard device (address %d) is unmounted\n", dev_addr);
}
void tusbh_hid_keyboard_isr(uint8_t dev_addr, tusb_event_t event)
@@ -115,6 +114,8 @@ void keyboard_app_init(void)
//------------- main task -------------//
OSAL_TASK_FUNCTION( keyboard_app_task ) (void* p_task_para)
{
+ (void) p_task_para;
+
hid_keyboard_report_t kbd_report;
tusb_error_t error;
diff --git a/demos/host/src/mouse_app.c b/demos/host/src/mouse_app.c
index 6fdba4591..0f1323a2e 100644
--- a/demos/host/src/mouse_app.c
+++ b/demos/host/src/mouse_app.c
@@ -66,8 +66,7 @@ static inline void process_mouse_report(hid_mouse_report_t const * p_report);
void tusbh_hid_mouse_mounted_cb(uint8_t dev_addr)
{
// application set-up
-
- puts("\na Mouse device is mounted");
+ printf("\na Mouse device (address %d) is mounted\n", dev_addr);
osal_queue_flush(queue_mouse_hdl);
(void) tusbh_hid_mouse_get_report(dev_addr, (uint8_t*) &usb_mouse_report); // first report
@@ -76,7 +75,7 @@ void tusbh_hid_mouse_mounted_cb(uint8_t dev_addr)
void tusbh_hid_mouse_unmounted_cb(uint8_t dev_addr)
{
// application tear-down
- puts("\na Mouse device is unmounted\n");
+ printf("\na Mouse device (address %d) is unmounted\n", dev_addr);
}
void tusbh_hid_mouse_isr(uint8_t dev_addr, tusb_event_t event)
@@ -116,6 +115,8 @@ void mouse_app_init(void)
//------------- main task -------------//
OSAL_TASK_FUNCTION( mouse_app_task ) (void* p_task_para)
{
+ (void) p_task_para;
+
tusb_error_t error;
hid_mouse_report_t mouse_report;
diff --git a/demos/host/src/msc_app.c b/demos/host/src/msc_app.c
index ddda6d3ab..fa1f0696d 100644
--- a/demos/host/src/msc_app.c
+++ b/demos/host/src/msc_app.c
@@ -132,7 +132,9 @@ void tusbh_msc_unmounted_cb(uint8_t dev_addr)
void tusbh_msc_isr(uint8_t dev_addr, tusb_event_t event, uint32_t xferred_bytes)
{
-
+ (void) dev_addr;
+ (void) event;
+ (void) xferred_bytes;
}
//--------------------------------------------------------------------+
@@ -147,6 +149,8 @@ void msc_app_init(void)
//------------- main task -------------//
OSAL_TASK_FUNCTION( msc_app_task ) (void* p_task_para)
{
+ (void) p_task_para;
+
OSAL_TASK_LOOP_BEGIN
bool is_any_disk_mounted;
diff --git a/tinyusb/class/custom_class.h b/tinyusb/class/custom_class.h
index 9bc4046fe..6fe219e3c 100644
--- a/tinyusb/class/custom_class.h
+++ b/tinyusb/class/custom_class.h
@@ -66,7 +66,8 @@ STATIC_ INLINE_ bool tusbh_custom_is_mounted(uint8_t dev_addr, uint16_t vendor_i
{
(void) vendor_id; // TODO check this later
(void) product_id;
- return (tusbh_device_get_mounted_class_flag(dev_addr) & BIT_(TUSB_CLASS_MAPPED_INDEX_END-1) ) != 0;
+// return (tusbh_device_get_mounted_class_flag(dev_addr) & BIT_(TUSB_CLASS_MAPPED_INDEX_END-1) ) != 0;
+ return false;
}
tusb_error_t tusbh_custom_read(uint8_t dev_addr, uint16_t vendor_id, uint16_t product_id, void * p_buffer, uint16_t length);
diff --git a/tinyusb/class/hid_host.c b/tinyusb/class/hid_host.c
index 450695b15..28a8a202a 100644
--- a/tinyusb/class/hid_host.c
+++ b/tinyusb/class/hid_host.c
@@ -66,8 +66,8 @@ static inline tusb_error_t hidh_interface_open(uint8_t dev_addr, uint8_t interfa
return TUSB_ERROR_NONE;
}
-static inline void hidh_interface_close(uint8_t dev_addr, hidh_interface_info_t *p_hid) ATTR_ALWAYS_INLINE;
-static inline void hidh_interface_close(uint8_t dev_addr, hidh_interface_info_t *p_hid)
+static inline void hidh_interface_close(hidh_interface_info_t *p_hid) ATTR_ALWAYS_INLINE;
+static inline void hidh_interface_close(hidh_interface_info_t *p_hid)
{
(void) hcd_pipe_close(p_hid->pipe_hdl);
memclr_(p_hid, sizeof(hidh_interface_info_t));
@@ -256,6 +256,8 @@ tusb_error_t hidh_open_subtask(uint8_t dev_addr, tusb_descriptor_interface_t con
void hidh_isr(pipe_handle_t pipe_hdl, tusb_event_t event, uint32_t xferred_bytes)
{
+ (void) xferred_bytes; // TODO may need to use this para later
+
#if TUSB_CFG_HOST_HID_KEYBOARD
if ( pipehandle_is_equal(pipe_hdl, keyboardh_data[pipe_hdl.dev_addr-1].pipe_hdl) )
{
@@ -282,7 +284,7 @@ void hidh_close(uint8_t dev_addr)
#if TUSB_CFG_HOST_HID_KEYBOARD
if ( pipehandle_is_valid( keyboardh_data[dev_addr-1].pipe_hdl ) )
{
- hidh_interface_close(dev_addr, &keyboardh_data[dev_addr-1]);
+ hidh_interface_close(&keyboardh_data[dev_addr-1]);
tusbh_hid_keyboard_unmounted_cb(dev_addr);
}
#endif
@@ -290,7 +292,7 @@ void hidh_close(uint8_t dev_addr)
#if TUSB_CFG_HOST_HID_MOUSE
if( pipehandle_is_valid( mouseh_data[dev_addr-1].pipe_hdl ) )
{
- hidh_interface_close(dev_addr, &mouseh_data[dev_addr-1]);
+ hidh_interface_close(&mouseh_data[dev_addr-1]);
tusbh_hid_mouse_unmounted_cb( dev_addr );
}
#endif
diff --git a/tinyusb/common/tusb_types.h b/tinyusb/common/tusb_types.h
index c950a7b66..72563e577 100644
--- a/tinyusb/common/tusb_types.h
+++ b/tinyusb/common/tusb_types.h
@@ -135,8 +135,7 @@ typedef enum {
TUSB_CLASS_PERSONAL_HEALTHCARE = 15 , ///< 15
TUSB_CLASS_AUDIO_VIDEO = 16 , ///< 16
- TUSB_CLASS_MAPPED_INDEX_START = 17 , // TODO compact & minimize this number
- TUSB_CLASS_MAPPED_INDEX_END = TUSB_CLASS_MAPPED_INDEX_START + 5,
+ TUSB_CLASS_MAPPED_INDEX_START = 17 , // TODO Map DIAGNOSTIC, WIRELESS_CONTROLLER, MISC, VENDOR_SPECIFIC to this to minimize the array
TUSB_CLASS_DIAGNOSTIC = 0xDC ,
TUSB_CLASS_WIRELESS_CONTROLLER = 0xE0 ,
@@ -153,7 +152,7 @@ typedef enum {
MISC_PROTOCOL_IAD = 1
}misc_protocol_type_t;
-typedef enum tusb_std_class_flag_{
+typedef enum {
TUSB_CLASS_FLAG_AUDIO = BIT_(TUSB_CLASS_AUDIO) , ///< 1
TUSB_CLASS_FLAG_CDC = BIT_(TUSB_CLASS_CDC) , ///< 2
TUSB_CLASS_FLAG_HID = BIT_(TUSB_CLASS_HID) , ///< 3
@@ -219,7 +218,7 @@ enum {
static inline uint8_t std_class_code_to_index(uint8_t std_class_code) ATTR_CONST ATTR_ALWAYS_INLINE;
static inline uint8_t std_class_code_to_index(uint8_t std_class_code)
{
- return (std_class_code <= TUSB_CLASS_AUDIO_VIDEO ) ? std_class_code :
+ return (std_class_code <= TUSB_CLASS_AUDIO_VIDEO ) ? std_class_code :
(std_class_code == TUSB_CLASS_DIAGNOSTIC ) ? TUSB_CLASS_MAPPED_INDEX_START :
(std_class_code == TUSB_CLASS_WIRELESS_CONTROLLER ) ? TUSB_CLASS_MAPPED_INDEX_START + 1 :
(std_class_code == TUSB_CLASS_MISC ) ? TUSB_CLASS_MAPPED_INDEX_START + 2 :
diff --git a/tinyusb/host/hub.c b/tinyusb/host/hub.c
index 051647018..5e6744c21 100644
--- a/tinyusb/host/hub.c
+++ b/tinyusb/host/hub.c
@@ -59,7 +59,7 @@ typedef struct {
}usbh_hub_t;
TUSB_CFG_ATTR_USBRAM usbh_hub_t hub_data[TUSB_CFG_HOST_DEVICE_MAX];
-TUSB_CFG_ATTR_USBRAM uint8_t hub_enum_buffer[sizeof(descriptor_hub_desc_t)];
+ATTR_ALIGNED(4) TUSB_CFG_ATTR_USBRAM STATIC_VAR uint8_t hub_enum_buffer[sizeof(descriptor_hub_desc_t)];
//OSAL_SEM_DEF(hub_enum_semaphore);
//static osal_semaphore_handle_t hub_enum_sem_hdl;
diff --git a/tinyusb/host/usbh.c b/tinyusb/host/usbh.c
index be7c3f42d..e6db37d4b 100644
--- a/tinyusb/host/usbh.c
+++ b/tinyusb/host/usbh.c
@@ -55,52 +55,56 @@
#define ENUM_QUEUE_DEPTH 5
// TODO fix/compress number of class driver
-static host_class_driver_t const usbh_class_drivers[TUSB_CLASS_MAPPED_INDEX_END] =
+static host_class_driver_t const usbh_class_drivers[] =
{
-#if HOST_CLASS_HID
+ #if HOST_CLASS_HID
[TUSB_CLASS_HID] = {
.init = hidh_init,
.open_subtask = hidh_open_subtask,
.isr = hidh_isr,
.close = hidh_close
},
-#endif
+ #endif
-#if TUSB_CFG_HOST_CDC
+ #if TUSB_CFG_HOST_CDC
[TUSB_CLASS_CDC] = {
.init = cdch_init,
.open_subtask = cdch_open_subtask,
.isr = cdch_isr,
.close = cdch_close
},
-#endif
+ #endif
-#if TUSB_CFG_HOST_MSC
+ #if TUSB_CFG_HOST_MSC
[TUSB_CLASS_MSC] = {
.init = msch_init,
.open_subtask = msch_open_subtask,
.isr = msch_isr,
.close = msch_close
},
-#endif
+ #endif
-#if TUSB_CFG_HOST_HUB
+ #if TUSB_CFG_HOST_HUB
[TUSB_CLASS_HUB] = {
.init = hub_init,
.open_subtask = hub_open_subtask,
.isr = hub_isr,
.close = hub_close
},
-#endif
+ #endif
-#if TUSB_CFG_HOST_CUSTOM_CLASS
+ #if TUSB_CFG_HOST_CUSTOM_CLASS
[TUSB_CLASS_MAPPED_INDEX_END-1] = {
.init = cush_init,
.open_subtask = cush_open_subtask,
.isr = cush_isr,
.close = cush_close
}
-#endif
+ #endif
+};
+
+enum {
+ USBH_CLASS_DRIVER_COUNT = sizeof(usbh_class_drivers) / sizeof(host_class_driver_t)
};
//--------------------------------------------------------------------+
@@ -162,7 +166,7 @@ tusb_error_t usbh_init(void)
}
//------------- class init -------------//
- for (uint8_t class_index = 1; class_index < TUSB_CLASS_MAPPED_INDEX_END; class_index++)
+ for (uint8_t class_index = 1; class_index < USBH_CLASS_DRIVER_COUNT; class_index++)
{
if (usbh_class_drivers[class_index].init)
{
@@ -296,7 +300,7 @@ static void usbh_device_unplugged(uint8_t hostid, uint8_t hub_addr, uint8_t hub_
usbh_devices[dev_addr].state != TUSB_DEVICE_STATE_UNPLUG)
{
// TODO Hub multiple level
- for (uint8_t class_index = 1; class_index < TUSB_CLASS_MAPPED_INDEX_END; class_index++)
+ for (uint8_t class_index = 1; class_index < USBH_CLASS_DRIVER_COUNT; class_index++)
{
if ((usbh_devices[dev_addr].flag_supported_class & BIT_(class_index)) &&
usbh_class_drivers[class_index].close)
@@ -412,9 +416,12 @@ tusb_error_t enumeration_body_subtask(void)
// Acknowledge Port Connection Change
OSAL_SUBTASK_INVOKED_AND_WAIT( hub_port_clear_feature_subtask(usbh_devices[0].hub_addr, usbh_devices[0].hub_port, HUB_FEATURE_PORT_CONNECTION_CHANGE), error );
- if ( ! ((hub_port_status_response_t *) enum_data_buffer)->status_change.connect_status ) SUBTASK_EXIT(TUSB_ERROR_NONE); // only handle connection change
+ hub_port_status_response_t * p_port_status;
+ p_port_status = ((hub_port_status_response_t *) enum_data_buffer);
+
+ if ( ! p_port_status->status_change.connect_status ) SUBTASK_EXIT(TUSB_ERROR_NONE); // only handle connection change
- if ( ! ((hub_port_status_response_t *) enum_data_buffer)->status_current.connect_status )
+ if ( ! p_port_status->status_current.connect_status )
{ // Disconnection event
usbh_device_unplugged(usbh_devices[0].core_id, usbh_devices[0].hub_addr, usbh_devices[0].hub_port);
diff --git a/vendor/fatfs/diskio.c b/vendor/fatfs/diskio.c
index ffcbbdfd0..83d20f1ba 100644
--- a/vendor/fatfs/diskio.c
+++ b/vendor/fatfs/diskio.c
@@ -126,8 +126,9 @@ DRESULT disk_write (BYTE pdrv, const BYTE* buff, DWORD sector, BYTE count)
/* [I/O] Parameter and data buffer */
DRESULT disk_ioctl (BYTE pdrv, BYTE cmd, void* buff)
{
- if (cmd != CTRL_SYNC) return RES_ERROR;
+ (void) buff; (void) pdrv; // compiler warnings
+ if (cmd != CTRL_SYNC) return RES_ERROR;
return RES_OK;
}