Change in osmo-ccid-firmware[master]: add ASFv4 M2M middleware

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Kévin Redon gerrit-no-reply at lists.osmocom.org
Tue Apr 16 23:29:21 UTC 2019


Kévin Redon has uploaded this change for review. ( https://gerrit.osmocom.org/13675


Change subject: add ASFv4 M2M middleware
......................................................................

add ASFv4 M2M middleware

Change-Id: Ib07755b2c5974af70817f5460fb0f358c631452a
---
M sysmoOCTSIM/AtmelStart.gpdsc
M sysmoOCTSIM/atmel_start.c
M sysmoOCTSIM/atmel_start.h
M sysmoOCTSIM/atmel_start_config.atstart
M sysmoOCTSIM/config/hpl_dmac_config.h
A sysmoOCTSIM/dma_m2m/dma_memory.c
A sysmoOCTSIM/dma_m2m/dma_memory.h
A sysmoOCTSIM/dma_m2m/dma_memory_config.h
A sysmoOCTSIM/documentation/dma_m2m.rst
M sysmoOCTSIM/gcc/Makefile
10 files changed, 359 insertions(+), 19 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ccid-firmware refs/changes/75/13675/1

diff --git a/sysmoOCTSIM/AtmelStart.gpdsc b/sysmoOCTSIM/AtmelStart.gpdsc
index 5d35944..05dcb15 100644
--- a/sysmoOCTSIM/AtmelStart.gpdsc
+++ b/sysmoOCTSIM/AtmelStart.gpdsc
@@ -164,6 +164,9 @@
         <file category="header" condition="ARMCC, GCC, IAR" name="usb/usb_includes.h"/>
         <file category="source" condition="ARMCC, GCC, IAR" name="usb/usb_protocol.c"/>
         <file category="header" condition="ARMCC, GCC, IAR" name="usb/usb_protocol.h"/>
+        <file category="source" condition="ARMCC, GCC, IAR" name="dma_m2m/dma_memory.c"/>
+        <file category="header" condition="ARMCC, GCC, IAR" name="dma_m2m/dma_memory.h"/>
+        <file category="doc" condition="ARMCC, GCC, IAR" name="documentation/dma_m2m.rst"/>
         <file category="doc" condition="ARMCC, GCC, IAR" name="documentation/stdio.rst"/>
         <file category="source" condition="GCC" name="stdio_redirect/gcc/read.c"/>
         <file category="source" condition="GCC" name="stdio_redirect/gcc/write.c"/>
@@ -210,6 +213,8 @@
         <file category="source" condition="ARMCC, GCC, IAR" name="hpl/usb/hpl_usb.c"/>
         <file category="source" condition="ARMCC, GCC, IAR" name="usb_start.c"/>
         <file category="header" condition="ARMCC, GCC, IAR" name="usb_start.h"/>
+        <file category="source" condition="ARMCC, GCC, IAR" name="dma_m2m_main.c"/>
+        <file category="header" condition="ARMCC, GCC, IAR" name="dma_m2m_main.h"/>
         <file category="source" condition="ARMCC, GCC, IAR" name="stdio_start.c"/>
         <file category="header" condition="ARMCC, GCC, IAR" name="stdio_start.h"/>
         <file category="header" condition="ARMCC, GCC, IAR" name="atmel_start.h"/>
@@ -225,6 +230,7 @@
         <file attr="config" category="header" condition="ARMCC, GCC, IAR" name="config/hpl_usb_config.h"/>
         <file attr="config" category="header" condition="ARMCC, GCC, IAR" name="config/peripheral_clk_config.h"/>
         <file attr="config" category="header" condition="ARMCC, GCC, IAR" name="config/usbd_config.h"/>
+        <file attr="config" category="header" condition="ARMCC, GCC, IAR" name="dma_m2m/dma_memory_config.h"/>
         <file attr="config" category="header" condition="ARMCC, GCC, IAR" name="config/stdio_redirect_config.h"/>
         <file category="include" condition="ARMCC, GCC, IAR" name=""/>
         <file category="include" condition="ARMCC, GCC, IAR" name="config"/>
@@ -251,6 +257,8 @@
         <file category="include" condition="ARMCC, GCC, IAR" name="usb/class/cdc/device"/>
         <file category="include" condition="ARMCC, GCC, IAR" name="usb/device"/>
         <file category="include" condition="ARMCC, GCC, IAR" name=""/>
+        <file category="include" condition="ARMCC, GCC, IAR" name="dma_m2m"/>
+        <file category="include" condition="ARMCC, GCC, IAR" name=""/>
         <file category="include" condition="ARMCC, GCC, IAR" name="config"/>
         <file category="include" condition="ARMCC, GCC, IAR" name="stdio_redirect"/>
         <file category="include" condition="ARMCC, GCC, IAR" name=""/>
diff --git a/sysmoOCTSIM/atmel_start.c b/sysmoOCTSIM/atmel_start.c
index fc6016a..fd566dd 100644
--- a/sysmoOCTSIM/atmel_start.c
+++ b/sysmoOCTSIM/atmel_start.c
@@ -1,5 +1,11 @@
 #include <atmel_start.h>
 
+/** Memory to memory DMA callback */
+static void M2M_DMA_complete_cb(void)
+{
+	dma_m2m_complete_flag = true;
+}
+
 /**
  * Initializes MCU, drivers and middleware in the project
  **/
@@ -7,5 +13,7 @@
 {
 	system_init();
 	usb_init();
+	dma_memory_init();
+	dma_memory_register_callback(DMA_MEMORY_COMPLETE_CB, M2M_DMA_complete_cb);
 	stdio_redirect_init();
 }
diff --git a/sysmoOCTSIM/atmel_start.h b/sysmoOCTSIM/atmel_start.h
index 92afa47..4892cbd 100644
--- a/sysmoOCTSIM/atmel_start.h
+++ b/sysmoOCTSIM/atmel_start.h
@@ -5,10 +5,15 @@
 extern "C" {
 #endif
 
+#include <dma_memory.h>
+
 #include "driver_init.h"
 #include "usb_start.h"
 #include "stdio_start.h"
 
+/** flag set when the memory to memory DMA is complete */
+volatile bool dma_m2m_complete_flag;
+
 /**
  * Initializes MCU, drivers and middleware in the project
  **/
diff --git a/sysmoOCTSIM/atmel_start_config.atstart b/sysmoOCTSIM/atmel_start_config.atstart
index 290fa89..51ec4f4 100644
--- a/sysmoOCTSIM/atmel_start_config.atstart
+++ b/sysmoOCTSIM/atmel_start_config.atstart
@@ -82,6 +82,15 @@
     dependencies:
       USB Device Stack Core Instance: USB_DEVICE_STACK_CORE_INSTANCE
       USB Class CDC: USB_CLASS_CDC
+  M2M_DMA_0:
+    user_label: M2M_DMA_0
+    configuration:
+      conf_channel: 0
+    definition: Atmel:MEMORY_DMA:0.0.1::M2M_DMA
+    functionality: M2M_DMA
+    api: DMA:M2M:Core
+    dependencies:
+      DMAC: DMAC
   STDIO_REDIRECT_0:
     user_label: STDIO_REDIRECT_0
     configuration: {}
@@ -209,7 +218,7 @@
         the transaction
       dmac_blockact_9: Channel will be disabled if it is the last block transfer in
         the transaction
-      dmac_channel_0_settings: false
+      dmac_channel_0_settings: true
       dmac_channel_10_settings: false
       dmac_channel_11_settings: false
       dmac_channel_12_settings: false
@@ -242,7 +251,7 @@
       dmac_channel_8_settings: false
       dmac_channel_9_settings: false
       dmac_dbgrun: false
-      dmac_dstinc_0: false
+      dmac_dstinc_0: true
       dmac_dstinc_1: false
       dmac_dstinc_10: false
       dmac_dstinc_11: false
@@ -274,7 +283,7 @@
       dmac_dstinc_7: false
       dmac_dstinc_8: false
       dmac_dstinc_9: false
-      dmac_enable: false
+      dmac_enable: true
       dmac_evact_0: No action
       dmac_evact_1: No action
       dmac_evact_10: No action
@@ -479,7 +488,7 @@
       dmac_runstdby_7: false
       dmac_runstdby_8: false
       dmac_runstdby_9: false
-      dmac_srcinc_0: false
+      dmac_srcinc_0: true
       dmac_srcinc_1: false
       dmac_srcinc_10: false
       dmac_srcinc_11: false
diff --git a/sysmoOCTSIM/config/hpl_dmac_config.h b/sysmoOCTSIM/config/hpl_dmac_config.h
index 90499fc..c736778 100644
--- a/sysmoOCTSIM/config/hpl_dmac_config.h
+++ b/sysmoOCTSIM/config/hpl_dmac_config.h
@@ -8,7 +8,7 @@
 // <i> Indicates whether dmac is enabled or not
 // <id> dmac_enable
 #ifndef CONF_DMAC_ENABLE
-#define CONF_DMAC_ENABLE 0
+#define CONF_DMAC_ENABLE 1
 #endif
 
 // <q> Priority Level 0
@@ -105,7 +105,7 @@
 // <e> Channel 0 settings
 // <id> dmac_channel_0_settings
 #ifndef CONF_DMAC_CHANNEL_0_SETTINGS
-#define CONF_DMAC_CHANNEL_0_SETTINGS 0
+#define CONF_DMAC_CHANNEL_0_SETTINGS 1
 #endif
 
 // <q> Channel Run in Standby
@@ -284,14 +284,14 @@
 // <i> Indicates whether the source address incrementation is enabled or not
 // <id> dmac_srcinc_0
 #ifndef CONF_DMAC_SRCINC_0
-#define CONF_DMAC_SRCINC_0 0
+#define CONF_DMAC_SRCINC_0 1
 #endif
 
 // <q> Destination Address Increment
 // <i> Indicates whether the destination address incrementation is enabled or not
 // <id> dmac_dstinc_0
 #ifndef CONF_DMAC_DSTINC_0
-#define CONF_DMAC_DSTINC_0 0
+#define CONF_DMAC_DSTINC_0 1
 #endif
 
 // <o> Beat Size
diff --git a/sysmoOCTSIM/dma_m2m/dma_memory.c b/sysmoOCTSIM/dma_m2m/dma_memory.c
new file mode 100644
index 0000000..f395114
--- /dev/null
+++ b/sysmoOCTSIM/dma_m2m/dma_memory.c
@@ -0,0 +1,143 @@
+/**
+ * \file
+ *
+ * \brief Memory with DMA functionality implementation.
+ *
+ * Copyright (c) 2016-2018 Microchip Technology Inc. and its subsidiaries.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Subject to your compliance with these terms, you may use Microchip
+ * software and any derivatives exclusively with Microchip products.
+ * It is your responsibility to comply with third party license terms applicable
+ * to your use of third party software (including open source software) that
+ * may accompany Microchip software.
+ *
+ * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
+ * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
+ * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
+ * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
+ * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
+ * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
+ * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
+ * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.  TO THE FULLEST EXTENT
+ * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
+ * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
+ * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#include "dma_memory.h"
+#include "dma_memory_config.h"
+#include <utils_assert.h>
+#include <utils.h>
+#include <hal_atomic.h>
+
+/**
+ * \brief Driver version
+ */
+#define DRIVER_VERSION 0x00000001u
+
+/**
+ * \brief memory with dma descriptor instance
+ */
+static struct dma_memory_descriptor descr;
+
+/**
+ * \internal Process transfer done interrupts
+ *
+ * \param[in] resource The pointer to memory resource
+ */
+static void dma_transfer_done(struct _dma_resource *resource)
+{
+	(void)resource;
+	if (descr.memory_cb.complete) {
+		descr.memory_cb.complete();
+	}
+}
+
+/**
+ * \internal Process transfer error interrupts
+ *
+ * \param[in] resource The pointer to memory resource
+ */
+static void dma_memory_error(struct _dma_resource *resource)
+{
+	(void)resource;
+	if (descr.memory_cb.error) {
+		descr.memory_cb.error();
+	}
+}
+
+/**
+ * \brief Initialize DMA
+ */
+int32_t dma_memory_init(void)
+{
+	_dma_get_channel_resource(&descr.resource, CONF_DMA_MEMORY_CHANNEL);
+	descr.resource->dma_cb.transfer_done = dma_transfer_done;
+	descr.resource->dma_cb.error         = dma_memory_error;
+
+	return ERR_NONE;
+}
+
+/**
+ * \brief Register DMA callback
+ */
+int32_t dma_memory_register_callback(const enum dma_memory_callback_type type, dma_memory_cb_t cb)
+{
+	switch (type) {
+	case DMA_MEMORY_COMPLETE_CB:
+		descr.memory_cb.complete = cb;
+		break;
+
+	case DMA_MEMORY_ERROR_CB:
+		descr.memory_cb.error = cb;
+		break;
+
+	default:
+		return ERR_INVALID_ARG;
+	}
+
+	_dma_set_irq_state(CONF_DMA_MEMORY_CHANNEL, (enum _dma_callback_type)type, (cb != NULL));
+
+	return ERR_NONE;
+}
+
+/**
+ * \brief Memory copy with dma
+ */
+int32_t dma_memcpy(void *dst, void *src, uint32_t size)
+{
+	_dma_srcinc_enable(CONF_DMA_MEMORY_CHANNEL, true);
+	_dma_dstinc_enable(CONF_DMA_MEMORY_CHANNEL, true);
+	_dma_set_destination_address(CONF_DMA_MEMORY_CHANNEL, dst);
+	_dma_set_source_address(CONF_DMA_MEMORY_CHANNEL, src);
+	_dma_set_data_amount(CONF_DMA_MEMORY_CHANNEL, size);
+	_dma_enable_transaction(CONF_DMA_MEMORY_CHANNEL, true);
+
+	return ERR_NONE;
+}
+
+/**
+ * \brief Memory set with dma
+ */
+int32_t dma_memset(void *dst, int32_t ch, uint32_t size)
+{
+	static int32_t tmp_ch;
+
+	tmp_ch = ch;
+
+	_dma_set_source_address(CONF_DMA_MEMORY_CHANNEL, &tmp_ch);
+	_dma_srcinc_enable(CONF_DMA_MEMORY_CHANNEL, false);
+	_dma_dstinc_enable(CONF_DMA_MEMORY_CHANNEL, true);
+	_dma_set_destination_address(CONF_DMA_MEMORY_CHANNEL, dst);
+	_dma_set_data_amount(CONF_DMA_MEMORY_CHANNEL, size);
+	_dma_enable_transaction(CONF_DMA_MEMORY_CHANNEL, true);
+
+	return ERR_NONE;
+}
diff --git a/sysmoOCTSIM/dma_m2m/dma_memory.h b/sysmoOCTSIM/dma_m2m/dma_memory.h
new file mode 100644
index 0000000..3bd6dc9
--- /dev/null
+++ b/sysmoOCTSIM/dma_m2m/dma_memory.h
@@ -0,0 +1,132 @@
+/**
+ * \file
+ *
+ * \brief Memory with DMA functionality declaration.
+ *
+ * Copyright (c) 2016-2018 Microchip Technology Inc. and its subsidiaries.
+ *
+ * \asf_license_start
+ *
+ * \page License
+ *
+ * Subject to your compliance with these terms, you may use Microchip
+ * software and any derivatives exclusively with Microchip products.
+ * It is your responsibility to comply with third party license terms applicable
+ * to your use of third party software (including open source software) that
+ * may accompany Microchip software.
+ *
+ * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
+ * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
+ * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
+ * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
+ * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
+ * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
+ * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
+ * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.  TO THE FULLEST EXTENT
+ * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
+ * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
+ * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
+ *
+ * \asf_license_stop
+ *
+ */
+
+#ifndef DMA_MEMORY_H_INCLUDED
+#define DMA_MEMORY_H_INCLUDED
+
+#include <hpl_dma.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * \addtogroup dma_memory
+ *
+ * \section dma_rev Revision History
+ * - v0.0.0.1 Initial Commit
+ *
+ *@{
+ */
+
+/**
+ * \brief Memory with DMA descriptor
+ *
+ * The Memory with DMA descriptor forward declaration.
+ */
+struct dma_memory_descriptor;
+
+/**
+ * \brief memory with dma callback type
+ */
+typedef void (*dma_memory_cb_t)(void);
+
+/**
+ * \brief Memory with DMA callback types
+ */
+enum dma_memory_callback_type { DMA_MEMORY_COMPLETE_CB, DMA_MEMORY_ERROR_CB };
+
+/**
+ * \brief Memory with DMA callbacks
+ */
+struct dma_memory_callbacks {
+	dma_memory_cb_t complete;
+	dma_memory_cb_t error;
+};
+
+/**
+ * \brief Memory with DMA descriptor
+ */
+struct dma_memory_descriptor {
+	struct _dma_resource *      resource;
+	struct dma_memory_callbacks memory_cb;
+};
+
+/**
+ * \brief Initialize Memory with DMA
+ *
+ * \return Initialization status.
+ */
+int32_t dma_memory_init(void);
+
+/**
+ * \brief Register Memory with DMA callback
+ *
+ * \param[in] type Callback type
+ * \param[in] cb A callback function, passing NULL de-registers callback
+ *
+ * \return The status of callback assignment.
+ * \retval ERR_INVALID_ARG Passed parameters were invalid
+ * \retval ERR_NONE A callback is registered successfully
+ */
+int32_t dma_memory_register_callback(const enum dma_memory_callback_type type, dma_memory_cb_t cb);
+
+/**
+ * \brief dma memory copy
+ *
+ * \param[in] dst The pointer to destination address for transfer
+ * \param[in] src The pointer to source address for transfer
+ * \param[in] size The transfer size
+ *
+ * \return the status of operation`
+ */
+int32_t dma_memcpy(void *dst, void *src, uint32_t size);
+
+/**
+ * \brief dma memory set
+ *
+ * \param[in] dst The pointer to address to  fill
+ * \param[in] ch The value to be filled
+ * \param[in] size Number of bytes to set to the value
+ *
+ * \return the status of operation
+ */
+int32_t dma_memset(void *dst, int32_t ch, uint32_t size);
+
+/**@}*/
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* DMA_MEMORY_H_INCLUDED */
diff --git a/sysmoOCTSIM/dma_m2m/dma_memory_config.h b/sysmoOCTSIM/dma_m2m/dma_memory_config.h
new file mode 100644
index 0000000..a5dba3c
--- /dev/null
+++ b/sysmoOCTSIM/dma_m2m/dma_memory_config.h
@@ -0,0 +1,16 @@
+/* Auto-generated config file dma_memory_config.h */
+#ifndef DMA_MEMORY_CONFIG_H
+#define DMA_MEMORY_CONFIG_H
+
+// <<< Use Configuration Wizard in Context Menu >>>
+
+//<o> Channel <0-15>
+//<i> This defines DMA channel to be used
+//<id> conf_channel
+#ifndef CONF_DMA_MEMORY_CHANNEL
+#define CONF_DMA_MEMORY_CHANNEL 0
+#endif
+
+// <<< end of configuration section >>>
+
+#endif // DMA_MEMORY_CONFIG_H
diff --git a/sysmoOCTSIM/documentation/dma_m2m.rst b/sysmoOCTSIM/documentation/dma_m2m.rst
new file mode 100644
index 0000000..22bffcf
--- /dev/null
+++ b/sysmoOCTSIM/documentation/dma_m2m.rst
@@ -0,0 +1,15 @@
+Memory DMA
+==========
+
+Memory DMA is middleware which provides DMA-based versions of memcpy and memset
+functions.
+
+Architecture and provided functionality
+---------------------------------------
+
+Memory DMA uses system DMA driver which varies depending on MCU. User must configure
+system DMA driver before using Memory DMA middleware.
+
+DMA-based versions of memcpy and memset functions work asynchronously. Application
+can be notifications about completion of copy or set operation via callbacks.
+A callback can be registered via dma_memory_register_callback function.
\ No newline at end of file
diff --git a/sysmoOCTSIM/gcc/Makefile b/sysmoOCTSIM/gcc/Makefile
index 7496377..0191815 100644
--- a/sysmoOCTSIM/gcc/Makefile
+++ b/sysmoOCTSIM/gcc/Makefile
@@ -39,6 +39,7 @@
 stdio_redirect \
 hal/utils/src \
 hpl/usb \
+dma_m2m \
 hpl/pm \
 hpl/cmcc \
 hpl/gclk \
@@ -54,12 +55,13 @@
 stdio_redirect/stdio_io.o \
 stdio_redirect/gcc/write.o \
 hpl/core/hpl_core_m4.o \
+hal/src/hal_cache.o \
 usb/class/cdc/device/cdcdf_acm.o \
 hal/utils/src/utils_syscalls.o \
 stdio_redirect/gcc/read.o \
-usb_start.o \
 gcc/system_same54.o \
 hpl/usb/hpl_usb.o \
+dma_m2m/dma_memory.o \
 hal/src/hal_delay.o \
 hpl/pm/hpl_pm.o \
 hpl/core/hpl_init.o \
@@ -76,7 +78,6 @@
 hal/src/hal_init.o \
 gcc/gcc/startup_same54.o \
 hal/src/hal_usb_device.o \
-main.o \
 i2c_bitbang.o \
 octsim_i2c.o \
 ncn8025.o \
@@ -87,10 +88,11 @@
 hal/src/hal_usart_async.o \
 hpl/sercom/hpl_sercom.o \
 hal/utils/src/utils_ringbuffer.o \
+main.o \
 hal/src/hal_gpio.o \
 hal/utils/src/utils_event.o \
 hal/src/hal_sleep.o \
-hal/src/hal_cache.o \
+usb_start.o \
 hpl/cmcc/hpl_cmcc.o \
 atmel_start.o \
 usb/device/usbdc.o \
@@ -101,12 +103,13 @@
 "stdio_redirect/stdio_io.o" \
 "stdio_redirect/gcc/write.o" \
 "hpl/core/hpl_core_m4.o" \
+"hal/src/hal_cache.o" \
 "usb/class/cdc/device/cdcdf_acm.o" \
 "hal/utils/src/utils_syscalls.o" \
 "stdio_redirect/gcc/read.o" \
-"usb_start.o" \
 "gcc/system_same54.o" \
 "hpl/usb/hpl_usb.o" \
+"dma_m2m/dma_memory.o" \
 "hal/src/hal_delay.o" \
 "hpl/pm/hpl_pm.o" \
 "hpl/core/hpl_init.o" \
@@ -123,7 +126,6 @@
 "hal/src/hal_init.o" \
 "gcc/gcc/startup_same54.o" \
 "hal/src/hal_usb_device.o" \
-"main.o" \
 "i2c_bitbang.o" \
 "octsim_i2c.o" \
 "ncn8025.o" \
@@ -134,10 +136,11 @@
 "hal/src/hal_usart_async.o" \
 "hpl/sercom/hpl_sercom.o" \
 "hal/utils/src/utils_ringbuffer.o" \
+"main.o" \
 "hal/src/hal_gpio.o" \
 "hal/utils/src/utils_event.o" \
 "hal/src/hal_sleep.o" \
-"hal/src/hal_cache.o" \
+"usb_start.o" \
 "hpl/cmcc/hpl_cmcc.o" \
 "atmel_start.o" \
 "usb/device/usbdc.o" \
@@ -147,6 +150,7 @@
 DEPS := $(OBJS:%.o=%.d)
 
 DEPS_AS_ARGS +=  \
+"dma_m2m/dma_memory.d" \
 "stdio_redirect/stdio_io.d" \
 "hal/utils/src/utils_event.d" \
 "hal/src/hal_io.d" \
@@ -157,6 +161,7 @@
 "stdio_redirect/gcc/write.d" \
 "gcc/gcc/startup_same54.d" \
 "hpl/usb/hpl_usb.d" \
+"main.d" \
 "hal/utils/src/utils_list.d" \
 "hpl/cmcc/hpl_cmcc.d" \
 "hpl/dmac/hpl_dmac.d" \
@@ -176,7 +181,6 @@
 "stdio_redirect/gcc/read.d" \
 "hal/src/hal_usart_async.d" \
 "hpl/osc32kctrl/hpl_osc32kctrl.d" \
-"main.d" \
 "i2c_bitbang.d" \
 "octsim_i2c.d" \
 "ncn8025.d" \
@@ -238,7 +242,7 @@
 	@echo ARM/GNU C Compiler
 	$(QUOTE)arm-none-eabi-gcc$(QUOTE) -x c -mthumb -DDEBUG -Os -ffunction-sections -mlong-calls -g3 -Wall -c -std=gnu99 \
 -D__SAME54N19A__ -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 \
--I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../CMSIS/Include" -I"../include"  \
+-I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../dma_m2m" -I"../" -I"../CMSIS/Include" -I"../include"  \
 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)"  -o "$@" "$<"
 	@echo Finished building: $<
 
@@ -247,7 +251,7 @@
 	@echo ARM/GNU Assembler
 	$(QUOTE)arm-none-eabi-as$(QUOTE) -x c -mthumb -DDEBUG -Os -ffunction-sections -mlong-calls -g3 -Wall -c -std=gnu99 \
 -D__SAME54N19A__ -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 \
--I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../CMSIS/Include" -I"../include"  \
+-I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../dma_m2m" -I"../" -I"../CMSIS/Include" -I"../include"  \
 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)"  -o "$@" "$<"
 	@echo Finished building: $<
 
@@ -256,7 +260,7 @@
 	@echo ARM/GNU Preprocessing Assembler
 	$(QUOTE)arm-none-eabi-gcc$(QUOTE) -x c -mthumb -DDEBUG -Os -ffunction-sections -mlong-calls -g3 -Wall -c -std=gnu99 \
 -D__SAME54N19A__ -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 \
--I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../CMSIS/Include" -I"../include"  \
+-I"../" -I"../config" -I"../examples" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../dma_m2m" -I"../" -I"../CMSIS/Include" -I"../include"  \
 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)"  -o "$@" "$<"
 	@echo Finished building: $<
 
@@ -276,4 +280,4 @@
 	rm -f $(DEPS_AS_ARGS)
 	rm -f $(OUTPUT_FILE_NAME).a $(OUTPUT_FILE_NAME).hex $(OUTPUT_FILE_NAME).bin \
         $(OUTPUT_FILE_NAME).lss $(OUTPUT_FILE_NAME).eep $(OUTPUT_FILE_NAME).map \
-        $(OUTPUT_FILE_NAME).srec
\ No newline at end of file
+        $(OUTPUT_FILE_NAME).srec

-- 
To view, visit https://gerrit.osmocom.org/13675
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib07755b2c5974af70817f5460fb0f358c631452a
Gerrit-Change-Number: 13675
Gerrit-PatchSet: 1
Gerrit-Owner: Kévin Redon <kredon at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190416/5b9dbd31/attachment.htm>


More information about the gerrit-log mailing list