Skip to content

Commit

Permalink
Merge remote-tracking branch 'github/deprecationmacro'
Browse files Browse the repository at this point in the history
  • Loading branch information
esden committed Feb 19, 2013
2 parents 3ef44bf + a67a070 commit 3277c58
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 24 deletions.
13 changes: 13 additions & 0 deletions include/libopencm3/cm3/common.h
Expand Up @@ -42,6 +42,19 @@ typedef uint64_t u64;
# define END_DECLS
#endif

/* Full-featured deprecation attribute with fallback for older compilers. */

#ifdef __GNUC__
# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR_ > 4)
# define LIBOPENCM3_DEPRECATED(x) __attribute__ ((deprecated (x)))
# else
# define LIBOPENCM3_DEPRECATED(x) __attribute__ ((deprecated))
# endif
#else
# define LIBOPENCM3_DEPRECATED(x)
#endif


/* Generic memory-mapped I/O accessor functions */
#define MMIO8(addr) (*(volatile u8 *)(addr))
#define MMIO16(addr) (*(volatile u16 *)(addr))
Expand Down
30 changes: 6 additions & 24 deletions include/libopencm3/stm32/f1/adc.h
Expand Up @@ -707,15 +707,7 @@ void adc_reset_calibration(u32 adc);
void adc_calibration(u32 adc);
void adc_set_continuous_conversion_mode(u32 adc);
void adc_set_single_conversion_mode(u32 adc);
#ifdef __GNUC__
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR_ > 4)
void adc_on(u32 adc) __attribute__ ((deprecated ("will be removed in the first release")));
#else
void adc_on(u32 adc) __attribute__ ((deprecated));
#endif
#else
void adc_on(u32 adc);
#endif
void adc_on(u32 adc) LIBOPENCM3_DEPRECATED("will be removed in the first release");
void adc_off(u32 adc);
void adc_set_sample_time(u32 adc, u8 channel, u8 time);
void adc_set_sample_time_on_all_channels(u32 adc, u8 time);
Expand All @@ -724,21 +716,11 @@ void adc_set_watchdog_low_threshold(u32 adc, u16 threshold);
void adc_set_regular_sequence(u32 adc, u8 length, u8 channel[]);
void adc_set_injected_sequence(u32 adc, u8 length, u8 channel[]);

#ifdef __GNUC__
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR_ > 4)
void adc_set_continous_conversion_mode(u32 adc) __attribute__ ((deprecated ("change to adc_set_continuous_conversion_mode")));
void adc_set_conversion_time(u32 adc, u8 channel, u8 time) __attribute__ ((deprecated ("change to adc_set_sample_time")));
void adc_set_conversion_time_on_all_channels(u32 adc, u8 time) __attribute__ ((deprecated ("change to adc_set_sample_time_on_all_channels")));
void adc_enable_jeoc_interrupt(u32 adc) __attribute__ ((deprecated ("change to adc_enable_eoc_interrupt_injected")));
void adc_disable_jeoc_interrupt(u32 adc) __attribute__ ((deprecated ("change to adc_disable_eoc_interrupt_injected")));
#else
void adc_set_continous_conversion_mode(u32 adc) __attribute__ ((deprecated));
void adc_set_conversion_time(u32 adc, u8 channel, u8 time) __attribute__ ((deprecated));
void adc_set_conversion_time_on_all_channels(u32 adc, u8 time) __attribute__ ((deprecated));
void adc_enable_jeoc_interrupt(u32 adc) __attribute__ ((deprecated));
void adc_disable_jeoc_interrupt(u32 adc) __attribute__ ((deprecated));
#endif
#endif
void adc_set_continous_conversion_mode(u32 adc) LIBOPENCM3_DEPRECATED("change to adc_set_continuous_conversion_mode");
void adc_set_conversion_time(u32 adc, u8 channel, u8 time) LIBOPENCM3_DEPRECATED("change to adc_set_sample_time");
void adc_set_conversion_time_on_all_channels(u32 adc, u8 time) LIBOPENCM3_DEPRECATED("change to adc_set_sample_time_on_all_channels");
void adc_enable_jeoc_interrupt(u32 adc) LIBOPENCM3_DEPRECATED("change to adc_enable_eoc_interrupt_injected");
void adc_disable_jeoc_interrupt(u32 adc) LIBOPENCM3_DEPRECATED("change to adc_disable_eoc_interrupt_injected");
END_DECLS

#endif
Expand Down

0 comments on commit 3277c58

Please sign in to comment.