Merge from kseries.
[bertos.git] / mware / pgm.h
index 4bd1018c451f7020f598f2800b6f812698591795..5f10d002ea5a6c153048467cd1746da88a79a20b 100755 (executable)
@@ -1,4 +1,4 @@
-/*!
+/**
  * \file
  * <!--
  * Copyright 2005 Develer S.r.l. (http://www.develer.com/)
        #ifndef PSTR
        #define PSTR(s) ({ static const char __c[] PROGMEM = (s); &__c[0]; })
        #endif
+       #ifndef PFUNC
+       #define PFUNC(x)      x ## _P
+       #endif
 
 #elif CPU_HARVARD
        #error Missing CPU support
 #define PSTR            /* nothing */
 #endif
 
+#ifndef PFUNC
+#define PFUNC(x) x
+#endif
+
 #ifndef PROGMEM
 #define PROGMEM         /* nothing */
 #endif
 
-/*!
+/**
  * \name Types for variables stored in program memory (harvard processors).
  * \{
  */
@@ -176,7 +183,7 @@ typedef PROGMEM int32_t pgm_int32_t;
 typedef PROGMEM uint32_t pgm_uint32_t;
 /*\}*/
 
-/*!
+/**
  * \name PGM support macros.
  *
  * These macros enable dual compilation of code for both program
@@ -209,7 +216,7 @@ typedef PROGMEM uint32_t pgm_uint32_t;
  */
 #ifdef _PROGMEM
        #define PGM_READ_CHAR(s) pgm_read_char(s)
-       #define PGM_FUNC(x)      x ## _P
+       #define PGM_FUNC(x)      PFUNC(x)
        #define PGM_STR(x)       PSTR(x)
        #define PGM_ATTR         PROGMEM
 #else