summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2019-01-29 19:39:34 +0700
committerhathach <[email protected]>2019-01-29 19:39:34 +0700
commit59c1b4b42773075690ae5a6c4262a18425e88cd7 (patch)
treeb4b82f2fd5b7f5319ae2e8fc4df11b665638b44c
parente4e8413acc6b293b620cae762fd4ea45c5de1cd1 (diff)
zero init internal class/device data
-rw-r--r--examples/device/cdc_msc_hid/Makefile8
-rw-r--r--src/class/cdc/cdc_device.c2
-rw-r--r--src/class/hid/hid_device.c2
-rw-r--r--src/class/msc/msc_device.c2
-rw-r--r--src/device/usbd.c2
5 files changed, 11 insertions, 5 deletions
diff --git a/examples/device/cdc_msc_hid/Makefile b/examples/device/cdc_msc_hid/Makefile
index 50a57d448..983365fc4 100644
--- a/examples/device/cdc_msc_hid/Makefile
+++ b/examples/device/cdc_msc_hid/Makefile
@@ -20,6 +20,7 @@ CC = $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
LD = $(CROSS_COMPILE)ld
OBJCOPY = $(CROSS_COMPILE)objcopy
+SIZE = $(CROSS_COMPILE)size
MKDIR = mkdir
SED = sed
CP = cp
@@ -87,7 +88,7 @@ SRC_C += $(LIB_SOURCE)
OBJ += $(addprefix $(BUILD)/obj/, $(SRC_C:.c=.o))
OBJ += $(addprefix $(BUILD)/obj/, $(SRC_S:.S=.o))
-all: $(BUILD)/$(BOARD)-firmware.bin
+all: $(BUILD)/$(BOARD)-firmware.bin size
OBJ_DIRS = $(sort $(dir $(OBJ)))
$(OBJ): | $(OBJ_DIRS)
@@ -123,5 +124,10 @@ $(BUILD)/obj/%.o: %.S
@echo AS $(notdir $@)
@$(CC) -x assembler-with-cpp $(ASFLAGS) -c -o $@ $<
+size: $(BUILD)/$(BOARD)-firmware.elf
+ -@echo ''
+ @$(SIZE) $<
+ -@echo ''
+
clean:
rm -rf build-$(BOARD)
diff --git a/src/class/cdc/cdc_device.c b/src/class/cdc/cdc_device.c
index b8678c1c4..0cfb2377b 100644
--- a/src/class/cdc/cdc_device.c
+++ b/src/class/cdc/cdc_device.c
@@ -85,7 +85,7 @@ typedef struct
//--------------------------------------------------------------------+
// INTERNAL OBJECT & FUNCTION DECLARATION
//--------------------------------------------------------------------+
-CFG_TUSB_MEM_SECTION static cdcd_interface_t _cdcd_itf[CFG_TUD_CDC];
+CFG_TUSB_MEM_SECTION static cdcd_interface_t _cdcd_itf[CFG_TUD_CDC] = { { 0 } };
//--------------------------------------------------------------------+
// APPLICATION API
diff --git a/src/class/hid/hid_device.c b/src/class/hid/hid_device.c
index 3b882f705..5f6843d90 100644
--- a/src/class/hid/hid_device.c
+++ b/src/class/hid/hid_device.c
@@ -91,7 +91,7 @@ typedef struct
hidd_interface_t* itf;
} hidd_report_t ;
-CFG_TUSB_MEM_SECTION static hidd_interface_t _hidd_itf[ITF_COUNT];
+CFG_TUSB_MEM_SECTION static hidd_interface_t _hidd_itf[ITF_COUNT] = { { 0 } };
#if CFG_TUD_HID_KEYBOARD
diff --git a/src/class/msc/msc_device.c b/src/class/msc/msc_device.c
index 5d2758414..76d647dcc 100644
--- a/src/class/msc/msc_device.c
+++ b/src/class/msc/msc_device.c
@@ -83,7 +83,7 @@ typedef struct {
uint8_t add_sense_qualifier;
}mscd_interface_t;
-CFG_TUSB_MEM_SECTION CFG_TUSB_MEM_ALIGN static mscd_interface_t _mscd_itf;
+CFG_TUSB_MEM_SECTION CFG_TUSB_MEM_ALIGN static mscd_interface_t _mscd_itf = { 0 };
CFG_TUSB_MEM_SECTION CFG_TUSB_MEM_ALIGN static uint8_t _mscd_buf[CFG_TUD_MSC_BUFSIZE];
//--------------------------------------------------------------------+
diff --git a/src/device/usbd.c b/src/device/usbd.c
index d4eccf0c4..5baea8460 100644
--- a/src/device/usbd.c
+++ b/src/device/usbd.c
@@ -61,7 +61,7 @@ typedef struct {
}usbd_device_t;
-static usbd_device_t _usbd_dev;
+static usbd_device_t _usbd_dev = { 0 };
// Auto descriptor is enabled, descriptor set point to auto generated one
#if CFG_TUD_DESC_AUTO