Skip to content

Commit 11857b8

Browse files
authored
Merge pull request stm32duino#750 from fpistm/HAL_Feature_Only
HAL module only
2 parents 2cc7dc7 + e04569d commit 11857b8

25 files changed

+68
-70
lines changed

Diff for: cores/arduino/HardwareSerial.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
#include "Arduino.h"
2727
#include "HardwareSerial.h"
2828

29-
#if defined(HAL_UART_MODULE_ENABLED)
29+
#if defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
3030
#if defined(HAVE_HWSERIAL1) || defined(HAVE_HWSERIAL2) || defined(HAVE_HWSERIAL3) ||\
3131
defined(HAVE_HWSERIAL4) || defined(HAVE_HWSERIAL5) || defined(HAVE_HWSERIAL6) ||\
3232
defined(HAVE_HWSERIAL7) || defined(HAVE_HWSERIAL8) || defined(HAVE_HWSERIAL9) ||\
@@ -528,4 +528,4 @@ void HardwareSerial::enableHalfDuplexRx(void)
528528
}
529529
}
530530

531-
#endif // HAL_UART_MODULE_ENABLED
531+
#endif // HAL_UART_MODULE_ENABLED && !HAL_UART_MODULE_ONLY

Diff for: cores/arduino/HardwareTimer.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
#include "Arduino.h"
2727
#include "HardwareTimer.h"
2828

29-
#ifdef HAL_TIM_MODULE_ENABLED
29+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
3030

3131
/* Private Defines */
3232
#define PIN_NOT_USED 0xFF
@@ -1472,4 +1472,4 @@ extern "C" {
14721472
#endif //TIM22_BASE
14731473
}
14741474

1475-
#endif // HAL_TIM_MODULE_ENABLED
1475+
#endif // HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY

Diff for: cores/arduino/HardwareTimer.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
/* Includes ------------------------------------------------------------------*/
3131
#include "timer.h"
3232

33-
#ifdef HAL_TIM_MODULE_ENABLED
33+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
3434

3535
#define TIMER_CHANNELS 4 // channel5 and channel 6 are not considered here has they don't have gpio output and they don't have interrupt
3636

@@ -149,5 +149,5 @@ extern timer_index_t get_timer_index(TIM_TypeDef *htim);
149149

150150
#endif /* __cplusplus */
151151

152-
#endif // HAL_TIM_MODULE_ENABLED
152+
#endif // HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY
153153
#endif // HARDWARETIMER_H_

Diff for: cores/arduino/Print.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ extern "C" {
200200
__attribute__((weak))
201201
int _write(int file, char *ptr, int len)
202202
{
203-
#ifdef HAL_UART_MODULE_ENABLED
203+
#if defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
204204
switch (file) {
205205
case STDOUT_FILENO:
206206
case STDERR_FILENO:

Diff for: cores/arduino/Tone.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
#include "Arduino.h"
2323
#include "HardwareTimer.h"
2424

25-
#if defined(HAL_TIM_MODULE_ENABLED) && defined(TIMER_TONE)
25+
#if defined(HAL_TIM_MODULE_ENABLED) && defined(TIMER_TONE) && !defined(HAL_TIM_MODULE_ONLY)
2626

2727
#define MAX_FREQ 65535
2828

@@ -143,4 +143,4 @@ void noTone(uint8_t _pin)
143143
{
144144
UNUSED(_pin);
145145
}
146-
#endif /* HAL_TIM_MODULE_ENABLED && TIMER_TONE */
146+
#endif /* HAL_TIM_MODULE_ENABLED && TIMER_TONE && !HAL_TIM_MODULE_ONLY*/

Diff for: cores/arduino/WSerial.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
extern void serialEventUSB(void) __attribute__((weak));
2222
#endif /* USBCON && USBD_USE_CDC */
2323

24-
#if defined(HAL_UART_MODULE_ENABLED)
24+
#if defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
2525
#if !defined(HWSERIAL_NONE) && defined(SERIAL_UART_INSTANCE)
2626
#if SERIAL_UART_INSTANCE == 0
2727
#define ENABLE_HWSERIALLP1
@@ -163,7 +163,7 @@ extern void serialEvent8(void) __attribute__((weak));
163163
extern void serialEvent9(void) __attribute__((weak));
164164
extern void serialEvent10(void) __attribute__((weak));
165165
extern void serialEventLP1(void) __attribute__((weak));
166-
#endif /* HAL_UART_MODULE_ENABLED */
166+
#endif /* HAL_UART_MODULE_ENABLED && !HAL_UART_MODULE_ONLY */
167167

168168
extern void serialEventRun(void) __attribute__((weak));
169169

Diff for: cores/arduino/board.h

-2
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,8 @@
1414
#include "hw_config.h"
1515
#include "low_power.h"
1616
#include "rtc.h"
17-
#include "spi_com.h"
1817
#include "stm32_eeprom.h"
1918
#include "timer.h"
20-
#include "twi.h"
2119
#include "uart.h"
2220

2321
#ifdef __cplusplus

Diff for: cores/arduino/stm32/analog.cpp

+13-11
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,13 @@ extern "C" {
4747

4848

4949
/* Private_Variables */
50-
#if defined(HAL_ADC_MODULE_ENABLED) || defined(HAL_DAC_MODULE_ENABLED)
50+
#if (defined(HAL_ADC_MODULE_ENABLED) && !defined(HAL_ADC_MODULE_ONLY)) ||\
51+
(defined(HAL_DAC_MODULE_ENABLED) && !defined(HAL_DAC_MODULE_ONLY))
5152
static PinName g_current_pin = NC;
5253
#endif
5354

5455
/* Private_Defines */
55-
#ifdef HAL_ADC_MODULE_ENABLED
56+
#if defined(HAL_ADC_MODULE_ENABLED) && !defined(HAL_ADC_MODULE_ONLY)
5657

5758
#ifndef ADC_SAMPLINGTIME
5859
#if defined(ADC_SAMPLETIME_8CYCLES_5)
@@ -269,9 +270,9 @@ static uint32_t get_adc_internal_channel(PinName pin)
269270
}
270271
return channel;
271272
}
272-
#endif /* HAL_ADC_MODULE_ENABLED */
273+
#endif /* HAL_ADC_MODULE_ENABLED && !HAL_ADC_MODULE_ONLY */
273274

274-
#ifdef HAL_TIM_MODULE_ENABLED
275+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
275276
uint32_t get_pwm_channel(PinName pin)
276277
{
277278
uint32_t function = pinmap_function(pin, PinMap_PWM);
@@ -295,9 +296,9 @@ uint32_t get_pwm_channel(PinName pin)
295296
}
296297
return channel;
297298
}
298-
#endif /* HAL_TIM_MODULE_ENABLED */
299+
#endif /* HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY */
299300

300-
#ifdef HAL_DAC_MODULE_ENABLED
301+
#if defined(HAL_DAC_MODULE_ENABLED) && !defined(HAL_DAC_MODULE_ONLY)
301302
static uint32_t get_dac_channel(PinName pin)
302303
{
303304
uint32_t function = pinmap_function(pin, PinMap_DAC);
@@ -555,9 +556,10 @@ void dac_stop(PinName pin)
555556
return;
556557
}
557558
}
558-
#endif //HAL_DAC_MODULE_ENABLED
559+
#endif //HAL_DAC_MODULE_ENABLED && !HAL_DAC_MODULE_ONLY
559560

560-
#ifdef HAL_ADC_MODULE_ENABLED
561+
562+
#if defined(HAL_ADC_MODULE_ENABLED) && !defined(HAL_ADC_MODULE_ONLY)
561563
////////////////////////// ADC INTERFACE FUNCTIONS /////////////////////////////
562564

563565
/**
@@ -980,9 +982,9 @@ uint16_t adc_read_value(PinName pin)
980982

981983
return uhADCxConvertedValue;
982984
}
983-
#endif /* HAL_ADC_MODULE_ENABLED */
985+
#endif /* HAL_ADC_MODULE_ENABLED && !HAL_ADC_MODULE_ONLY*/
984986

