Sync to the latest odroid-wiringpi 3.0

Signed-off-by: Deokgyu Yang <secugyu@gmail.com>
diff --git a/bindings.i b/bindings.i
index db3984c..b53d142 100644
--- a/bindings.i
+++ b/bindings.i
@@ -1,21 +1,19 @@
 // Generated by generate-bindings.py - do not edit manually!
 
 // Header file WiringPi/wiringPi/wiringPi.h
-extern struct wiringPiNodeStruct *wiringPiFindNode (int pin);
-extern struct wiringPiNodeStruct *wiringPiNewNode  (int pinBase, int numPins);
 extern		int  wiringPiFailure	(int fatal, const char *message, ...);
 extern		int  msg		(int type, const char *message, ...);
 extern		int  moduleLoaded	(char *);
 extern		void setupCheck		(const char *fName);
-extern		void usingGpioMemCheck	(const char *what);
-extern		void setUsingGpioMem	( const unsigned int value );
+extern		void usingGpiomemCheck	(const char *what);
+extern		void setUsingGpiomem	(const unsigned int value);
 extern		void wiringPiVersion	(int *major, char **minor);
 extern		int  wiringPiSetup	(void);
 extern		int  wiringPiSetupSys	(void);
 extern		int  wiringPiSetupGpio	(void);
 extern		int  wiringPiSetupPhys	(void);
-extern		void setPadDrive	(int pin, int value);
-extern		int  getPadDrive	(int pin);
+extern		void setDrive		(int pin, int value);
+extern		int  getDrive		(int pin);
 extern		int  getAlt		(int pin);
 extern		int  getPUPD		(int pin);
 extern		void pinMode		(int pin, int mode);
@@ -26,22 +24,12 @@
 extern		void digitalWriteByte	(const int value);
 extern		void pwmWrite		(int pin, int value);
 extern		int  analogRead		(int pin);
-extern		void pwmSetMode		(int mode);
-extern		void pwmSetRange	(unsigned int range);
-extern		void pwmSetClock	(int divisor);
 extern		int  piGpioLayout	(void);
-extern		int  piBoardRev		(void); // Deprecated
 extern		void piBoardId		(int *model, int *rev, int *mem, int *maker, int *warranty);
 extern		int  wpiPinToGpio	(int wpiPin);
 extern		int  physPinToGpio	(int physPin);
-extern		void pinModeAlt		(int pin, int mode);
-extern		void analogWrite	(int pin, int value);
-extern		void pwmToneWrite	(int pin, int freq);
-extern		void gpioClockSet	(int pin, int freq);
-extern unsigned int  digitalReadByte	(void);
-extern unsigned int  digitalReadByte2	(void);
-extern		void digitalWriteByte	(int value);
-extern		void digitalWriteByte2	(int value);
+extern		void pwmSetRange	(unsigned int range);
+extern		void pwmSetClock	(int divisor);
 extern		int  waitForInterrupt	(int pin, int mS);
 extern		int  wiringPiISRCancel	(int pin);
 extern		int  piThreadCreate	(void *(*fn)(void *));
@@ -86,60 +74,6 @@
 extern uint8_t shiftIn      (uint8_t dPin, uint8_t cPin, uint8_t order) ;
 extern void    shiftOut     (uint8_t dPin, uint8_t cPin, uint8_t order, uint8_t val) ;
 
-// Header file WiringPi/wiringPi/drcSerial.h
-extern int drcSetupSerial (const int pinBase, const int numPins, const char *device, const int baud) ;
-
-// Header file WiringPi/wiringPi/ads1115.h
-extern int ads1115Setup (int pinBase, int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/max31855.h
-extern int max31855Setup (int pinBase, int spiChannel) ;
-
-// Header file WiringPi/wiringPi/max5322.h
-extern int max5322Setup (int pinBase, int spiChannel) ;
-
-// Header file WiringPi/wiringPi/mcp23008.h
-extern int mcp23008Setup (const int pinBase, const int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/mcp23016.h
-extern int mcp23016Setup (const int pinBase, const int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/mcp23016reg.h
-
-// Header file WiringPi/wiringPi/mcp23017.h
-extern int mcp23017Setup (const int pinBase, const int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/mcp23s08.h
-extern int mcp23s08Setup (const int pinBase, const int spiPort, const int devId) ;
-
-// Header file WiringPi/wiringPi/mcp23s17.h
-extern int mcp23s17Setup (int pinBase, int spiPort, int devId) ;
-
-// Header file WiringPi/wiringPi/mcp23x0817.h
-
-// Header file WiringPi/wiringPi/mcp23x08.h
-
-// Header file WiringPi/wiringPi/mcp3002.h
-extern int mcp3002Setup (int pinBase, int spiChannel) ;
-
-// Header file WiringPi/wiringPi/mcp3004.h
-extern int mcp3004Setup (int pinBase, int spiChannel) ;
-
-// Header file WiringPi/wiringPi/mcp3422.h
-extern int mcp3422Setup (int pinBase, int i2cAddress, int sampleRate, int gain) ;
-
-// Header file WiringPi/wiringPi/mcp4802.h
-extern int mcp4802Setup (int pinBase, int spiChannel) ;
-
-// Header file WiringPi/wiringPi/pcf8574.h
-extern int pcf8574Setup (const int pinBase, const int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/pcf8591.h
-extern int pcf8591Setup (const int pinBase, const int i2cAddress) ;
-
-// Header file WiringPi/wiringPi/sn3218.h
-extern int sn3218Setup (int pinBase) ;
-
 // Header file WiringPi/wiringPi/softPwm.h
 extern int  softPwmCreate (int pin, int value, int range) ;
 extern void softPwmWrite  (int pin, int value) ;
@@ -154,46 +88,8 @@
 extern void softToneStop   (int pin) ;
 extern void softToneWrite  (int pin, int freq) ;
 
-// Header file WiringPi/wiringPi/sr595.h
-extern int sr595Setup (const int pinBase, const int numPins,
-	const int dataPin, const int clockPin, const int latchPin) ;
-
-// Header file WiringPi/wiringPi/bmp180.h
-extern int bmp180Setup (const int pinBase) ;
-
-// Header file WiringPi/wiringPi/drcNet.h
-extern int drcSetupNet (const int pinBase, const int numPins, const char *ipAddress, const char *port, const char *password) ;
-
-// Header file WiringPi/wiringPi/ds18b20.h
-extern int ds18b20Setup (const int pinBase, const char *serialNum) ;
-
-// Header file WiringPi/wiringPi/htu21d.h
-extern int htu21dSetup (const int pinBase) ;
-
-// Header file WiringPi/wiringPi/pseudoPins.h
-extern int pseudoPinsSetup (const int pinBase) ;
-
-// Header file WiringPi/wiringPi/wpiExtensions.h
-extern int loadWPiExtension (char *progName, char *extensionData, int verbose) ;
-
-// Header file WiringPi/devLib/ds1302.h
-extern unsigned int ds1302rtcRead       (const int reg) ;
-extern void         ds1302rtcWrite      (const int reg, const unsigned int data) ;
-extern unsigned int ds1302ramRead       (const int addr) ;
-extern void         ds1302ramWrite      (const int addr, const unsigned int data) ;
-extern void         ds1302clockRead     (int clockData [8]) ;
-extern void         ds1302clockWrite    (const int clockData [8]) ;
-extern void         ds1302trickleCharge (const int diodes, const int resistors) ;
-extern void         ds1302setup         (const int clockPin, const int dataPin, const int csPin) ;
-
 // Header file WiringPi/devLib/font.h
 
-// Header file WiringPi/devLib/gertboard.h
-extern void gertboardAnalogWrite (const int chan, const int value) ;
-extern int  gertboardAnalogRead  (const int chan) ;
-extern int  gertboardSPISetup    (void) ;
-extern int  gertboardAnalogSetup (const int pinBase) ;
-
 // Header file WiringPi/devLib/lcd128x64.h
 extern void lcd128x64setOrigin         (int x, int y) ;
 extern void lcd128x64setOrientation    (int orientation) ;
@@ -227,34 +123,3 @@
 	const int rs, const int strb,
 	const int d0, const int d1, const int d2, const int d3, const int d4,
 	const int d5, const int d6, const int d7) ;
-
-// Header file WiringPi/devLib/maxdetect.h
-int maxDetectRead (const int pin, unsigned char buffer [4]) ;
-int readRHT03 (const int pin, int *temp, int *rh) ;
-
-// Header file WiringPi/devLib/piGlow.h
-extern void piGlow1     (const int leg,  const int ring, const int intensity) ;
-extern void piGlowLeg   (const int leg,  const int intensity) ;
-extern void piGlowRing  (const int ring, const int intensity) ;
-extern void piGlowSetup (int clear) ;
-
-// Header file WiringPi/devLib/piNes.h
-extern int          setupNesJoystick (int dPin, int cPin, int lPin) ;
-extern unsigned int  readNesJoystick (int joystick) ;
-
-// Header file WiringPi/devLib/scrollPhat.h
-extern void scrollPhatPoint      (int x, int y, int colour) ;
-extern void scrollPhatLine       (int x0, int y0, int x1, int y1, int colour) ;
-extern void scrollPhatLineTo     (int x, int y, int colour) ;
-extern void scrollPhatRectangle  (int x1, int y1, int x2, int y2, int colour, int filled) ;
-extern void scrollPhatUpdate     (void) ;
-extern void scrollPhatClear      (void) ;
-extern int  scrollPhatPutchar    (int c) ;
-extern void scrollPhatPuts       (const char *str) ;
-extern void scrollPhatPrintf     (const char *message, ...) ;
-extern void scrollPhatPrintSpeed (const int cps10) ;
-extern void scrollPhatIntensity  (const int percent) ;
-extern int  scrollPhatSetup      (void) ;
-
-// Header file WiringPi/devLib/piFace.h
-extern int  piFaceSetup (const int pinBase) ;
diff --git a/constants.py b/constants.py
index 104b62a..403642c 100644
--- a/constants.py
+++ b/constants.py
@@ -29,11 +29,6 @@
 PUD_DOWN = 1;
 PUD_UP = 2;
 
-# PWM
-
-PWM_MODE_MS = 0;
-PWM_MODE_BAL = 1;
-
 # Interrupt levels
 
 INT_EDGE_SETUP = 0;
diff --git a/generate-bindings.py b/generate-bindings.py
index 1434421..32ac7dc 100644
--- a/generate-bindings.py
+++ b/generate-bindings.py
@@ -10,7 +10,7 @@
 #print(HEADERS)
 
 def is_c_decl(line):
-    for fn in ['wiringPiISR','wiringPiSetupPiFace','wiringPiSetupPiFaceForGpioProg']:
+    for fn in ['wiringPiISR']:
         if fn in line:
             if 'wiringPiISRCancel' in line:
                 return True
diff --git a/setup.cfg b/setup.cfg
index bf653c5..0167558 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,5 +1,5 @@
 [metadata]
-author= Yang Deokgyu
+author= Deokgyu Yang
 author_email= secugyu@gmail.com
 url= https://github.com/hardkernel/WiringPi2-Python
 description= A Port of WiringPi Python project for ODROID boards
diff --git a/setup.py b/setup.py
index 45ab4d2..9b0fe45 100644
--- a/setup.py
+++ b/setup.py
@@ -12,8 +12,6 @@
 sources = glob('WiringPi/devLib/*.c')
 sources += glob('WiringPi/wiringPi/*.c')
 
-# Exclude rht03.
-sources = list(set(sources) - set(glob('WiringPi/wiringPi/rht03.c')))
 # Exclude template file.
 sources = list(set(sources) - set(glob('WiringPi/wiringPi/odroid_template.c')))
 
@@ -29,13 +27,6 @@
           "        source distribution (on pypi) is available.")
     sys.exit(1)
 
-try:
-    sources.remove('WiringPi/devLib/piFaceOld.c')
-except ValueError:
-    # the file is already excluded in the source distribution
-    pass
-
-
 # Fix so that build_ext runs before build_py
 # Without this, wiringpi.py is generated too late and doesn't
 # end up in the distribution when running setup.py bdist or bdist_wheel.
@@ -61,12 +52,12 @@
     include_dirs=['WiringPi/wiringPi','WiringPi/devLib'],
     sources=sources,
     swig_opts=['-threads'],
-    extra_link_args=['-lcrypt', '-lrt']
+    extra_link_args=[],
 )
 
 setup(
     name = 'odroid_wiringpi',
-    version = '2.44.6.0',
+    version = '3.0',
     ext_modules = [ _odroid_wiringpi ],
     py_modules = ["odroid_wiringpi"],
     install_requires=[],
diff --git a/wiringpi-class.py b/wiringpi-class.py
index 6d65424..8fd62e2 100644
--- a/wiringpi-class.py
+++ b/wiringpi-class.py
@@ -1,10 +1,4 @@
 %pythoncode %{
-class nes(object):
-  def setupNesJoystick(self,*args):
-    return setupNesJoystick(*args)
-  def readNesJoystick(self,*args):
-    return readNesJoystick(*args)
-
 class Serial(object):
   device = '/dev/ttyAMA0'
   baud = 9600
@@ -68,9 +62,6 @@
   PUD_DOWN = 1
   PUD_UP = 2
 
-  PWM_MODE_MS = 0
-  PWM_MODE_BAL = 1
-
   INT_EDGE_SETUP = 0
   INT_EDGE_FALLING = 1
   INT_EDGE_RISING = 2
@@ -90,8 +81,6 @@
       wiringPiSetupSys()
     if pinmode==self.WPI_MODE_PHYS:
       wiringPiSetupPhys()
-    if pinmode==self.WPI_MODE_PIFACE:
-      wiringPiSetupPiFace()
 
   def delay(self,*args):
     delay(*args)
@@ -105,8 +94,6 @@
   def piHiPri(self,*args):
     return piHiPri(*args)
 
-  def piBoardRev(self):
-    return piBoardRev()
   def wpiPinToGpio(self,*args):
     return wpiPinToGpio(*args)
   def getAlt(self,*args):
@@ -114,15 +101,13 @@
   def digitalWriteByte(self,*args):
     return digitalWriteByte(*args)
 
-  def setPadDrive(self,*args):
-    return setPadDrive(*args)
-  def getPadDrive(self,*args):
-    return getPadDrive(*args)
+  def setDrive(self,*args):
+    setDrive(*args)
+  def getDrive(self,*args):
+    return getDrive(*args)
   def getPUPD(self,*args):
     return getPUPD(*args)
 
-  def pwmSetMode(self,*args):
-    pwmSetMode(*args)
   def pwmSetRange(self,*args):
     pwmSetRange(*args)
   def pwmSetClock(self,*args):
@@ -170,6 +155,13 @@
   def softToneWrite(self,*args):
     return softToneWrite(*args)
 
+  def setupCheck(self, *args):
+    setupCheck(*args)
+  def usingGpiomemCheck(self, *args):
+    usingGpiomemCheck(*args)
+  def setUsingGpiomem(self, *args):
+    setUsingGpiomem(*args)
+
   def lcdHome(self,*args):
     return lcdHome(self,*args)
   def lcdCLear(self,*args):
@@ -186,12 +178,4 @@
     return lcdPrintf(self,*args)
   def lcdInit(self,*args):
     return lcdInit(self,*args)
-  def piGlowSetup(self,*args):
-    return piGlowSetup(self,*args)
-  def piGlow1(self,*args):
-    return piGlow1(self,*args)
-  def piGlowLeg(self,*args):
-    return piGlowLeg(self,*args)
-  def piGlowRing(self,*args):
-    return piGlowRing(self,*args)
 %}
diff --git a/wiringpi.i b/wiringpi.i
index c67d68d..23533f5 100644
--- a/wiringpi.i
+++ b/wiringpi.i
@@ -11,45 +11,12 @@
 #include "WiringPi/wiringPi/wiringPiSPI.h"
 #include "WiringPi/wiringPi/wiringSerial.h"
 #include "WiringPi/wiringPi/wiringShift.h"
-#include "WiringPi/wiringPi/drcSerial.h"
-#include "WiringPi/wiringPi/ads1115.h"
-#include "WiringPi/wiringPi/max31855.h"
-#include "WiringPi/wiringPi/max5322.h"
-#include "WiringPi/wiringPi/mcp23008.h"
-#include "WiringPi/wiringPi/mcp23016.h"
-#include "WiringPi/wiringPi/mcp23016reg.h"
-#include "WiringPi/wiringPi/mcp23017.h"
-#include "WiringPi/wiringPi/mcp23s08.h"
-#include "WiringPi/wiringPi/mcp23s17.h"
-#include "WiringPi/wiringPi/mcp23x0817.h"
-#include "WiringPi/wiringPi/mcp23x08.h"
-#include "WiringPi/wiringPi/mcp3002.h"
-#include "WiringPi/wiringPi/mcp3004.h"
-#include "WiringPi/wiringPi/mcp3422.h"
-#include "WiringPi/wiringPi/mcp4802.h"
-#include "WiringPi/wiringPi/pcf8574.h"
-#include "WiringPi/wiringPi/pcf8591.h"
-#include "WiringPi/wiringPi/sn3218.h"
 #include "WiringPi/wiringPi/softPwm.h"
 #include "WiringPi/wiringPi/softServo.h"
 #include "WiringPi/wiringPi/softTone.h"
-#include "WiringPi/wiringPi/sr595.h"
-#include "WiringPi/wiringPi/bmp180.h"
-#include "WiringPi/wiringPi/drcNet.h"
-#include "WiringPi/wiringPi/ds18b20.h"
-#include "WiringPi/wiringPi/htu21d.h"
-#include "WiringPi/wiringPi/pseudoPins.h"
-#include "WiringPi/wiringPi/wpiExtensions.h"
-#include "WiringPi/devLib/ds1302.h"
 #include "WiringPi/devLib/font.h"
-#include "WiringPi/devLib/gertboard.h"
 #include "WiringPi/devLib/lcd128x64.h"
 #include "WiringPi/devLib/lcd.h"
-#include "WiringPi/devLib/maxdetect.h"
-#include "WiringPi/devLib/piGlow.h"
-#include "WiringPi/devLib/piNes.h"
-#include "WiringPi/devLib/scrollPhat.h"
-#include "WiringPi/devLib/piFace.h"
 %}
 
 %apply unsigned char { uint8_t };