summaryrefslogtreecommitdiff
path: root/2.3-1/src/c
diff options
context:
space:
mode:
Diffstat (limited to '2.3-1/src/c')
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitget/u16bitgets.c~24
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitget/u8bitgets.c~24
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/dbitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/dbitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u16bitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u16bitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u16bitora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u16bitors.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u8bitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u8bitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u8bitora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitor/u8bitors.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitset/u16bitsets.c~20
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitset/u8bitsets.c~20
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/dbitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/dbitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitors.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitxora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u16bitxors.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitanda.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitands.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitors.c~9
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitxora.c~14
-rw-r--r--2.3-1/src/c/elementaryFunctions/bitxor/u8bitxors.c~9
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalIns.c30
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalOuts.c30
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalSetups.c38
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralDigital.h22
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralUtil.h20
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h27
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralUtil.h23
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/libraries/libbcm2835.abin0 -> 59846 bytes
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/libraries/libcblas.abin0 -> 261416 bytes
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/libraries/libgfortran.abin0 -> 1569996 bytes
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/libraries/liblapack.abin0 -> 6869860 bytes
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/libraries/librefblas.abin0 -> 441848 bytes
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMicros.c29
-rw-r--r--2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMillis.c30
42 files changed, 249 insertions, 364 deletions
diff --git a/2.3-1/src/c/elementaryFunctions/bitget/u16bitgets.c~ b/2.3-1/src/c/elementaryFunctions/bitget/u16bitgets.c~
deleted file mode 100644
index 20593bff..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitget/u16bitgets.c~
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitget.h"
-#include<stdio.h>
-
-uint16 u16bitgets(uint16 value,int position)
-{
-
- value = value >> (position -1);
- value = value & 1;
- return value;
-
- /*unsigned char mask = 1<<(position-1);
- uint16 bit = value&mask;
- if(bit > 0)
- {
- return 1;
- }
- else
- {
- return 0;
- }*/
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitget/u8bitgets.c~ b/2.3-1/src/c/elementaryFunctions/bitget/u8bitgets.c~
deleted file mode 100644
index 130bff86..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitget/u8bitgets.c~
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitget.h"
-#include<stdio.h>
-
-uint8 u8bitgets(uint8 value,int position)
-{
-
- value = value >> (position -1);
- value = value & 1;
- return value;
-
- /*unsigned char mask = 1<<(position-1);
- uint8 bit = value&mask;
- if(bit > 0)
- {
- return 1;
- }
- else
- {
- return 0;
- }*/
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/dbitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitor/dbitanda.c~
deleted file mode 100644
index d411e6e4..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/dbitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void dbitanda(double* x,double* y,int size,double* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = dbitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/dbitands.c~ b/2.3-1/src/c/elementaryFunctions/bitor/dbitands.c~
deleted file mode 100644
index a66e3c13..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/dbitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-double dbitands(double x,double y)
-{
- return ((int)x & (int)y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u16bitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u16bitanda.c~
deleted file mode 100644
index 743161ea..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u16bitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void u16bitanda(uint16* x,uint16* y,int size,uint16* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u16bitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u16bitands.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u16bitands.c~
deleted file mode 100644
index 7ba73c15..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u16bitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-uint16 u16bitands(uint16 x,uint16 y)
-{
- return (x & y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u16bitora.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u16bitora.c~
deleted file mode 100644
index 84722e18..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u16bitora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitor.h"
-
-void u16bitora(uint16* x,uint16* y,int size,uint16* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u16bitors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u16bitors.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u16bitors.c~
deleted file mode 100644
index e48e3000..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u16bitors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitor.h"
-
-uint16 u16bitors(uint16 x,uint16 y)
-{
- return (x | y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u8bitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u8bitanda.c~
deleted file mode 100644
index e1260a71..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u8bitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void u8bitanda(uint8* x,uint8* y,int size,uint8* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u8bitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u8bitands.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u8bitands.c~
deleted file mode 100644
index eda3ccc6..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u8bitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-uint8 u8bitands(uint8 x,uint8 y)
-{
- return (x & y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u8bitora.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u8bitora.c~
deleted file mode 100644
index edda9bba..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u8bitora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitor.h"
-
-void u8bitora(uint8* x,uint8* y,int size,uint8* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u8bitors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitor/u8bitors.c~ b/2.3-1/src/c/elementaryFunctions/bitor/u8bitors.c~
deleted file mode 100644
index 56d3540d..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitor/u8bitors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitor.h"
-
-uint8 u8bitors(uint8 x,uint8 y)
-{
- return (x | y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitset/u16bitsets.c~ b/2.3-1/src/c/elementaryFunctions/bitset/u16bitsets.c~
deleted file mode 100644
index 953e46c9..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitset/u16bitsets.c~
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitset.h"
-#include<stdio.h>
-
-uint16 u16bitsets(uint16 value,int position,int bit_value)
-{
- if(bit_value==1)
- {
- unsigned char mask1 = 1 << (position-1) ; // we could cast to unsigned char, just to be safe
- return (mask1 | value);
- }
- else
- {
- unsigned char mask2 = ~(1 << (position-1)); // we could cast to unsigned char, just to be safe
- return (mask2 & value);
-
- }
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitset/u8bitsets.c~ b/2.3-1/src/c/elementaryFunctions/bitset/u8bitsets.c~
deleted file mode 100644
index 5f44dcd8..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitset/u8bitsets.c~
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitset.h"
-#include<stdio.h>
-
-uint8 u8bitsets(uint8 value,int position,int bit_value)
-{
- if(bit_value==1)
- {
- unsigned char mask1 = 1 << (position-1) ; // we could cast to unsigned char, just to be safe
- return (mask1 | value);
- }
- else
- {
- unsigned char mask2 = ~(1 << (position-1)); // we could cast to unsigned char, just to be safe
- return (mask2 & value);
-
- }
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/dbitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/dbitanda.c~
deleted file mode 100644
index d411e6e4..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/dbitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void dbitanda(double* x,double* y,int size,double* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = dbitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/dbitands.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/dbitands.c~
deleted file mode 100644
index a66e3c13..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/dbitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-double dbitands(double x,double y)
-{
- return ((int)x & (int)y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitanda.c~
deleted file mode 100644
index 743161ea..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void u16bitanda(uint16* x,uint16* y,int size,uint16* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u16bitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitands.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitands.c~
deleted file mode 100644
index 7ba73c15..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-uint16 u16bitands(uint16 x,uint16 y)
-{
- return (x & y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitora.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitora.c~
deleted file mode 100644
index 84722e18..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitor.h"
-
-void u16bitora(uint16* x,uint16* y,int size,uint16* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u16bitors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitors.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitors.c~
deleted file mode 100644
index e48e3000..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitor.h"
-
-uint16 u16bitors(uint16 x,uint16 y)
-{
- return (x | y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxora.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxora.c~
deleted file mode 100644
index 6f50f068..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitxor.h"
-
-void u16bitxora(uint16* x,uint16* y,int size,uint16* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u16bitxors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxors.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxors.c~
deleted file mode 100644
index 03ca8f83..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u16bitxors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitxor.h"
-
-uint16 u16bitxors(uint16 x,uint16 y)
-{
- return (x ^ y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitanda.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitanda.c~
deleted file mode 100644
index e1260a71..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitanda.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitand.h"
-
-void u8bitanda(uint8* x,uint8* y,int size,uint8* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u8bitands(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitands.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitands.c~
deleted file mode 100644
index eda3ccc6..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitands.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitand.h"
-
-uint8 u8bitands(uint8 x,uint8 y)
-{
- return (x & y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitora.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitora.c~
deleted file mode 100644
index edda9bba..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitor.h"
-
-void u8bitora(uint8* x,uint8* y,int size,uint8* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u8bitors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitors.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitors.c~
deleted file mode 100644
index 56d3540d..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitor.h"
-
-uint8 u8bitors(uint8 x,uint8 y)
-{
- return (x | y);
-
-}
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxora.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxora.c~
deleted file mode 100644
index ad7cc24e..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxora.c~
+++ /dev/null
@@ -1,14 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-#include "bitxor.h"
-
-void u8bitxora(uint8* x,uint8* y,int size,uint8* out)
-{
- int i = 0;
- for(i=0;i<size;i++)
- {
- out[i] = u8bitxors(x[i],y[i]);
- }
-
-
-}
-
diff --git a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxors.c~ b/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxors.c~
deleted file mode 100644
index 9a346eee..00000000
--- a/2.3-1/src/c/elementaryFunctions/bitxor/u8bitxors.c~
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Scilab2C FOSSEE IITB */
-
-#include "bitxor.h"
-
-uint8 u8bitxors(uint8 x,uint8 y)
-{
- return (x ^ y);
-
-}
diff --git a/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalIns.c b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalIns.c
new file mode 100644
index 00000000..6f065586
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalIns.c
@@ -0,0 +1,30 @@
+// Function to read the state of the gpio pin
+//
+// Calling Sequence
+// u8RPI_DigitalIn(pin)
+//
+// Parameters
+// pin : pin of RPi to be read
+//
+// Returns
+// state: Current state of the specified gpio pin
+//
+// Description
+// There are few pins available on RPi as Gpio or digital i/o. These pins can be used as digital output or input. Using this function, current state (low/high) of any gpio pin can be read. 'pin' name must be provided from list provided. Please refer '' for complete list of pins. 'state' can be 0 or 1 depending upon state of the pin (Low/High). RPI_DigitalSetup with appropriate arguments must be called before using this function.
+// Examples
+// u8RPI_DigitalIn(RPI_GPIO_P1_03,1) //Returns the state of pin 3 of header P1
+//
+//
+// Authors
+// Siddhesh Wani
+//
+
+#include "types.h"
+#include "RPIPeripheralDigital.h"
+
+uint8 u8RPIDigitalIns(uint8 pin)
+{
+ uint8 state = 0;
+ state = bcm2835_gpio_lev(pin);
+ return (state);
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalOuts.c b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalOuts.c
new file mode 100644
index 00000000..375ca891
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalOuts.c
@@ -0,0 +1,30 @@
+// Function to change the output state of the gpio pin
+//
+// Calling Sequence
+// u8RPI_DigitalOuts(pin,state)
+//
+// Parameters
+// pin : pin of RPi to be used
+// state : desired output state for pin (0 -> LOW, 1 -> HIGH)
+//
+// Description
+// There are few pins available on RPi as Gpio or digital i/o. These pins can be used as digital output or input. 'Pin' name must be provided from list provided. Please refer '' for complete list of pins. 'state' can be 0 or 1 depending upon desired output (Low/High). RPI_DigitalSetup with appropriate arguments must be called before using this function.
+// Examples
+// u8RPI_DigitalOuts(RPI_GPIO_P1_03,1) //Sets pin 3 of header P1 as 'high' output
+//
+//
+// Authors
+// Siddhesh Wani
+//
+
+#include "types.h"
+#include "RPIPeripheralDigital.h"
+
+
+uint8 u8RPIDigitalOuts(uint8 pin, uint8 state)
+{
+ if (state == 0) //low output
+ bcm2835_gpio_clr(pin);
+ if (state == 1) //high output
+ bcm2835_gpio_set(pin);
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalSetups.c b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalSetups.c
new file mode 100644
index 00000000..277c620f
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/gpio/u8RPIDigitalSetups.c
@@ -0,0 +1,38 @@
+// Function to setup digital pins.
+//
+// Calling Sequence
+// u8RPI_DigitalSetup(pin,direction)
+//
+// Parameters
+// pin : pin of RPi to be used
+// direction : direction to be set for pin (0 -> INPUT, 1 -> OUTPUT)
+//
+// Description
+// There are few pins available on RPi as Gpio or digital io. These pins can be used as digital output or input. Pin name must be provided from list provided. Please refer '' for complete list of pins. Direction can be 0 or 1 depending upon desired function (Input/output)
+// Examples
+// RPI_DigitalSetup(RPI_GPIO_P1_03,0) //Sets pin 3 of header P1 as input
+//
+// See also
+// RPI_DigitalIn RPI_DigitalOut
+//
+//
+// Authors
+// Siddhesh Wani
+//
+
+// This is curretly dummy function. It provides no functionality but is required
+// for providing support for generating C code for RPi.
+#include "types.h"
+#include "RPIPeripheralDigital.h"
+
+uint8 u8RPIDigitalSetups(uint8 pin, uint8 direction)
+{
+ if(direction == 1) //Pin to be used as output
+ {
+ bcm2835_gpio_fsel(pin, BCM2835_GPIO_FSEL_OUTP);
+ }
+ else
+ {
+ bcm2835_gpio_fsel(pin, BCM2835_GPIO_FSEL_INPT);
+ }
+}
diff --git a/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralDigital.h b/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralDigital.h
new file mode 100644
index 00000000..575a8b43
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralDigital.h
@@ -0,0 +1,22 @@
+/* This file declares functions and constants related to GPIO pins*/
+
+#ifndef __RPIPERIPHERALGPIO_H__
+#define __RPIPERIPHERALGPIO_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+#include "types.h"
+#include "bcm2835.h"
+
+uint8 u8RPIDigitalSetups(uint8 pin, uint8 direction);
+uint8 u8RPIDigitalOuts(uint8 pin, uint8 state);
+uint8 u8RPIDigitalIns(uint8 pin);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif //__RPIPERIPHERALGPIO_H__
diff --git a/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralUtil.h b/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralUtil.h
new file mode 100644
index 00000000..809595f3
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/includes/RPIPeripheralUtil.h
@@ -0,0 +1,20 @@
+/* This file declares functions and constants related to rasberrypi*/
+
+#ifndef __RPIPERIPHERALUTIL_H__
+#define __RPIPERIPHERALUTIL_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "types.h"
+#include "bcm2835.h"
+
+uint8 u16RPIDelayMillis(uint16 time);
+uint8 u16RPIDelayMicros(uint16 time);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif //__RPIPERIPHERALUTIL_H__
diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h
new file mode 100644
index 00000000..022bed56
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h
@@ -0,0 +1,27 @@
+//This file defines constants corresponding to gpios.
+//
+// Authors
+// Siddhesh Wani
+//
+
+#ifndef __INT_RPIPERIPHERALGPIO_H__
+#define __INT_RPIPERIPHERALGPIO_H__
+
+#include "types.h"
+#include "RPIPeripheralDigital.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define RPI_DigitalSetup(in1,in2) u8RPIDigitalSetups((uint8) in1, (uint8) in2);
+
+#define RPI_DigitalIn(in1,in2) u8RPIDigitalIns((uint8) in1);
+
+#define RPI_DigitalOut(in1,in2) u8RPIDigitalOuts((uint8) in1, (uint8) in2);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__RPIPERIPHERALGPIO_H__ */
diff --git a/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralUtil.h b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralUtil.h
new file mode 100644
index 00000000..92020f9a
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralUtil.h
@@ -0,0 +1,23 @@
+//
+// Authors
+// Siddhesh Wani
+//
+
+#ifndef __INT_RPIPERIPHERALUTIL_H__
+#define __INT_RPIPERIPHERALUTIL_H__
+
+#include "types.h"
+#include "RPIPeripheralUtil.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define RPI_DelayMicro(in1) u16RPIDelayMicros((uint16) in1);
+#define RPI_DelayMilli(in1) u16RPIDelayMillis((uint16) in1);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__RPIPERIPHERALUTIL_H__ */
diff --git a/2.3-1/src/c/hardware/rasberrypi/libraries/libbcm2835.a b/2.3-1/src/c/hardware/rasberrypi/libraries/libbcm2835.a
new file mode 100644
index 00000000..bab5afcf
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/libraries/libbcm2835.a
Binary files differ
diff --git a/2.3-1/src/c/hardware/rasberrypi/libraries/libcblas.a b/2.3-1/src/c/hardware/rasberrypi/libraries/libcblas.a
new file mode 100644
index 00000000..7a460be9
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/libraries/libcblas.a
Binary files differ
diff --git a/2.3-1/src/c/hardware/rasberrypi/libraries/libgfortran.a b/2.3-1/src/c/hardware/rasberrypi/libraries/libgfortran.a
new file mode 100644
index 00000000..7aacee8f
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/libraries/libgfortran.a
Binary files differ
diff --git a/2.3-1/src/c/hardware/rasberrypi/libraries/liblapack.a b/2.3-1/src/c/hardware/rasberrypi/libraries/liblapack.a
new file mode 100644
index 00000000..726f2b99
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/libraries/liblapack.a
Binary files differ
diff --git a/2.3-1/src/c/hardware/rasberrypi/libraries/librefblas.a b/2.3-1/src/c/hardware/rasberrypi/libraries/librefblas.a
new file mode 100644
index 00000000..300a0db5
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/libraries/librefblas.a
Binary files differ
diff --git a/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMicros.c b/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMicros.c
new file mode 100644
index 00000000..e564d882
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMicros.c
@@ -0,0 +1,29 @@
+// Function to insert some delay in code execution.
+//
+// Calling Sequence
+// u16RPIDelayMicros(time)
+//
+// Parameters
+// time: time(microseconds) for which execution is to be delayed
+//
+// Description
+// this function can be used for insertig execution delays. 'time' should be
+// specified in microseconds.'time' should be between (1-65536).
+// Note: Delay inserted by this function is not accurate, but depedent on
+// operating system, other running tasks etc.
+//
+// Examples
+// u16RPIDelayMicros(100) //This will delay the execution of next code by 100 ms.
+//
+//
+// Authors
+// Siddhesh Wani
+//
+#include "types.h"
+#include "RPIPeripheralUtil.h"
+
+uint8 u16RPIDelayMicros(uint16 time)
+{
+ bcm2835_delayMicroseconds(time);
+}
+
diff --git a/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMillis.c b/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMillis.c
new file mode 100644
index 00000000..bc2e6dd0
--- /dev/null
+++ b/2.3-1/src/c/hardware/rasberrypi/util/u16RPIDelayMillis.c
@@ -0,0 +1,30 @@
+// Function to insert some delay in code execution.
+//
+// Calling Sequence
+// u16RPIDelayMillis(time)
+//
+// Parameters
+// time: time(milliseconds) for which execution is to be delayed
+//
+// Description
+// this function can be used for insertig execution delays. 'time' should be
+// specified in milliseconds.'time' should be between (1-65536).
+// Note: Delay inserted by this function is not accurate, but depedent on
+// operating system, other running tasks etc.
+//
+// Examples
+// u16RPIDelayMillis(100) //This will delay the execution of next code by 100 ms.
+//
+//
+// Authors
+// Siddhesh Wani
+//
+#include "types.h"
+#include "RPIPeripheralUtil.h"
+
+uint8 u16RPIDelayMillis(uint16 time)
+{
+ bcm2835_delay(time);
+
+}
+