985-
#ifdef HAL_TIM_MODULE_ENABLED
987+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
986988
////////////////////////// PWM INTERFACE FUNCTIONS /////////////////////////////
987989

988990
/**
@@ -1032,7 +1034,7 @@ void pwm_stop(PinName pin)
10321034
HT = NULL;
10331035
}
10341036
}
1035-
#endif /* HAL_TIM_MODULE_ENABLED */
1037+
#endif /* HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY */
10361038

10371039
#ifdef __cplusplus
10381040
}

Diff for: cores/arduino/stm32/low_power.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,13 @@
3939
#include "Arduino.h"
4040
#include "low_power.h"
4141

42-
#ifdef HAL_PWR_MODULE_ENABLED
42+
#if defined(HAL_PWR_MODULE_ENABLED) && !defined(HAL_PWR_MODULE_ONLY)
4343

4444
#ifdef __cplusplus
4545
extern "C" {
4646
#endif
4747

48-
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED)
48+
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
4949
/* Save UART handler for callback */
5050
static UART_HandleTypeDef *WakeUpUart = NULL;
5151
#endif
@@ -209,7 +209,7 @@ void LowPower_stop(serial_t *obj)
209209
{
210210
__disable_irq();
211211

212-
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED)
212+
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
213213
if (WakeUpUart != NULL) {
214214
HAL_UARTEx_EnableStopMode(WakeUpUart);
215215
}
@@ -232,7 +232,7 @@ void LowPower_stop(serial_t *obj)
232232

233233
/* Exit Stop mode reset clocks */
234234
SystemClock_ConfigFromStop();
235-
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED)
235+
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
236236
if (WakeUpUart != NULL) {
237237
/* In case of WakeUp from UART, reset its clock source to HSI */
238238
uart_config_lowpower(obj);
@@ -301,7 +301,7 @@ void LowPower_shutdown()
301301
*/
302302
void LowPower_EnableWakeUpUart(serial_t *serial, void (*FuncPtr)(void))
303303
{
304-
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED)
304+
#if defined(UART_IT_WUF) && defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
305305
UART_WakeUpTypeDef WakeUpSelection;
306306
if (serial == NULL) {
307307
return;
@@ -346,6 +346,6 @@ WEAK void SystemClock_ConfigFromStop(void)
346346
}
347347
#endif
348348

349-
#endif /* HAL_PWR_MODULE_ENABLED */
349+
#endif /* HAL_PWR_MODULE_ENABLED && !HAL_PWR_MODULE_ONLY */
350350

351351
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

Diff for: cores/arduino/stm32/low_power.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
#include "stm32_def.h"
4444
#include "uart.h"
4545

46-
#ifdef HAL_PWR_MODULE_ENABLED
46+
#if defined(HAL_PWR_MODULE_ENABLED) && !defined(HAL_PWR_MODULE_ONLY)
4747

4848
#ifdef __cplusplus
4949
extern "C" {
@@ -67,6 +67,6 @@ void SystemClock_ConfigFromStop(void);
6767
}
6868
#endif
6969

70-
#endif /* HAL_PWR_MODULE_ENABLED */
70+
#endif /* HAL_PWR_MODULE_ENABLED && !HAL_PWR_MODULE_ONLY */
7171

7272
#endif /* __LOW_POWER_H */

Diff for: cores/arduino/stm32/rtc.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838

3939
#include "rtc.h"
4040

41-
#ifdef HAL_RTC_MODULE_ENABLED
41+
#if defined(HAL_RTC_MODULE_ENABLED) && !defined(HAL_RTC_MODULE_ONLY)
4242
#if defined(STM32MP1xx)
4343
/**
4444
* Currently there is no RTC driver for STM32MP1xx. If RTC is used in the future
@@ -704,6 +704,6 @@ void RTC_Alarm_IRQHandler(void)
704704
}
705705
#endif
706706

707-
#endif /* HAL_RTC_MODULE_ENABLED */
707+
#endif /* HAL_RTC_MODULE_ENABLED && !HAL_RTC_MODULE_ONLY */
708708

709709
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

Diff for: cores/arduino/stm32/rtc.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
#include "backup.h"
4646
#include "clock.h"
4747

48-
#ifdef HAL_RTC_MODULE_ENABLED
48+
#if defined(HAL_RTC_MODULE_ENABLED) && !defined(HAL_RTC_MODULE_ONLY)
4949

5050
#ifdef __cplusplus
5151
extern "C" {
@@ -170,7 +170,7 @@ void detachAlarmCallback(void);
170170
}
171171
#endif
172172

173-
#endif /* HAL_RTC_MODULE_ENABLED */
173+
#endif /* HAL_RTC_MODULE_ENABLED && !HAL_RTC_MODULE_ONLY */
174174

175175
#endif /* __RTC_H */
176176

Diff for: cores/arduino/stm32/timer.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
#ifdef __cplusplus
1818
extern "C" {
1919
#endif
20-
#ifdef HAL_TIM_MODULE_ENABLED
20+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
2121

2222
/* Private Functions */
2323
/* Aim of the function is to get _timerObj pointer using htim pointer */
@@ -716,7 +716,7 @@ uint8_t getTimerClkSrc(TIM_TypeDef *tim)
716716
}
717717

718718

719-
#endif /* HAL_TIM_MODULE_ENABLED */
719+
#endif /* HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY */
720720

721721
#ifdef __cplusplus
722722
}

Diff for: cores/arduino/stm32/timer.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
#ifdef __cplusplus
2323
extern "C" {
2424
#endif
25-
#ifdef HAL_TIM_MODULE_ENABLED
25+
#if defined(HAL_TIM_MODULE_ENABLED) && !defined(HAL_TIM_MODULE_ONLY)
2626

2727
/* Exported constants --------------------------------------------------------*/
2828
#ifndef TIM_IRQ_PRIO
@@ -254,7 +254,7 @@ uint8_t getTimerClkSrc(TIM_TypeDef *tim);
254254
IRQn_Type getTimerUpIrq(TIM_TypeDef *tim);
255255
IRQn_Type getTimerCCIrq(TIM_TypeDef *tim);
256256

257-
#endif /* HAL_TIM_MODULE_ENABLED */
257+
#endif /* HAL_TIM_MODULE_ENABLED && !HAL_TIM_MODULE_ONLY */
258258

259259
#ifdef __cplusplus
260260
}

Diff for: cores/arduino/stm32/uart.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
#ifdef __cplusplus
4242
extern "C" {
4343
#endif
44-
#if defined(HAL_UART_MODULE_ENABLED)
44+
#if defined(HAL_UART_MODULE_ENABLED) && !defined(HAL_UART_MODULE_ONLY)
4545

4646
/* If DEBUG_UART is not defined assume this is the one linked to PIN_SERIAL_TX */
4747
#if !defined(DEBUG_UART)
@@ -1066,7 +1066,7 @@ void HAL_UARTEx_WakeupCallback(UART_HandleTypeDef *huart)
10661066
serial_t *obj = get_serial_obj(huart);
10671067
HAL_UART_Receive_IT(huart, &(obj->recv), 1);
10681068
}
1069-
#endif /* HAL_UART_MODULE_ENABLED */
1069+
#endif /* HAL_UART_MODULE_ENABLED && !HAL_UART_MODULE_ONLY */
10701070

10711071
#ifdef __cplusplus
10721072
}

Diff for: cores/arduino/stm32/uart.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
extern "C" {
4646
#endif
4747

48-
#if !defined(HAL_UART_MODULE_ENABLED)
48+
#if !defined(HAL_UART_MODULE_ENABLED) || defined(HAL_UART_MODULE_ONLY)
4949
#define serial_t void*
5050
#else
5151

@@ -186,7 +186,7 @@ void uart_enable_rx(serial_t *obj);
186186

187187
size_t uart_debug_write(uint8_t *data, uint32_t size);
188188

189-
#endif /* HAL_UART_MODULE_ENABLED */
189+
#endif /* HAL_UART_MODULE_ENABLED && !HAL_UART_MODULE_ONLY */
190190
#ifdef __cplusplus
191191
}
192192
#endif

0 commit comments

Comments
 (0)