/**CFile**************************************************************** FileName [satTruth.h] SystemName [ABC: Logic synthesis and verification system.] PackageName [SAT solver.] Synopsis [Truth table computation package.] Author [Alan Mishchenko ] Affiliation [UC Berkeley] Date [Ver. 1.0. Started - January 1, 2004.] Revision [$Id: satTruth.h,v 1.0 2004/01/01 1:00:00 alanmi Exp $] ***********************************************************************/ #ifndef ABC__sat__bsat__satTruth_h #define ABC__sat__bsat__satTruth_h //////////////////////////////////////////////////////////////////////// /// INCLUDES /// //////////////////////////////////////////////////////////////////////// #include #include #include #include #include "misc/util/abc_global.h" ABC_NAMESPACE_HEADER_START //////////////////////////////////////////////////////////////////////// /// PARAMETERS /// //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// /// STRUCTURE DEFINITIONS /// //////////////////////////////////////////////////////////////////////// typedef struct Tru_Man_t_ Tru_Man_t; //////////////////////////////////////////////////////////////////////// /// GLOBAL VARIABLES /// //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// /// MACRO DEFINITIONS /// //////////////////////////////////////////////////////////////////////// static inline int Tru_ManEqual( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) if(pOut[w]!=pIn[w]) return 0; return 1; } static inline int Tru_ManEqual0( word * pOut, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) if(pOut[w]!=0) return 0; return 1; } static inline int Tru_ManEqual1( word * pOut, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) if(pOut[w]!=~(word)0)return 0; return 1; } static inline word * Tru_ManCopy( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] = pIn[w]; return pOut; } static inline word * Tru_ManClear( word * pOut, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] = 0; return pOut; } static inline word * Tru_ManFill( word * pOut, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] = ~(word)0; return pOut; } static inline word * Tru_ManNot( word * pOut, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] = ~pOut[w]; return pOut; } static inline word * Tru_ManAnd( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] &= pIn[w]; return pOut; } static inline word * Tru_ManOr( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] |= pIn[w]; return pOut; } static inline word * Tru_ManCopyNot( word * pOut, word * pIn, int nWords ){ int w; for ( w = 0; w < nWords; w++ ) pOut[w] = ~pIn[w]; return pOut; } static inline word * Tru_ManAndNot( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] &= ~pIn[w]; return pOut; } static inline word * Tru_ManOrNot( word * pOut, word * pIn, int nWords ) { int w; for ( w = 0; w < nWords; w++ ) pOut[w] |= ~pIn[w]; return pOut; } static inline word * Tru_ManCopyNotCond( word * pOut, word * pIn, int nWords, int fCompl ){ return fCompl ? Tru_ManCopyNot(pOut, pIn, nWords) : Tru_ManCopy(pOut, pIn, nWords); } static inline word * Tru_ManAndNotCond( word * pOut, word * pIn, int nWords, int fCompl ) { return fCompl ? Tru_ManAndNot(pOut, pIn, nWords) : Tru_ManAnd(pOut, pIn, nWords); } static inline word * Tru_ManOrNotCond( word * pOut, word * pIn, int nWords, int fCompl ) { return fCompl ? Tru_ManOrNot(pOut, pIn, nWords) : Tru_ManOr(pOut, pIn, nWords); } //////////////////////////////////////////////////////////////////////// /// FUNCTION DECLARATIONS /// //////////////////////////////////////////////////////////////////////// extern Tru_Man_t * Tru_ManAlloc( int nVars ); extern void Tru_ManFree( Tru_Man_t * p ); extern word * Tru_ManVar( Tru_Man_t * p, int v ); extern word * Tru_ManFunc( Tru_Man_t * p, int h ); extern int Tru_ManInsert( Tru_Man_t * p, word * pTruth ); //extern int Tru_ManHandleMax( Tru_Man_t * p ); ABC_NAMESPACE_HEADER_END #endif //////////////////////////////////////////////////////////////////////// /// END OF FILE /// //////////////////////////////////////////////////////////////////////// 5'>35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
/dts-v1/;

#include "TPLINK-8M.dtsi"

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>

/ {
	compatible = "tplink,tl-wr841n-v13", "mediatek,mt7628an-soc";
	model = "TP-Link TL-WR841N v13";

	gpio-keys-polled {
		compatible = "gpio-keys-polled";
		#address-cells = <1>;
		#size-cells = <0>;
		poll-interval = <20>;

		reset {
			label = "reset";
			gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_RESTART>;
		};

		rfkill {
			label = "rfkill";
			gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_RFKILL>;
		};
	};

	gpio-leds {
		compatible = "gpio-leds";

		power {
			label = "tl-wr841n-v13:green:power";
			gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
		};

		wps {
			label = "tl-wr841n-v13:green:wps";
			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
		};

		lan1 {
			label = "tl-wr841n-v13:green:lan1";
			gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
		};

		lan2 {
			label = "tl-wr841n-v13:green:lan2";
			gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
		};

		lan3 {
			label = "tl-wr841n-v13:green:lan3";
			gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
		};

		lan4 {
			label = "tl-wr841n-v13:green:lan4";
			gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
		};

		wan_green {
			label = "tl-wr841n-v13:green:wan";
			gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
		};

		wan_orange {
			label = "tl-wr841n-v13:orange:wan";
			gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
		};

		wlan {
			label = "tl-wr841n-v13:green:wlan";
			gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
		};
	};
};

&pinctrl {
	state_default: pinctrl0 {
		gpio {
			ralink,group = "gpio", "p0led_an", "p1led_an", "p2led_an", "p3led_an", "p4led_an", "perst", "refclk", "uart1", "wdt", "wled_an";
			ralink,function = "gpio";
		};
	};
};