Deconding query string when we get a key value from it.
[bertos.git] / bertos / hw / hw_sipo.h
index 82dce48828f18e1b55c428b5c1224fdeb66afad4..552d4dd5658f8774ca653252cef9ae4df02cdd86 100644 (file)
@@ -34,7 +34,6 @@
  * \brief Macro for HW_SIPO_H
  *
  *
- * \version $Id$
  *
  * \author Andrea Grandi <andrea@develer.com>
  * \author Daniele Basile <asterix@develer.com>
 #ifndef HW_SIPO_H
 #define HW_SIPO_H
 
-#warning TODO:This is an example implementation, you must implement it!
+/**
+ * Map sipo connection on board.
+ */
+typedef enum SipoMap
+{
+       SIPO_CNT
+} SipoMap;
+
+/**
+ * Define generic macro to set pins logic level
+ */
+#define SIPO_SET_LEVEL_LOW(dev)    do { /* Implement me! */   } while (0)
+#define SIPO_SET_LEVEL_HIGH(dev)   do { /* Implement me! */   } while (0)
+
+
+/**
+ * Generate one low pulse on select line.
+ */
+#define PULSE_LOW(dev)    do { /* Implement me! */   } while (0)
+
+/**
+ * Generate one hight pulse on select line.
+ */
+#define PULSE_HIGH(dev)     do { /* Implement me! */   } while (0)
 
 
 /**
- * Define the macros needed to set the serial input bit of SIPO device
- * low or high.
+ * Define the procedure to drive serial input in sipo device (SI).
  */
-#define SIPO_SI_HIGH()/* Implement me! */
-#define SIPO_SI_LOW() /* Implement me! */
+#define SIPO_SI_HIGH()   do { /* Implement me! */   } while (0)
+#define SIPO_SI_LOW()    do { /* Implement me! */   } while (0)
 
 /**
- * Drive pin to load the bit, presented in serial-in pin,
- * into sipo shift register.
+ * Drive clock to shift SI data into latch.
  */
-#define SIPO_SI_CLOCK() /* Implement me! */
+#define SIPO_SI_CLOCK(clk_pol) \
+       do { \
+               (void)clk_pol; \
+               /* Implement me! */ \
+       } while (0)
 
 /**
- * Clock the content of shift register to output.
+ * Do everything needed in order to load dato into sipo.
  */
-#define SIPO_LOAD()   /* Implement me! */
+#define SIPO_LOAD(device, load_pol)   do { /* Implement me! */   } while (0)
 
 /**
  * Enable the shift register output.
  */
-#define SIPO_ENABLE() /* Implement me! */
+#define SIPO_ENABLE()             do { /* Implement me! */   } while (0)
 
+/**
+ * Set polarity for Load, Clk, SI signals.
+ */
+#define SIPO_SET_LD_LEVEL(device, load_pol)  do { /* Implement me! */   } while (0)
+#define SIPO_SET_CLK_LEVEL(clock_pol)        do { /* Implement me! */   } while (0)
+#define SIPO_SET_SI_LEVEL()       do { /* Implement me! */   } while (0)
 
 /**
- * Do everything needed in order to init the SIPO pins.
+ * Do anything that needed to init sipo pins.
  */
-#define SIPO_INIT_PIN() \
-       do { \
-               /* Implement me! */ \
-       } while(0)
+#define SIPO_INIT_PIN()           do { /* Implement me! */   } while (0)
 
 #endif /* HW_SIPO_H */