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

📄 devlml.h

📁 著名操作系统Plan 9的第三版的部分核心源代码。现在很难找到了。Plan 9是bell实验室开发的Unix后继者。
💻 H
字号:
// Lml 22 driver#define MJPG_VERSION "LML33 v0.2"// The following values can be modified to tune/set default behaviour of the// driver.// The number of uS delay in I2C state transitions (probably >= 10)#define I2C_DELAY 50// The amount of spinning to do before the I2C bus is timed out#define I2C_TIMEOUT 10000000// The amount of spinning to do before the guest bus is timed out#define GUEST_TIMEOUT 10000000// The amount of spinning to do before the polling of the still// transfer port is aborted.#define STILL_TIMEOUT 1000000// The following number is the maximum number of cards permited. Each// card found is mapped to a device minor number starting from 0.#define MAX_CARDS 1// The following are the datastructures needed by the device.#define I2C_BUS		0x044// which bit of I2C_BUS is which#define I2C_SCL		1#define I2C_SDA		2#define INTR_JPEGREP	0x08000000#define INTR_GIRQ0	0x20000000#define INTR_STAT	0x03c// A Device records the properties of the various card types supported.typedef struct {	int	number;		// The H33_CARDTYPE_ assigned	char	*card_name;	// A string name	int	zr060addr;	// Which guest bus address for the ZR36060} Device;// The remainder of the #defs are constants which should not need changing.// The PCI vendor and device ids of the zoran chipset on the dc30// these really belong in pci.h#define PCI_VENDOR_ZORAN		0x11de#define PCI_DEVICE_ZORAN_36057		0x6057#define PCI_DEVICE_ZORAN_36067		PCI_DEVICE_ZORAN_36057#define BT819Addr 0x8a#define BT856Addr 0x88#define NBUF 4#define FRAGM_FINAL_B 1#define STAT_BIT 1typedef struct	FrameHeader		FrameHeader;typedef union	Fragment		Fragment;typedef struct	FragmentTable		FragmentTable;typedef struct	CodeData		CodeData;//If we're on the little endian architecture, then 0xFF, 0xD8 byte sequence is#define MRK_SOI		0xD8FF#define MRK_APP3	0xE3FF#define APP_NAME	"LML"struct FrameHeader {	// Don't modify this struct, used by h/w	ushort mrkSOI;	ushort mrkAPP3;	ushort lenAPP3;	char nm[4];	ushort frameNo;	ulong sec;	ulong nsec;	ulong frameSize;	ulong frameSeqNo;};#define FRAGSIZE (128*1024)union Fragment {	FrameHeader	fh;	char		fb[FRAGSIZE];};struct FragmentTable {	// Don't modify this struct, used by h/w	ulong		addr;		// Physical address	ulong		leng;};struct CodeData {	// Don't modify this struct, used by h/w	ulong		pamjpg;		// Physical addr of statCom[0]	ulong		pagrab;		// Physical addr of grab buffer	ulong		statCom[4];	// Physical addresses of fragdescs	FragmentTable	fragdesc[4];	Fragment	frag[4];};#define CODEDATASIZE ((sizeof(CodeData) + BY2PG - 1) & ~(BY2PG - 1))#define GRABDATASIZE ((720 * 480 * 2 * 2 + BY2PG - 1) & ~(BY2PG - 1))#define POST_OFFICE		0x200#define POST_PEND		0x02000000#define POST_TIME		0x01000000#define POST_DIR		0x00800000#define GID060	0

⌨️ 快捷键说明

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