mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			Merge pull request #10775 from jeromecoutant/PR_H7_REFACTOR
STM32H7: refactor TARGET directorypull/10776/head
						commit
						9dfc8d0ea7
					
				| 
						 | 
				
			
			@ -1,67 +0,0 @@
 | 
			
		|||
/* mbed Microcontroller Library
 | 
			
		||||
 *******************************************************************************
 | 
			
		||||
 * Copyright (c) 2016, STMicroelectronics
 | 
			
		||||
 * All rights reserved.
 | 
			
		||||
 *
 | 
			
		||||
 * Redistribution and use in source and binary forms, with or without
 | 
			
		||||
 * modification, are permitted provided that the following conditions are met:
 | 
			
		||||
 *
 | 
			
		||||
 * 1. Redistributions of source code must retain the above copyright notice,
 | 
			
		||||
 *    this list of conditions and the following disclaimer.
 | 
			
		||||
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 | 
			
		||||
 *    this list of conditions and the following disclaimer in the documentation
 | 
			
		||||
 *    and/or other materials provided with the distribution.
 | 
			
		||||
 * 3. Neither the name of STMicroelectronics nor the names of its contributors
 | 
			
		||||
 *    may be used to endorse or promote products derived from this software
 | 
			
		||||
 *    without specific prior written permission.
 | 
			
		||||
 *
 | 
			
		||||
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 | 
			
		||||
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 | 
			
		||||
 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 | 
			
		||||
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
 | 
			
		||||
 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 | 
			
		||||
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 | 
			
		||||
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 *******************************************************************************
 | 
			
		||||
 */
 | 
			
		||||
#ifndef MBED_OBJECTS_H
 | 
			
		||||
#define MBED_OBJECTS_H
 | 
			
		||||
 | 
			
		||||
#include "cmsis.h"
 | 
			
		||||
#include "PortNames.h"
 | 
			
		||||
#include "PeripheralNames.h"
 | 
			
		||||
#include "PinNames.h"
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
struct gpio_irq_s {
 | 
			
		||||
    IRQn_Type irq_n;
 | 
			
		||||
    uint32_t irq_index;
 | 
			
		||||
    uint32_t event;
 | 
			
		||||
    PinName pin;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct port_s {
 | 
			
		||||
    PortName port;
 | 
			
		||||
    uint32_t mask;
 | 
			
		||||
    PinDirection direction;
 | 
			
		||||
    __IO uint32_t *reg_in;
 | 
			
		||||
    __IO uint32_t *reg_out;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct trng_s {
 | 
			
		||||
    RNG_HandleTypeDef handle;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#include "common_objects.h"
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -61,8 +61,7 @@
 | 
			
		|||
#if !defined (STM32H743xx) && !defined (STM32H753xx)  && !defined (STM32H750xx) && !defined (STM32H742xx) && \
 | 
			
		||||
    !defined (STM32H745xx) && !defined (STM32H755xx)  && !defined (STM32H747xx) && !defined (STM32H757xx)
 | 
			
		||||
  /* #define STM32H742xx */   /*!< STM32H742VI, STM32H742ZI, STM32H742AI, STM32H742II, STM32H742BI, STM32H742XI Devices */
 | 
			
		||||
  // MBED PATCH
 | 
			
		||||
  #define STM32H743xx         /*!< STM32H743VI, STM32H743ZI, STM32H743AI, STM32H743II, STM32H743BI, STM32H743XI Devices */
 | 
			
		||||
  /* #define STM32H743xx */   /*!< STM32H743VI, STM32H743ZI, STM32H743AI, STM32H743II, STM32H743BI, STM32H743XI Devices */
 | 
			
		||||
  /* #define STM32H753xx */   /*!< STM32H753VI, STM32H753ZI, STM32H753AI, STM32H753II, STM32H753BI, STM32H753XI Devices */
 | 
			
		||||
  /* #define STM32H750xx */   /*!< STM32H750V, STM32H750I, STM32H750X Devices */
 | 
			
		||||
  /* #define STM32H747xx */   /*!< STM32H747ZI, STM32H747AI, STM32H747II, STM32H747BI, STM32H747XI Devices */
 | 
			
		||||
| 
						 | 
				
			
			@ -85,11 +84,9 @@
 | 
			
		|||
   In this case, these drivers will not be included and the application code will
 | 
			
		||||
   be based on direct access to peripherals registers
 | 
			
		||||
   */
 | 
			
		||||
#define USE_HAL_DRIVER // MBED PATCH
 | 
			
		||||
  /*#define USE_HAL_DRIVER */
 | 
			
		||||
#endif /* USE_HAL_DRIVER */
 | 
			
		||||
 | 
			
		||||
#define USE_FULL_LL_DRIVER // MBED PATCH
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief CMSIS Device version number V1.5.0
 | 
			
		||||
  */
 | 
			
		||||
| 
						 | 
				
			
			@ -27,7 +27,6 @@
 | 
			
		|||
 | 
			
		||||
/* Includes ------------------------------------------------------------------*/
 | 
			
		||||
#include "stm32h7xx_hal_def.h"
 | 
			
		||||
#include "stm32h7xx_ll_rtc.h" // MBED PATCH
 | 
			
		||||
 | 
			
		||||
/** @addtogroup STM32H7xx_HAL_Driver
 | 
			
		||||
  * @{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -85,7 +85,6 @@ extern const  uint8_t D1CorePrescTable[16] ; /*!< D1CorePrescTable prescalers ta
 | 
			
		|||
 | 
			
		||||
extern void SystemInit(void);
 | 
			
		||||
extern void SystemCoreClockUpdate(void);
 | 
			
		||||
extern void SetSysClock(void); // MBED PATCH
 | 
			
		||||
/**
 | 
			
		||||
  * @}
 | 
			
		||||
  */
 | 
			
		||||
| 
						 | 
				
			
			@ -27,19 +27,39 @@
 | 
			
		|||
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 *******************************************************************************
 | 
			
		||||
 */
 | 
			
		||||
#ifndef MBED_COMMON_OBJECTS_H
 | 
			
		||||
#define MBED_COMMON_OBJECTS_H
 | 
			
		||||
#ifndef MBED_OBJECTS_H
 | 
			
		||||
#define MBED_OBJECTS_H
 | 
			
		||||
 | 
			
		||||
#include "cmsis.h"
 | 
			
		||||
#include "PortNames.h"
 | 
			
		||||
#include "PeripheralNames.h"
 | 
			
		||||
#include "PinNames.h"
 | 
			
		||||
#include "stm32h7xx_ll_usart.h"
 | 
			
		||||
#include "stm32h7xx_ll_rtc.h"
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
extern "C" {
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
struct gpio_irq_s {
 | 
			
		||||
    IRQn_Type irq_n;
 | 
			
		||||
    uint32_t irq_index;
 | 
			
		||||
    uint32_t event;
 | 
			
		||||
    PinName pin;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct port_s {
 | 
			
		||||
    PortName port;
 | 
			
		||||
    uint32_t mask;
 | 
			
		||||
    PinDirection direction;
 | 
			
		||||
    __IO uint32_t *reg_in;
 | 
			
		||||
    __IO uint32_t *reg_out;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct trng_s {
 | 
			
		||||
    RNG_HandleTypeDef handle;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct pwmout_s {
 | 
			
		||||
    PWMName pwm;
 | 
			
		||||
    PinName pin;
 | 
			
		||||
| 
						 | 
				
			
			@ -154,4 +174,3 @@ struct can_s {
 | 
			
		|||
#endif
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -96,8 +96,8 @@
 | 
			
		|||
       defined(TARGET_STM32F446RE) ||\
 | 
			
		||||
       defined(TARGET_STM32F446VE) ||\
 | 
			
		||||
       defined(TARGET_STM32F446ZE) ||\
 | 
			
		||||
       defined(TARGET_STM32H743ZI) ||\
 | 
			
		||||
       defined(TARGET_STM32H753ZI))
 | 
			
		||||
       defined(TARGET_STM32H743xI) ||\
 | 
			
		||||
       defined(TARGET_STM32H753xI))
 | 
			
		||||
#define INITIAL_SP              (0x20020000UL)
 | 
			
		||||
 | 
			
		||||
#elif (defined(TARGET_STM32F429ZI) ||\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1853,7 +1853,11 @@
 | 
			
		|||
        "public": false,
 | 
			
		||||
        "extra_labels": ["STM"],
 | 
			
		||||
        "supported_toolchains": ["ARM", "uARM", "IAR", "GCC_ARM"],
 | 
			
		||||
        "macros": ["TRANSACTION_QUEUE_SIZE_SPI=2"],
 | 
			
		||||
        "macros": [
 | 
			
		||||
            "USE_HAL_DRIVER",
 | 
			
		||||
            "USE_FULL_LL_DRIVER",
 | 
			
		||||
            "TRANSACTION_QUEUE_SIZE_SPI=2"
 | 
			
		||||
        ],
 | 
			
		||||
        "config": {
 | 
			
		||||
            "lse_available": {
 | 
			
		||||
                "help": "Define if a Low Speed External xtal (LSE) is available on the board (0 = No, 1 = Yes). If Yes, the LSE will be used to clock the RTC, LPUART, ... otherwise the Low Speed Internal clock (LSI) will be used",
 | 
			
		||||
| 
						 | 
				
			
			@ -3170,9 +3174,7 @@
 | 
			
		|||
        "core": "Cortex-M7FD",
 | 
			
		||||
        "extra_labels_add": [
 | 
			
		||||
            "STM32H7",
 | 
			
		||||
            "STM32H743",
 | 
			
		||||
            "STM32H743xI",
 | 
			
		||||
            "STM32H743ZI"
 | 
			
		||||
            "STM32H743xI"
 | 
			
		||||
        ],
 | 
			
		||||
        "config": {
 | 
			
		||||
            "d11_configuration": {
 | 
			
		||||
| 
						 | 
				
			
			@ -3196,8 +3198,8 @@
 | 
			
		|||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "macros_add": [
 | 
			
		||||
            "MBED_TICKLESS",
 | 
			
		||||
            "USE_FULL_LL_DRIVER"
 | 
			
		||||
            "STM32H743xx",
 | 
			
		||||
            "MBED_TICKLESS"
 | 
			
		||||
        ],
 | 
			
		||||
        "overrides": { "lpticker_delay_ticks": 4 },
 | 
			
		||||
        "supported_form_factors": ["ARDUINO"],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue