⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1009.fip.patch

📁 sm86xx内核源包括补丁( GPL )的
💻 PATCH
📖 第 1 页 / 共 4 页
字号:
diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linux-2.6.15.ref/arch/mips/configs/tango2_defconfig linux-2.6.15/arch/mips/configs/tango2_defconfig--- linux-2.6.15.ref/arch/mips/configs/tango2_defconfig	2006-08-09 09:37:14.000000000 -0700+++ linux-2.6.15/arch/mips/configs/tango2_defconfig	2006-08-09 11:17:24.000000000 -0700@@ -703,6 +703,9 @@ CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_TANGOX_IR=m+CONFIG_TANGOX_FIP=m+CONFIG_TANGOX_FIP_REF1=y+# CONFIG_TANGOX_FIP_REF2 is not set CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linux-2.6.15.ref/arch/mips/configs/tango3_defconfig linux-2.6.15/arch/mips/configs/tango3_defconfig--- linux-2.6.15.ref/arch/mips/configs/tango3_defconfig	2006-08-09 09:37:49.000000000 -0700+++ linux-2.6.15/arch/mips/configs/tango3_defconfig	2006-08-09 11:17:54.000000000 -0700@@ -698,6 +698,9 @@ CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_JSM is not set CONFIG_TANGOX_IR=m+CONFIG_TANGOX_FIP=m+CONFIG_TANGOX_FIP_REF1=y+# CONFIG_TANGOX_FIP_REF2 is not set CONFIG_UNIX98_PTYS=y CONFIG_LEGACY_PTYS=y CONFIG_LEGACY_PTY_COUNT=256diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linux-2.6.15.ref/drivers/char/fipkernel.c linux-2.6.15/drivers/char/fipkernel.c--- linux-2.6.15.ref/drivers/char/fipkernel.c	1969-12-31 16:00:00.000000000 -0800+++ linux-2.6.15/drivers/char/fipkernel.c	2006-08-09 11:16:26.000000000 -0700@@ -0,0 +1,1310 @@+/*****************************************+ *  Copyright 漏 2001-2007+ *  Sigma Designs, Inc. All Rights Reserved+ *  Proprietary and Confidential+ *  Modified for KiSS Front Panel support+ *  By Stefan Hallas Andersen+ ******************************************/++#ifdef __KERNEL__ +#include <linux/init.h>+#include <linux/slab.h>+#include <linux/irq.h>+#include <linux/poll.h>+#include <linux/interrupt.h>+#include <linux/timer.h>+#include <asm/delay.h>+#include <asm/io.h>+#ifdef CONFIG_TANGO2+#include <asm/tango2/tango2_gbus.h>+#include <asm/tango2/hardware.h>+#include <asm/tango2/fip.h>+#elif defined(CONFIG_TANGO3)+#include <asm/tango3/tango3_gbus.h>+#include <asm/tango3/hardware.h>+#include <asm/tango3/fip.h>+#endif+#else+#include "version.h"+#include "config.h"+#include "io.h"+#endif /* __KERNEL__ */++extern int tangox_fip_enabled(void);++/* chip specific register definitions */++/* EM85XX */+#if 0+#define	FIP_BASE				0x00500D00+#define	FIP_COMMAND				0x00+#define	FIP_DISPLAY_DATA			0x04+#define	FIP_LED_DATA				0x08+#define	FIP_KEY_DATA1				0x0C+#define	FIP_KEY_DATA2				0x10+#define	FIP_SWITCH_DATA				0x14+#define	FIP_CLK_DIV				0x20+#define	FIP_TRISTATE_MODE			0x24++#define FIP_TRISTATE_MODE_MASK			0x2+#define FIP_DIVIDER				40+#endif++#ifndef CONFIG_TANGOX+#error "Only TANGOX is supported/tested."+#endif++/* TANGOX */+#define	FIP_BASE				(REG_BASE_system_block + 0x500)+#define	FIP_COMMAND				0x40+#define	FIP_DISPLAY_DATA			0x44+#define	FIP_LED_DATA				0x48+#define	FIP_KEY_DATA1				0x4c+#define	FIP_KEY_DATA2				0x50+#define	FIP_SWITCH_DATA				0x54+#define FIP_CONFIG				0x58+#define FIP_INT					0x5c++#if defined(CONFIG_TANGOX_FIP_REF1)+#define FIP_DIVIDER				27	/* default value */+#elif defined(CONFIG_TANGOX_FIP_REF2)+#define FIP_DIVIDER				54	/* default value */+#endif++#define FIP_BUSY				0x200+#define FIP_ENABLE				0x400++/* FIP commands							*/+#define	FIP_CMD_DISP_MODE_08DIGITS_20SEGMENTS		0x00+#define	FIP_CMD_DISP_MODE_09DIGITS_19SEGMENTS		0x08+#define	FIP_CMD_DISP_MODE_10DIGITS_18SEGMENTS		0x09+#define	FIP_CMD_DISP_MODE_11DIGITS_17SEGMENTS		0x0a+#define	FIP_CMD_DISP_MODE_12DIGITS_16SEGMENTS		0x0b+#define	FIP_CMD_DISP_MODE_13DIGITS_15SEGMENTS		0x0c+#define	FIP_CMD_DISP_MODE_14DIGITS_14SEGMENTS		0x0d+#define	FIP_CMD_DISP_MODE_15DIGITS_13SEGMENTS		0x0e+#define	FIP_CMD_DISP_MODE_16DIGITS_12SEGMENTS		0x0f+#define	FIP_CMD_DATA_SET_RW_MODE_WRITE_DISPLAY		0x40+#define	FIP_CMD_DATA_SET_RW_MODE_WRITE_LED_PORT		0x41+#define	FIP_CMD_DATA_SET_RW_MODE_READ_KEYS		0x42+#define	FIP_CMD_DATA_SET_RW_MODE_READ_SWITCHES		0x43+#define	FIP_CMD_DATA_SET_ADR_MODE_INCREMENT_ADR		0x40+#define	FIP_CMD_DATA_SET_ADR_MODE_FIXED_ADR		0x44+#define	FIP_CMD_DATA_SET_OP_MODE_NORMAL_OPERATION	0x40+#define	FIP_CMD_DATA_SET_OP_MODE_TEST_MODE		0x48+#define	FIP_CMD_ADR_SETTING				0xC0+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_1_16		0x80+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_2_16		0x81+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_4_16		0x82+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_10_16		0x83+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_11_16		0x84+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_12_16		0x85+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_13_16		0x86+#define	FIP_CMD_DISP_CTRL_PULSE_WIDTH_14_16		0x87+#define	FIP_CMD_DISP_CTRL_TURN_DISPLAY_OFF_MASK		0x87+#define	FIP_CMD_DISP_CTRL_TURN_DISPLAY_ON		0x88++#if defined(CONFIG_TANGOX_FIP_REF1)+#define FIP_DISPLAY_MODE	0xa+#define MAX_FIP_RAM		23+#define NUM_SYMBOLS		23+#define NUM_CHARACTERS		72+#define NUM_DIGITS		7+#elif defined(CONFIG_TANGOX_FIP_REF2)+#define FIP_DISPLAY_MODE	0x0a+#define MAX_FIP_RAM		0x2f+#define NUM_SYMBOLS		206+#define NUM_CHARACTERS		69+#define NUM_X_CHARACTERS	12+#define NUM_DIGITS		8+#define NUM_X_DIGITS		4+#endif++#define L_OFF			-1	//means light is or should be off+#define FIP_NO_CLEAR		0x0004++#if defined(CONFIG_TANGOX_FIP_REF1)+/*+  14 SEGMENT LCD (EXTENDED CHARACTERS MAP)++     a +   -----+f |\j| /| b +  |i\|/k|+  g-- --h+e |n/|\l| c+  |/m| \|+   -----+     d   +*/+#define DIGIT_L(b7,b6,c,l,m,n,e,d)	((b7 << 7) | (b6 << 6) | (c << 5) | (l << 4) | (m << 3) | (n << 2) | (e << 1) | d)+#define DIGIT_H(g,h,i,j,k,a,b,f)	((g << 7) | (h << 6) | (i << 5) | (j << 4) | (k << 3) | (a << 2) | (b << 1) | f)++/* sequence must match fipcharacters */+static const char fipcharactersmap[NUM_CHARACTERS+1] = " +-/0123456789<>ABCDEFGHIJKLMNOPQRSTUVWXYZ\\-abcdefghijklmnopqrstuvwxyz|_";+#elif defined(CONFIG_TANGOX_FIP_REF2)+#define DIGIT_L(M,C,E,R,P,B,D,U)	((M << 7) | (C << 6) | (E << 5) | (R << 4) | (P << 3) | (B << 2) | (D << 1) | U)+#define DIGIT_H(A,B,F,H,J,K,G,S)	((A << 7) | (B << 6) | (F << 5) | (H << 4) | (J << 3) | (K << 2) | (G << 1) | S)+// Following definition is for Title/Track/Chaspter digits+#define DIGIT_X(A,B,F,G,C,E,D,U)		((A << 7) | (B << 6) | (F << 5) | (G << 4) | (C << 3) | (E << 2) | (D << 1) | U)+ +static const char fipcharactersmap[NUM_CHARACTERS+1] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~";+static const char fipxcharactersmap[NUM_X_CHARACTERS+1] = "0123456789- ";+#endif++/* we use the inverted mask for clearing a digit without clearing other things */+static const char fipcharactermask[2] = {+#if defined(CONFIG_TANGOX_FIP_REF1)+	DIGIT_L(1,1,0,0,0,0,0,0), +	DIGIT_H(0,0,0,0,0,0,0,0)+#elif defined(CONFIG_TANGOX_FIP_REF2)+	DIGIT_L(0,0,0,0,0,0,0,0), +	DIGIT_H(0,0,0,0,0,0,0,0)+#endif+};++#if defined(CONFIG_TANGOX_FIP_REF1)+/* the format is lower byte, higher byte */+static const char fipcharacters[NUM_CHARACTERS][2] = {+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(0,0,0,0,0,0,0,0)},	//+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(1,1,0,1,0,0,0,0)},	// ++	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(1,1,0,0,0,0,0,0)},	// -+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,1,0,0,0)},	// /++	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(0,0,0,0,0,1,1,1)},	// 0+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,1,0,0,0,0)},	// 1+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,1,0)},	// 2+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,1,0)},	// 3+	{DIGIT_L(0,0,1,0,0,0,0,0), DIGIT_H(1,1,0,0,0,0,1,1)},	// 4+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// 5+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// 6+	{DIGIT_L(0,0,1,0,0,0,0,0), DIGIT_H(0,0,0,0,0,1,1,0)},	// 7+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,1,1)},	// 8+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,1,1)},	// 9++	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,0,1,0,0,0)},	// <+	{DIGIT_L(0,0,0,0,0,1,0,0), DIGIT_H(0,0,0,1,0,0,0,0)},	// >++	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(1,1,0,0,0,1,1,1)},	// A+	{DIGIT_L(0,0,1,0,1,0,0,1), DIGIT_H(0,1,0,1,0,1,1,0)},	// B+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(0,0,0,0,0,1,0,1)},	// C+	{DIGIT_L(0,0,1,0,1,0,0,1), DIGIT_H(0,0,0,1,0,1,1,0)},	// D+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// E+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(1,1,0,0,0,1,0,1)},	// F+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// G+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(1,1,0,0,0,0,1,1)},	// H+	{DIGIT_L(0,0,0,0,1,0,0,1), DIGIT_H(0,0,0,1,0,1,0,0)},	// I+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(0,0,0,0,0,0,1,0)},	// J+	{DIGIT_L(0,0,0,1,0,0,1,0), DIGIT_H(1,0,0,0,1,0,0,1)},	// K+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(0,0,0,0,0,0,0,1)},	// L+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(0,0,1,0,1,0,1,1)},	// M+	{DIGIT_L(0,0,1,1,0,0,1,0), DIGIT_H(0,0,1,0,0,0,1,1)},	// N+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(0,0,0,0,0,1,1,1)},	// O+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(1,1,0,0,0,1,1,1)},	// P+	{DIGIT_L(0,0,1,1,0,0,1,1), DIGIT_H(0,0,0,0,0,1,1,1)},	// Q+	{DIGIT_L(0,0,0,1,0,0,1,0), DIGIT_H(1,1,0,0,0,1,1,1)},	// R+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// S+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,1,0,1,0,0)},	// T+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(0,0,0,0,0,0,1,1)},	// U+	{DIGIT_L(0,0,1,1,0,0,0,0), DIGIT_H(0,0,1,0,0,0,1,0)},	// V+	{DIGIT_L(0,0,1,1,0,1,1,0), DIGIT_H(0,0,0,0,0,0,1,1)},	// W+	{DIGIT_L(0,0,0,1,0,1,0,0), DIGIT_H(0,0,1,0,1,0,0,0)},	// X+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,1,0,1,0,0,0)},	// Y+	{DIGIT_L(0,0,0,0,0,1,0,1), DIGIT_H(0,0,0,0,1,1,0,0)},	// Z++	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,1,0,0,0,0,0)},	// Slash+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(1,1,0,0,0,0,0,0)},	// -++	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// a+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,0,1)},	// b+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// c+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,1,0)},	// d+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(1,1,0,0,0,1,1,1)},	// e+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(1,0,0,0,0,1,0,1)},	// f+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,1,1)},	// g+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(1,1,0,0,0,0,0,1)},	// h+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,0,0,0,0)},	// i+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(0,0,0,0,0,0,0,0)},	// j+	{DIGIT_L(0,0,0,1,1,0,0,0), DIGIT_H(0,1,0,1,0,0,0,0)},	// k+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(0,0,0,0,0,0,0,1)},	// l+	{DIGIT_L(0,0,1,0,1,0,1,0), DIGIT_H(1,1,0,0,0,0,0,0)},	// m+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(1,1,0,0,0,0,0,0)},	// n+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// o+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(1,1,0,0,0,1,1,1)},	// p+	{DIGIT_L(0,0,1,0,0,0,0,0), DIGIT_H(1,1,0,0,0,1,1,1)},	// q+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(1,0,0,0,0,0,0,0)},	// r+	{DIGIT_L(0,0,1,0,0,0,0,1), DIGIT_H(1,1,0,0,0,1,0,1)},	// s+	{DIGIT_L(0,0,0,0,0,0,1,1), DIGIT_H(1,0,0,0,0,0,0,1)},	// t+	{DIGIT_L(0,0,1,0,0,0,1,1), DIGIT_H(0,0,0,0,0,0,0,0)},	// u+	{DIGIT_L(0,0,1,1,0,0,0,0), DIGIT_H(0,0,0,0,0,0,0,0)},	// v+	{DIGIT_L(0,0,1,1,0,1,1,0), DIGIT_H(0,0,0,0,0,0,0,0)},	// w+	{DIGIT_L(0,0,0,1,1,0,0,0), DIGIT_H(1,1,0,0,0,0,0,0)},	// x+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,1,1,0,0,0)},	// y+	{DIGIT_L(0,0,0,0,1,0,0,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// z++	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,1,0,0,0,0)},	// |+	{DIGIT_L(0,0,0,0,0,0,0,1), DIGIT_H(0,0,0,0,0,0,0,0)}	// _+};+#elif defined(CONFIG_TANGOX_FIP_REF2)+/* the format is lower byte, higher byte */+static const char fipcharacters[NUM_CHARACTERS][2] = {+	{DIGIT_L(0,1,1,0,0,0,1,1), DIGIT_H(1,1,1,0,0,0,0,0)},	// 0+	{DIGIT_L(0,0,0,0,1,0,0,1), DIGIT_H(0,0,0,0,1,0,0,1)},	// 1+	{DIGIT_L(1,0,1,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,1,1)},	// 2+	{DIGIT_L(1,1,0,0,0,0,1,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// 3+	{DIGIT_L(1,1,0,0,0,0,0,1), DIGIT_H(0,1,1,0,0,0,1,1)},	// 4+	{DIGIT_L(1,1,0,0,0,0,1,1), DIGIT_H(1,0,1,0,0,0,1,1)},	// 5+	{DIGIT_L(1,1,1,0,0,0,1,1), DIGIT_H(1,0,1,0,0,0,1,1)},	// 6+	{DIGIT_L(0,1,0,0,0,0,0,1), DIGIT_H(1,1,0,0,0,0,0,0)},	// 7+	{DIGIT_L(1,1,1,0,0,0,1,1), DIGIT_H(1,1,1,0,0,0,1,1)},	// 8+	{DIGIT_L(1,1,0,0,0,0,0,1), DIGIT_H(1,1,1,0,0,0,1,1)},	// 9+	{DIGIT_L(1,1,1,0,0,0,0,0), DIGIT_H(1,1,1,0,0,0,1,1)},	// A+	{DIGIT_L(1,1,0,0,1,0,1,0), DIGIT_H(1,1,0,0,1,0,0,1)},	// B+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(1,0,1,0,0,0,0,0)},	// C+	{DIGIT_L(0,1,0,0,1,0,1,0), DIGIT_H(1,1,0,0,1,0,0,1)},	// D+	{DIGIT_L(1,0,1,0,0,0,1,0), DIGIT_H(1,0,1,0,0,0,1,1)},	// E+	{DIGIT_L(0,0,1,0,0,0,0,0), DIGIT_H(1,0,1,0,0,0,1,1)},	// F+	{DIGIT_L(1,1,1,0,0,0,1,0), DIGIT_H(1,0,1,0,0,0,0,0)},	// G+	{DIGIT_L(1,1,1,0,0,0,0,0), DIGIT_H(0,1,1,0,0,0,1,1)},	// H+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,1,0,0,1)},	// I+	{DIGIT_L(0,1,1,0,0,0,1,0), DIGIT_H(0,1,0,0,0,0,0,0)},	// J+	{DIGIT_L(0,0,1,0,0,1,0,0), DIGIT_H(0,0,1,0,0,1,1,1)},	// K+	{DIGIT_L(0,0,1,0,0,0,1,0), DIGIT_H(0,0,1,0,0,0,0,0)},	// L+	{DIGIT_L(0,1,1,0,0,0,0,0), DIGIT_H(0,1,1,1,0,1,0,1)},	// M+	{DIGIT_L(0,1,1,0,0,1,0,0), DIGIT_H(0,1,1,1,0,0,0,1)},	// N+	{DIGIT_L(0,1,1,0,0,0,1,0), DIGIT_H(1,1,1,0,0,0,0,0)},	// O+	{DIGIT_L(1,0,1,0,0,0,0,0), DIGIT_H(1,1,1,0,0,0,1,1)},	// P+	{DIGIT_L(0,1,1,0,0,1,1,0), DIGIT_H(1,1,1,0,0,0,0,0)},	// Q+	{DIGIT_L(1,0,1,0,0,1,0,0), DIGIT_H(1,1,1,0,0,0,1,1)},	// R+	{DIGIT_L(1,1,0,0,0,0,1,0), DIGIT_H(1,0,1,0,0,0,1,1)},	// S+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(1,0,0,0,1,0,0,1)},	// T+	{DIGIT_L(0,1,1,0,0,0,1,0), DIGIT_H(0,1,1,0,0,0,0,0)},	// U+	{DIGIT_L(0,0,1,1,0,0,0,0), DIGIT_H(0,0,1,0,0,1,0,1)},	// V+	{DIGIT_L(0,1,1,1,0,1,0,0), DIGIT_H(0,1,1,0,0,0,0,1)},	// W+	{DIGIT_L(0,0,0,1,0,1,0,0), DIGIT_H(0,0,0,1,0,1,0,0)},	// X+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,1,0,1,0,1)},	// Y+	{DIGIT_L(0,0,0,1,0,0,1,0), DIGIT_H(1,0,0,0,0,1,0,1)},	// Z+	{0,0},							// Space+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,1,0,0,1)},	// !+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(0,0,1,0,1,0,0,0)},	// "+	{DIGIT_L(1,0,0,1,1,0,0,0), DIGIT_H(0,0,0,1,1,0,1,1)},	// #+	{DIGIT_L(1,1,0,0,1,0,1,0), DIGIT_H(1,0,1,0,1,0,1,1)},	// $+	{DIGIT_L(0,1,0,1,0,0,0,0), DIGIT_H(0,0,1,0,0,1,0,1)},	// %+	{DIGIT_L(0,0,1,0,1,0,1,0), DIGIT_H(1,0,0,1,0,1,1,1)},	// &+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(0,0,0,0,0,1,0,0)},	// '+	{DIGIT_L(0,0,0,0,0,1,0,0), DIGIT_H(0,0,0,0,0,1,0,0)}, 	// (+	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,1,0,0,0,0)}, 	// )+	{DIGIT_L(1,0,0,1,1,1,0,0), DIGIT_H(0,0,0,1,1,1,1,1)}, 	// *+	{DIGIT_L(1,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,1,0,1,1)}, 	// ++	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,0,0,0,0,0)}, 	// ,+	{DIGIT_L(1,0,0,0,0,0,0,0), DIGIT_H(0,0,0,0,0,0,1,1)}, 	// -+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(0,0,0,0,0,0,0,1)}, 	// .+	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,0,0,1,0,1)}, 	// /+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,0,0,0,1)}, 	// :+	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,0,0,0,0,1)}, 	// ;+	{DIGIT_L(0,0,0,0,0,1,0,0), DIGIT_H(0,0,0,0,0,1,0,1)}, 	// <+	{DIGIT_L(1,0,0,0,0,0,1,0), DIGIT_H(0,0,0,0,0,0,1,1)}, 	// =+	{DIGIT_L(0,0,0,1,0,0,0,0), DIGIT_H(0,0,0,1,0,0,0,1)}, 	// >+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(1,0,1,0,0,1,0,1)}, 	// ?+	{DIGIT_L(1,0,1,0,0,0,1,0), DIGIT_H(1,1,1,0,1,1,0,1)}, 	// @+	{DIGIT_L(0,0,0,1,0,0,1,0), DIGIT_H(1,0,0,1,0,0,0,0)}, 	// [+	{DIGIT_L(0,0,0,0,0,1,0,0), DIGIT_H(0,0,0,1,0,0,0,1)}, 	// / +	{DIGIT_L(0,1,0,0,0,0,1,0), DIGIT_H(1,1,0,0,0,0,0,0)}, 	// ]+	{DIGIT_L(0,0,0,1,0,1,0,0), DIGIT_H(0,0,0,0,0,0,0,1)}, 	// ^+	{DIGIT_L(0,0,0,0,0,0,1,0), DIGIT_H(0,0,0,0,0,0,0,0)}, 	// _+	{DIGIT_L(0,0,0,0,0,0,0,0), DIGIT_H(0,0,0,1,0,0,0,0)}, 	// `+	{DIGIT_L(0,0,0,1,0,0,1,0), DIGIT_H(1,0,0,1,0,0,1,0)}, 	// {+	{DIGIT_L(0,0,0,0,1,0,0,0), DIGIT_H(0,0,0,0,1,0,0,1)}, 	// |+	{DIGIT_L(1,0,0,0,0,1,1,0), DIGIT_H(1,0,0,0,0,1,0,1)}, 	// }+	{DIGIT_L(1,0,0,0,0,0,0,0), DIGIT_H(0,0,0,0,0,0,1,0)}	// ~+};++static const char fipxcharacters[NUM_X_CHARACTERS] = {+	DIGIT_X(1,1,1,0,1,1,1,1),	// 0+	DIGIT_X(0,1,0,0,1,0,0,1),	// 1+	DIGIT_X(1,1,0,1,0,1,1,1),	// 2+	DIGIT_X(1,1,0,1,1,0,1,1),	// 3+	DIGIT_X(0,1,1,1,1,0,0,1),	// 4+	DIGIT_X(1,0,1,1,1,0,1,1),	// 5+	DIGIT_X(1,0,1,1,1,1,1,1),	// 6+	DIGIT_X(1,1,0,0,1,0,0,1),	// 7+	DIGIT_X(1,1,1,1,1,1,1,1),	// 8+	DIGIT_X(1,1,1,1,1,0,1,1),	// 9+	DIGIT_X(0,0,0,1,0,0,0,0),	// -+	DIGIT_X(0,0,0,0,0,0,0,0)	// +};+#endif++#if defined(CONFIG_TANGOX_FIP_REF1)+/* this array is used to display individual symbols+   the format is [byte position][bit to turn on] - both zero based */+static const char fipsymbols[NUM_SYMBOLS][2] = {+	{0, 0}, 	/* DVD */+	{0, 1}, 	/* PLAY */+	{0, 2}, 	/* DTS */+	{0, 3}, 	/* MP3 */+	{0, 4}, 	/* DOLBY DIGITAL */+	{0, 5}, 	/* MPEG4 */+	{0, 6},		/* PAUSE */+	{0, 7}, 	/* DVI */+	{1, 0}, 	/* TWIRL1 */+	{1, 1}, 	/* TWIRL2 */+	{1, 2}, 	/* TWIRL3 */+	{1, 3}, 	/* TWIRL4 */+	{1, 4}, 	/* TWIRL5 */+	{1, 5}, 	/* TWIRL6 */+	{1, 6}, 	/* ALL */+	{1, 7}, 	/* REPEAT */+	{9, 6},		/* COLON_MIN_SEC */+	{9, 7}, 	/* R1080 */+	{12, 7}, 	/* R720 */+	{15, 6}, 	/* COLON_HOUR_MIN */+	{15, 7}, 	/* R480 */+	{18, 7}, 	/* PAL */+	{21, 7},	/* NTSC */+};+#elif defined(CONFIG_TANGOX_FIP_REF2)+/* this array is used to display individual symbols+   the format is [byte position][bit to turn on] - both zero based */+static const char fipsymbols[NUM_SYMBOLS][2] = {+	{0, 1},		// DVD+	{0, 2},		// VCD+	{0, 4},		// MP3+	{0, 8}, 	// CD+	{29, 1}, 	// Title+	{27, 1}		// Track+};+#endif++/* The buffer size defines the size of circular buffer to keep the FIP keys */+#define BUF_SIZE		2++/* Wait period, to avoid bouncing or repeatation? */+#define WAIT_PERIOD		100

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -