添加3518 开发板 例子代码 用于二次开发
parent
0379b744ce
commit
bb8ea8fe7e
|
@ -0,0 +1,2 @@
|
||||||
|
*.o
|
||||||
|
*.yuv
|
32
README.md
32
README.md
|
@ -4,35 +4,3 @@
|
||||||
流媒体监控服务器
|
流媒体监控服务器
|
||||||
一个 demo
|
一个 demo
|
||||||
|
|
||||||
#### 软件架构
|
|
||||||
软件架构说明
|
|
||||||
|
|
||||||
|
|
||||||
#### 安装教程
|
|
||||||
|
|
||||||
1. xxxx
|
|
||||||
2. xxxx
|
|
||||||
3. xxxx
|
|
||||||
|
|
||||||
#### 使用说明
|
|
||||||
|
|
||||||
1. xxxx
|
|
||||||
2. xxxx
|
|
||||||
3. xxxx
|
|
||||||
|
|
||||||
#### 参与贡献
|
|
||||||
|
|
||||||
1. Fork 本仓库
|
|
||||||
2. 新建 Feat_xxx 分支
|
|
||||||
3. 提交代码
|
|
||||||
4. 新建 Pull Request
|
|
||||||
|
|
||||||
|
|
||||||
#### 码云特技
|
|
||||||
|
|
||||||
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
|
|
||||||
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
|
|
||||||
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
|
|
||||||
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
|
|
||||||
5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
|
|
||||||
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
|
|
|
@ -0,0 +1,207 @@
|
||||||
|
# Makefile.param
|
||||||
|
# Only global variable should be defined here.
|
||||||
|
# All the variables must be used as "export" and "?=".
|
||||||
|
# Otherwise, there will be some errors, when Makefile.param is nested.
|
||||||
|
|
||||||
|
# Use this file as the following sample
|
||||||
|
# ifeq ($(PARAM_FILE), )
|
||||||
|
# PARAM_FILE:=../Makefile.param
|
||||||
|
# include $(PARAM_FILE)
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# Define the default OS link directory.
|
||||||
|
export HIWORK_PATH?=/hiwork
|
||||||
|
|
||||||
|
export ARCH=arm
|
||||||
|
export MPP_BUILD=n
|
||||||
|
|
||||||
|
#Change ISP parameter config mode
|
||||||
|
#Default "y" is ini config mode, else "n" source code config mode
|
||||||
|
export ISP_INI_CONFIG=n
|
||||||
|
|
||||||
|
# use HIARCH indicate chip, use libc to choose cross compiler.
|
||||||
|
export HIARCH?=hi3518e
|
||||||
|
export LIBC?=uclibc
|
||||||
|
|
||||||
|
# Whether support the debug information. HI_DEBUG or HI_RELEASE
|
||||||
|
export HIDBG?=HI_RELEASE
|
||||||
|
|
||||||
|
# Whether open -g
|
||||||
|
#export HIGDB?=y
|
||||||
|
export HIGDB?=n
|
||||||
|
|
||||||
|
# FPGA board or not
|
||||||
|
export FPGA?=n
|
||||||
|
|
||||||
|
ifeq ($(HIARCH), )
|
||||||
|
$(error HIARCH not defined! Please check!)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(LIBC), )
|
||||||
|
$(error LIBC not defined! Please check!)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIARCH),hi3516a)
|
||||||
|
export HICHIP?=0x3516A100
|
||||||
|
export ARCH_DIR?=hi3516a
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIARCH),hi3519)
|
||||||
|
export HICHIP?=0x3519100
|
||||||
|
export ARCH_DIR?=hi3519
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIARCH),hi3518e)
|
||||||
|
export HICHIP?=0x3518E200
|
||||||
|
export ARCH_DIR?=hi3518e
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIDBG),HI_DEBUG)
|
||||||
|
DBG_FLAG=0
|
||||||
|
else
|
||||||
|
DBG_FLAG=0
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
ifeq ($(HIARCH),hi3536)
|
||||||
|
export PRODUCT?=NVRDVR
|
||||||
|
else
|
||||||
|
export PRODUCT?=IPC
|
||||||
|
endif
|
||||||
|
|
||||||
|
# use C01 to indicate uclibc, C02 to indicate glibc, C00 to indicate FPGA.
|
||||||
|
ifeq ($(LIBC),glibc)
|
||||||
|
export CVER?=.C$(DBG_FLAG)2
|
||||||
|
else ifeq ($(FPGA), y)
|
||||||
|
export CVER?=.C$(DBG_FLAG)0
|
||||||
|
else
|
||||||
|
export CVER?=.C$(DBG_FLAG)1
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(FPGA),y)
|
||||||
|
export HI_FPGA:=HI_FPGA
|
||||||
|
export EXTDRV:=extdrv/$(HIARCH)_fpga
|
||||||
|
else
|
||||||
|
export HI_FPGA:=HI_XXXX
|
||||||
|
export EXTDRV:=extdrv/$(HIARCH)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Get the local SDK_ROOT path or RELEASE_ROOT path by PARAM_FILE.
|
||||||
|
# PARAM_FILE is configed at Makefile before include this file
|
||||||
|
export PARAM_FILE
|
||||||
|
export SDK_PATH?=$(shell cd $(shell pwd)/`dirname $(PARAM_FILE)`/..; pwd)
|
||||||
|
export MPP_PATH?=$(shell cd $(shell pwd)/`dirname $(PARAM_FILE)`; pwd)
|
||||||
|
export SHELF_ROOT?=$(MPP_PATH)/code/shelf
|
||||||
|
export DRV_ROOT?=$(SDK_PATH)/drv
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
export KERNEL_NAME="linux-3.4.y"
|
||||||
|
|
||||||
|
ifeq ($(HIARCH), hi3519)
|
||||||
|
export KERNEL_NAME="linux-3.10.y"
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Allocated the linux position
|
||||||
|
ifneq ($(shell ls $(HIWORK_PATH)/osdrv$(HIARCH)$(CVER)), )
|
||||||
|
export LINUX_ROOT?=$(HIWORK_PATH)/osdrv$(HIARCH)$(CVER)/opensource/kernel/$(KERNEL_NAME)
|
||||||
|
else
|
||||||
|
export LINUX_ROOT?=$(SDK_PATH)/osdrv/opensource/kernel/$(KERNEL_NAME)
|
||||||
|
endif
|
||||||
|
##############################################################################
|
||||||
|
|
||||||
|
# Define cross compiler
|
||||||
|
ifeq ($(LIBC),glibc)
|
||||||
|
export CROSS_COMPILE?= arm-hisiv400-linux-
|
||||||
|
export CROSS?= arm-hisiv400-linux-
|
||||||
|
else
|
||||||
|
export CROSS_COMPILE?=arm-hisiv300-linux-
|
||||||
|
export CROSS?=arm-hisiv300-linux-
|
||||||
|
endif
|
||||||
|
|
||||||
|
export CC:=$(CROSS)gcc
|
||||||
|
export CPP:=$(CROSS)g++
|
||||||
|
export AR:=$(CROSS)ar
|
||||||
|
|
||||||
|
export MPP_CFLAGS:= -Wall
|
||||||
|
export DRV_CFLAGS:=
|
||||||
|
|
||||||
|
ifeq ($(HIGDB), y)
|
||||||
|
MPP_CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Define the object output directory
|
||||||
|
ifeq ($(MPP_BUILD), y)
|
||||||
|
REL_DIR=$(SDK_PATH)/mpp/release/$(HIARCH)
|
||||||
|
SAMPLE_DIR=$(SDK_PATH)/mpp/sample/$(HIARCH)
|
||||||
|
else
|
||||||
|
REL_DIR=$(SDK_PATH)/mpp
|
||||||
|
EXTDRV=extdrv
|
||||||
|
SAMPLE_DIR=$(SDK_PATH)/mpp/sample
|
||||||
|
endif
|
||||||
|
|
||||||
|
export REL_INC := $(REL_DIR)/include
|
||||||
|
export REL_LIB := $(REL_DIR)/lib
|
||||||
|
export REL_KO := $(REL_DIR)/ko
|
||||||
|
|
||||||
|
# Define the param of audio
|
||||||
|
export AUDIO_PATH?=$(SDK_PATH)/mpp/component/audio/lib/$(CROSS)
|
||||||
|
|
||||||
|
export AUDIO_LIBA ?= $(REL_LIB)/libVoiceEngine.a\
|
||||||
|
$(REL_LIB)/libupvqe.a\
|
||||||
|
$(REL_LIB)/libdnvqe.a
|
||||||
|
|
||||||
|
export AUDIO_LIBS ?= $(REL_LIB)/libVoiceEngine.so\
|
||||||
|
$(REL_LIB)/libupvqe.so\
|
||||||
|
$(REL_LIB)/libdnvqe.so
|
||||||
|
|
||||||
|
# include the audio config file of platform
|
||||||
|
|
||||||
|
|
||||||
|
# Define the lib of jpeg codec
|
||||||
|
export JPEGD_PATH?=$(SDK_PATH)/mpp/component/jpegd
|
||||||
|
export JPEGD_LIBA:=$(REL_LIB)/libjpeg.a
|
||||||
|
|
||||||
|
export HIMEM_LIBA := $(REL_LIB)/libmem.a
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# LIB GLOBAL CFLAGS
|
||||||
|
ifeq ($(HIARCH),hi3516a)
|
||||||
|
export LIBS_CFLAGS = -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -ffunction-sections
|
||||||
|
LIBS_CFLAGS += -mno-unaligned-access -fno-aggressive-loop-optimizations -ldl
|
||||||
|
|
||||||
|
export LIBS_LD_CFLAGS = -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4
|
||||||
|
LIBS_LD_CFLAGS += -mno-unaligned-access -fno-aggressive-loop-optimizations -ldl
|
||||||
|
endif
|
||||||
|
ifeq ($(HIARCH),hi3519)
|
||||||
|
export LIBS_CFLAGS = -ldl
|
||||||
|
|
||||||
|
export LIBS_LD_CFLAGS = -ldl
|
||||||
|
endif
|
||||||
|
|
||||||
|
# DRV GLOBAL CFLAGS
|
||||||
|
#DRV_CFLAGS += -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
#********************* Macro for version management*****************************
|
||||||
|
VER_X ?= 1
|
||||||
|
VER_Y ?= 0
|
||||||
|
VER_Z ?= 0
|
||||||
|
VER_P ?= 0
|
||||||
|
VER_B ?= 10
|
||||||
|
MPP_CFLAGS += -DVER_X=$(VER_X) -DVER_Y=$(VER_Y) -DVER_Z=$(VER_Z) -DVER_P=$(VER_P) -DVER_B=$(VER_B)
|
||||||
|
#*******************************************************************************
|
||||||
|
|
||||||
|
# include the config file of platform
|
||||||
|
-include $(SDK_PATH)/mpp/configs/config.mk
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
MPP_CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_LOWDELAY), y)
|
||||||
|
MPP_CFLAGS += -DENABLE_LOWDELAY
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# End!!
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,16 @@
|
||||||
|
|
||||||
|
.PHONY:clean all rel
|
||||||
|
all:
|
||||||
|
@echo -e "\e[0;32;1m--Compiling 'sensor'... Configs as follow:\e[0;36;1m"
|
||||||
|
@echo ---- CROSS=$(CROSS)
|
||||||
|
@echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), HIDBG=$(HIDBG)
|
||||||
|
@echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE)
|
||||||
|
@echo ---- LINUX_ROOT=$(LINUX_ROOT)
|
||||||
|
@echo -e "\e[0m"
|
||||||
|
@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; \
|
||||||
|
do cd `dirname $$x`; if [ $$? ]; then make || exit 1; cd ../; fi; done
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; \
|
||||||
|
do cd `dirname $$x`; if [ $$? ]; then make clean; cd ../; fi; done
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC)
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_9m034.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_9m034.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,821 @@
|
||||||
|
|
||||||
|
//9m034 720P 30fps linear
|
||||||
|
static int sensor_rom_30_lin[] = {
|
||||||
|
// [Linear Mode 720p 30fps AE=on EMBEDDED=on]
|
||||||
|
//[Demo Initialization]
|
||||||
|
//Load = Reset
|
||||||
|
//[Reset]
|
||||||
|
0xFFFE00C8, // wait 8 frames
|
||||||
|
0x301A10D9,
|
||||||
|
0xFFFE0005, // delay 5ms after sensor reset
|
||||||
|
0x301A10D8,
|
||||||
|
//[Reset]//
|
||||||
|
0xFFFE00C8,
|
||||||
|
//Load = A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010
|
||||||
|
//[A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010]
|
||||||
|
//HiDY sequencer CR 31644
|
||||||
|
0x30888000, //SEQ_CTRL_PORT
|
||||||
|
0x30860025, //SEQ_DATA_PORT
|
||||||
|
0x30865050, //SEQ_DATA_PORT
|
||||||
|
0x30862D26, //SEQ_DATA_PORT
|
||||||
|
0x30860828, //SEQ_DATA_PORT
|
||||||
|
0x30860D17, //SEQ_DATA_PORT
|
||||||
|
0x30860926, //SEQ_DATA_PORT
|
||||||
|
0x30860028, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x3086A728, //SEQ_DATA_PORT
|
||||||
|
0x30860725, //SEQ_DATA_PORT
|
||||||
|
0x30868080, //SEQ_DATA_PORT
|
||||||
|
0x30862925, //SEQ_DATA_PORT
|
||||||
|
0x30860040, //SEQ_DATA_PORT
|
||||||
|
0x30862702, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
//0x30888020, //write 0x3088 another time
|
||||||
|
|
||||||
|
0x30861F17, //SEQ_DATA_PORT
|
||||||
|
0x30863626, //SEQ_DATA_PORT
|
||||||
|
0x3086A617, //SEQ_DATA_PORT
|
||||||
|
0x30860326, //SEQ_DATA_PORT
|
||||||
|
0x3086A417, //SEQ_DATA_PORT
|
||||||
|
0x30861F28, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x30862028, //SEQ_DATA_PORT
|
||||||
|
0x30860425, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x3086171D, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30862017, //SEQ_DATA_PORT
|
||||||
|
0x30861028, //SEQ_DATA_PORT
|
||||||
|
0x30860519, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30861741, //SEQ_DATA_PORT
|
||||||
|
0x30862660, //SEQ_DATA_PORT
|
||||||
|
0x3086175A, //SEQ_DATA_PORT
|
||||||
|
0x30862317, //SEQ_DATA_PORT
|
||||||
|
0x30861122, //SEQ_DATA_PORT
|
||||||
|
0x30861741, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30869027, //SEQ_DATA_PORT
|
||||||
|
0x30860026, //SEQ_DATA_PORT
|
||||||
|
0x30861828, //SEQ_DATA_PORT
|
||||||
|
0x3086002E, //SEQ_DATA_PORT
|
||||||
|
0x30862A28, //SEQ_DATA_PORT
|
||||||
|
0x3086081C, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867003, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867004, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867005, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x3086170C, //SEQ_DATA_PORT
|
||||||
|
0x30860014, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860014, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860414, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860414, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860514, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30862405, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865001, //SEQ_DATA_PORT
|
||||||
|
0x30862550, //SEQ_DATA_PORT
|
||||||
|
0x3086502D, //SEQ_DATA_PORT
|
||||||
|
0x30862608, //SEQ_DATA_PORT
|
||||||
|
0x3086280D, //SEQ_DATA_PORT
|
||||||
|
0x30861709, //SEQ_DATA_PORT
|
||||||
|
0x30862600, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x308626A7, //SEQ_DATA_PORT
|
||||||
|
0x30862807, //SEQ_DATA_PORT
|
||||||
|
0x30862580, //SEQ_DATA_PORT
|
||||||
|
0x30868029, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30864027, //SEQ_DATA_PORT
|
||||||
|
0x30860216, //SEQ_DATA_PORT
|
||||||
|
0x30861627, //SEQ_DATA_PORT
|
||||||
|
0x30860620, //SEQ_DATA_PORT
|
||||||
|
0x30861736, //SEQ_DATA_PORT
|
||||||
|
0x308626A6, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x308626A4, //SEQ_DATA_PORT
|
||||||
|
0x3086171F, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30862620, //SEQ_DATA_PORT
|
||||||
|
0x30862804, //SEQ_DATA_PORT
|
||||||
|
0x30862520, //SEQ_DATA_PORT
|
||||||
|
0x30862027, //SEQ_DATA_PORT
|
||||||
|
0x30860017, //SEQ_DATA_PORT
|
||||||
|
0x30861D25, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30861710, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30861A17, //SEQ_DATA_PORT
|
||||||
|
0x30860327, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30860317, //SEQ_DATA_PORT
|
||||||
|
0x30864126, //SEQ_DATA_PORT
|
||||||
|
0x30866017, //SEQ_DATA_PORT
|
||||||
|
0x3086AE25, //SEQ_DATA_PORT
|
||||||
|
0x30860090, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x30862618, //SEQ_DATA_PORT
|
||||||
|
0x30862800, //SEQ_DATA_PORT
|
||||||
|
0x30862E2A, //SEQ_DATA_PORT
|
||||||
|
0x30862808, //SEQ_DATA_PORT
|
||||||
|
0x30861D05, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x30861720, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862024, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865002, //SEQ_DATA_PORT
|
||||||
|
0x30862550, //SEQ_DATA_PORT
|
||||||
|
0x3086502D, //SEQ_DATA_PORT
|
||||||
|
0x30862608, //SEQ_DATA_PORT
|
||||||
|
0x3086280D, //SEQ_DATA_PORT
|
||||||
|
0x30861709, //SEQ_DATA_PORT
|
||||||
|
0x30862600, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x308626A7, //SEQ_DATA_PORT
|
||||||
|
0x30862807, //SEQ_DATA_PORT
|
||||||
|
0x30862580, //SEQ_DATA_PORT
|
||||||
|
0x30868029, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30864027, //SEQ_DATA_PORT
|
||||||
|
0x30860216, //SEQ_DATA_PORT
|
||||||
|
0x30861627, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30863626, //SEQ_DATA_PORT
|
||||||
|
0x3086A617, //SEQ_DATA_PORT
|
||||||
|
0x30860326, //SEQ_DATA_PORT
|
||||||
|
0x3086A417, //SEQ_DATA_PORT
|
||||||
|
0x30861F28, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x30862028, //SEQ_DATA_PORT
|
||||||
|
0x30860425, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x3086171D, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30862021, //SEQ_DATA_PORT
|
||||||
|
0x30861710, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30861B17, //SEQ_DATA_PORT
|
||||||
|
0x30860327, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30860317, //SEQ_DATA_PORT
|
||||||
|
0x30864126, //SEQ_DATA_PORT
|
||||||
|
0x30866017, //SEQ_DATA_PORT
|
||||||
|
0x3086AE25, //SEQ_DATA_PORT
|
||||||
|
0x30860090, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x30862618, //SEQ_DATA_PORT
|
||||||
|
0x30862800, //SEQ_DATA_PORT
|
||||||
|
0x30862E2A, //SEQ_DATA_PORT
|
||||||
|
0x30862808, //SEQ_DATA_PORT
|
||||||
|
0x30861E17, //SEQ_DATA_PORT
|
||||||
|
0x30860A05, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862024, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x3086502B, //SEQ_DATA_PORT
|
||||||
|
0x3086302C, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x30862C00, //SEQ_DATA_PORT
|
||||||
|
0x30860225, //SEQ_DATA_PORT linear seq starts
|
||||||
|
0x30865050, //SEQ_DATA_PORT
|
||||||
|
0x30862D26, //SEQ_DATA_PORT
|
||||||
|
0x30860828, //SEQ_DATA_PORT
|
||||||
|
0x30860D17, //SEQ_DATA_PORT
|
||||||
|
0x30860926, //SEQ_DATA_PORT
|
||||||
|
0x30860028, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x3086A728, //SEQ_DATA_PORT
|
||||||
|
0x30860725, //SEQ_DATA_PORT
|
||||||
|
0x30868080, //SEQ_DATA_PORT
|
||||||
|
0x30862917, //SEQ_DATA_PORT
|
||||||
|
0x30860525, //SEQ_DATA_PORT
|
||||||
|
0x30860040, //SEQ_DATA_PORT
|
||||||
|
0x30862702, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861736, //SEQ_DATA_PORT
|
||||||
|
0x308626A6, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x308626A4, //SEQ_DATA_PORT
|
||||||
|
0x3086171F, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30862620, //SEQ_DATA_PORT
|
||||||
|
0x30862804, //SEQ_DATA_PORT
|
||||||
|
0x30862520, //SEQ_DATA_PORT
|
||||||
|
0x30862027, //SEQ_DATA_PORT
|
||||||
|
0x30860017, //SEQ_DATA_PORT
|
||||||
|
0x30861E25, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30862117, //SEQ_DATA_PORT
|
||||||
|
0x30861028, //SEQ_DATA_PORT
|
||||||
|
0x3086051B, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30861747, //SEQ_DATA_PORT
|
||||||
|
0x30862660, //SEQ_DATA_PORT
|
||||||
|
0x308617AE, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30869027, //SEQ_DATA_PORT
|
||||||
|
0x30860026, //SEQ_DATA_PORT
|
||||||
|
0x30861828, //SEQ_DATA_PORT
|
||||||
|
0x3086002E, //SEQ_DATA_PORT
|
||||||
|
0x30862A28, //SEQ_DATA_PORT
|
||||||
|
0x3086081E, //SEQ_DATA_PORT
|
||||||
|
0x30860831, //SEQ_DATA_PORT
|
||||||
|
0x30861440, //SEQ_DATA_PORT
|
||||||
|
0x30864014, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30861410, //SEQ_DATA_PORT
|
||||||
|
0x30861034, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30861014, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30864013, //SEQ_DATA_PORT
|
||||||
|
0x30861802, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867004, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867003, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867017, //SEQ_DATA_PORT
|
||||||
|
0x30862002, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862002, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865004, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862004, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865022, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x309E018A, //set start address for linear seq
|
||||||
|
|
||||||
|
//[A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010]//
|
||||||
|
0xFFFE00C8,
|
||||||
|
//Load = A-1000ERS Rev3 Optimized settings
|
||||||
|
//[A-1000ERS Rev3 Optimized settings]
|
||||||
|
0x301E00A8, // set datapedestal to 168
|
||||||
|
0x3EDA0F03, //Set vln_dac to 0x3 as recommended by Sergey
|
||||||
|
0x3EDEC007,
|
||||||
|
0x3ED801EF, // Vrst_low = +1
|
||||||
|
0x3EE2A46B,
|
||||||
|
//0x3EE0067D, // enable anti eclipse and adjust setting for high conversion gain
|
||||||
|
0x3EE0047D, // enable anti eclipse and adjust setting for high conversion gain, decrease vertical line.
|
||||||
|
0x3EDC0070, // adjust anti eclipse setting for low conversion gain
|
||||||
|
0x30440404, //enable digital row noise correction and cancels TX during column correction
|
||||||
|
0x3EE64303, // Helps with column noise at low light
|
||||||
|
0x3EE4D208, // enable analog row noise correction
|
||||||
|
0x3ED600BD,
|
||||||
|
//0x3EE68303, //improves low light FPN
|
||||||
|
|
||||||
|
// ADC settings to improve noise performance
|
||||||
|
// c55300 comment: resolve defect pixel problem.
|
||||||
|
0x30E46372,
|
||||||
|
0x30E27253,
|
||||||
|
0x30E05470,
|
||||||
|
0x30E6C4CC,
|
||||||
|
0x30E88050,
|
||||||
|
//[A-1000ERS Rev3 Optimized settings]//
|
||||||
|
|
||||||
|
//[HDR Mode Setup]//
|
||||||
|
|
||||||
|
|
||||||
|
//LOAD = Enable Parallel Mode //detect HSSAB board
|
||||||
|
//[Enable Parallel Mode]
|
||||||
|
0x301A10D8, // Disable Streaming and setup parallel
|
||||||
|
0x31D00001, // Set to 12 bits
|
||||||
|
//Load = PLL Enabled 27Mhz to 74.25Mhz
|
||||||
|
//[PLL Enabled 27Mhz to 74.25Mhz]
|
||||||
|
0x302C0002, // VT_SYS_CLK_DIV
|
||||||
|
0x302A0004, // VT_PIX_CLK_DIV
|
||||||
|
0x302E0002, // PRE_PLL_CLK_DIV
|
||||||
|
0x3030002C, // PLL_MULTIPLIER
|
||||||
|
0x30B00000, // Default is 0x1300????
|
||||||
|
0xFFFE0064,
|
||||||
|
//[PLL Enabled 27Mhz to 74.25Mhz]//
|
||||||
|
//[Enable Parallel Mode]//
|
||||||
|
//Load = Linear Mode Full Resolution
|
||||||
|
//[Linear Mode Full Resolution]
|
||||||
|
//LOAD= Linear Mode Setup
|
||||||
|
//[Linear Mode Setup]
|
||||||
|
0x301A10D8, // stop streaming
|
||||||
|
0x30820029, // Set Linear Mode register
|
||||||
|
|
||||||
|
//LOAD = Enable AE and Load Optimized Settings For HDR 16x Mode
|
||||||
|
//[Enable AE and Load Optimized Settings For Linear Mode]
|
||||||
|
|
||||||
|
//Load = Column Retriggering at start up
|
||||||
|
//[Column Retriggering at start up]
|
||||||
|
0x30B01300, //disable AGS, set Column gain to 1x
|
||||||
|
0x30D4E007, //enable double sampling for column correction
|
||||||
|
0x30BA0008, // disable auto re-trigger for change in DCG and col gain and enable col corr always
|
||||||
|
0x301A10DC, // enable streaming
|
||||||
|
0xFFFE00C8,
|
||||||
|
0x301A10D8, // disable streaming
|
||||||
|
0xFFFE00C8,
|
||||||
|
//[Column Retriggering at start up]//
|
||||||
|
|
||||||
|
0x301202A0, // coarse integration time
|
||||||
|
|
||||||
|
//Load = 720p 30fps Setup
|
||||||
|
//[720p 30fps Setup]
|
||||||
|
0x30320000, // digital binning
|
||||||
|
0x30020002, // y_addr_start
|
||||||
|
0x30040000, // x_addr_start
|
||||||
|
0x300602D1, // y_addr_end
|
||||||
|
0x300804FF, // x_addr_end
|
||||||
|
0x300A02EE, // frame_length_lines
|
||||||
|
0x300C0F78, // line_length_pck
|
||||||
|
//[720p 30fps Setup]//
|
||||||
|
|
||||||
|
//Load= Enable Embedded Data and Stats
|
||||||
|
//[Enable Embedded Data and Stats]
|
||||||
|
//0x30641982, //0x30641800
|
||||||
|
//[Enable Embedded Data and Stats]//
|
||||||
|
|
||||||
|
//[Disable Embedded Data and Stats]
|
||||||
|
0x30641802,
|
||||||
|
|
||||||
|
//remove vertical line, put here can not take effect. Why????
|
||||||
|
//[Enable AE and Load Optimized Settings For Linear Mode]//
|
||||||
|
0x3100001B, //FIELD_WR=AECTRLREG, 0x001B
|
||||||
|
0x3112029F, //FIELD_WR=AEDCGEXPOSUREHIGHREG, 0x029F
|
||||||
|
0x3114008C, //FIELD_WR=AEDCGEXPOSURELOWREG, 0x008C
|
||||||
|
0x311602C0, //FIELD_WR=AEDCGGAINFACTOR, 0x02C0
|
||||||
|
0x3118005B, //FIELD_WR=AEDCGGAININVREG, 0x005B
|
||||||
|
0x31020384, //FIELD_WR=AELUMATARGETREG, 0x0384
|
||||||
|
0x31041000, //FIELD_WR-AEHISTTARGETREG, 0x1000
|
||||||
|
0x31260080, //FIELD_WR=AEALPHAV1REG, 0x0080
|
||||||
|
0x311C03DD, //FIELD_WR=AEMAXEXPOSUREREG, 0x03C0
|
||||||
|
0x311E0002, //FIELD_WR=AEMINEXPOSUREREG, 0x0002
|
||||||
|
//[Enable AE and Load Optimized Settings For Linear Mode]//
|
||||||
|
|
||||||
|
//[Disable_AutoExposure]
|
||||||
|
0x3100001A, //FIELD_WR=AECTRLREG, 0x001A ????
|
||||||
|
|
||||||
|
0x301A10DC, //enable streaming.
|
||||||
|
|
||||||
|
|
||||||
|
//[Linear Mode Full Resolution]//
|
||||||
|
0xFFFFFFFF // END
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
//9m034 720P 30fps wdr
|
||||||
|
static int sensor_rom_30_wdr[] = {
|
||||||
|
// [Linear Mode 720p 30fps AE=on EMBEDDED=on]
|
||||||
|
//[Demo Initialization]
|
||||||
|
//Load = Reset
|
||||||
|
//[Reset]
|
||||||
|
0xFFFE00C8, // wait 8 frames
|
||||||
|
0x301A10D9,
|
||||||
|
0xFFFE0005, // delay 5ms after sensor reset
|
||||||
|
0x301A10D8,
|
||||||
|
//[Reset]//
|
||||||
|
0xFFFE00C8,
|
||||||
|
//Load = A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010
|
||||||
|
//[A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010]
|
||||||
|
//HiDY sequencer CR 31644
|
||||||
|
0x30888000, //SEQ_CTRL_PORT
|
||||||
|
0x30860025, //SEQ_DATA_PORT
|
||||||
|
0x30865050, //SEQ_DATA_PORT
|
||||||
|
0x30862D26, //SEQ_DATA_PORT
|
||||||
|
0x30860828, //SEQ_DATA_PORT
|
||||||
|
0x30860D17, //SEQ_DATA_PORT
|
||||||
|
0x30860926, //SEQ_DATA_PORT
|
||||||
|
0x30860028, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x3086A728, //SEQ_DATA_PORT
|
||||||
|
0x30860725, //SEQ_DATA_PORT
|
||||||
|
0x30868080, //SEQ_DATA_PORT
|
||||||
|
0x30862925, //SEQ_DATA_PORT
|
||||||
|
0x30860040, //SEQ_DATA_PORT
|
||||||
|
0x30862702, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
|
||||||
|
0x30888020, //write 0x3088 another time
|
||||||
|
|
||||||
|
0x30861F17, //SEQ_DATA_PORT
|
||||||
|
0x30863626, //SEQ_DATA_PORT
|
||||||
|
0x3086A617, //SEQ_DATA_PORT
|
||||||
|
0x30860326, //SEQ_DATA_PORT
|
||||||
|
0x3086A417, //SEQ_DATA_PORT
|
||||||
|
0x30861F28, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x30862028, //SEQ_DATA_PORT
|
||||||
|
0x30860425, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x3086171D, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30862017, //SEQ_DATA_PORT
|
||||||
|
0x30861028, //SEQ_DATA_PORT
|
||||||
|
0x30860519, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30861741, //SEQ_DATA_PORT
|
||||||
|
0x30862660, //SEQ_DATA_PORT
|
||||||
|
0x3086175A, //SEQ_DATA_PORT
|
||||||
|
0x30862317, //SEQ_DATA_PORT
|
||||||
|
0x30861122, //SEQ_DATA_PORT
|
||||||
|
0x30861741, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30869027, //SEQ_DATA_PORT
|
||||||
|
0x30860026, //SEQ_DATA_PORT
|
||||||
|
0x30861828, //SEQ_DATA_PORT
|
||||||
|
0x3086002E, //SEQ_DATA_PORT
|
||||||
|
0x30862A28, //SEQ_DATA_PORT
|
||||||
|
0x3086081C, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867003, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867004, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867005, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x3086170C, //SEQ_DATA_PORT
|
||||||
|
0x30860014, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860014, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860414, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860414, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30860514, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30862405, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865001, //SEQ_DATA_PORT
|
||||||
|
0x30862550, //SEQ_DATA_PORT
|
||||||
|
0x3086502D, //SEQ_DATA_PORT
|
||||||
|
0x30862608, //SEQ_DATA_PORT
|
||||||
|
0x3086280D, //SEQ_DATA_PORT
|
||||||
|
0x30861709, //SEQ_DATA_PORT
|
||||||
|
0x30862600, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x308626A7, //SEQ_DATA_PORT
|
||||||
|
0x30862807, //SEQ_DATA_PORT
|
||||||
|
0x30862580, //SEQ_DATA_PORT
|
||||||
|
0x30868029, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30864027, //SEQ_DATA_PORT
|
||||||
|
0x30860216, //SEQ_DATA_PORT
|
||||||
|
0x30861627, //SEQ_DATA_PORT
|
||||||
|
0x30860620, //SEQ_DATA_PORT
|
||||||
|
0x30861736, //SEQ_DATA_PORT
|
||||||
|
0x308626A6, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x308626A4, //SEQ_DATA_PORT
|
||||||
|
0x3086171F, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30862620, //SEQ_DATA_PORT
|
||||||
|
0x30862804, //SEQ_DATA_PORT
|
||||||
|
0x30862520, //SEQ_DATA_PORT
|
||||||
|
0x30862027, //SEQ_DATA_PORT
|
||||||
|
0x30860017, //SEQ_DATA_PORT
|
||||||
|
0x30861D25, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30861710, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30861A17, //SEQ_DATA_PORT
|
||||||
|
0x30860327, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30860317, //SEQ_DATA_PORT
|
||||||
|
0x30864126, //SEQ_DATA_PORT
|
||||||
|
0x30866017, //SEQ_DATA_PORT
|
||||||
|
0x3086AE25, //SEQ_DATA_PORT
|
||||||
|
0x30860090, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x30862618, //SEQ_DATA_PORT
|
||||||
|
0x30862800, //SEQ_DATA_PORT
|
||||||
|
0x30862E2A, //SEQ_DATA_PORT
|
||||||
|
0x30862808, //SEQ_DATA_PORT
|
||||||
|
0x30861D05, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x30861720, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862024, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865002, //SEQ_DATA_PORT
|
||||||
|
0x30862550, //SEQ_DATA_PORT
|
||||||
|
0x3086502D, //SEQ_DATA_PORT
|
||||||
|
0x30862608, //SEQ_DATA_PORT
|
||||||
|
0x3086280D, //SEQ_DATA_PORT
|
||||||
|
0x30861709, //SEQ_DATA_PORT
|
||||||
|
0x30862600, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x308626A7, //SEQ_DATA_PORT
|
||||||
|
0x30862807, //SEQ_DATA_PORT
|
||||||
|
0x30862580, //SEQ_DATA_PORT
|
||||||
|
0x30868029, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30864027, //SEQ_DATA_PORT
|
||||||
|
0x30860216, //SEQ_DATA_PORT
|
||||||
|
0x30861627, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30863626, //SEQ_DATA_PORT
|
||||||
|
0x3086A617, //SEQ_DATA_PORT
|
||||||
|
0x30860326, //SEQ_DATA_PORT
|
||||||
|
0x3086A417, //SEQ_DATA_PORT
|
||||||
|
0x30861F28, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x30862028, //SEQ_DATA_PORT
|
||||||
|
0x30860425, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x3086171D, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30862021, //SEQ_DATA_PORT
|
||||||
|
0x30861710, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30861B17, //SEQ_DATA_PORT
|
||||||
|
0x30860327, //SEQ_DATA_PORT
|
||||||
|
0x30860617, //SEQ_DATA_PORT
|
||||||
|
0x30860317, //SEQ_DATA_PORT
|
||||||
|
0x30864126, //SEQ_DATA_PORT
|
||||||
|
0x30866017, //SEQ_DATA_PORT
|
||||||
|
0x3086AE25, //SEQ_DATA_PORT
|
||||||
|
0x30860090, //SEQ_DATA_PORT
|
||||||
|
0x30862700, //SEQ_DATA_PORT
|
||||||
|
0x30862618, //SEQ_DATA_PORT
|
||||||
|
0x30862800, //SEQ_DATA_PORT
|
||||||
|
0x30862E2A, //SEQ_DATA_PORT
|
||||||
|
0x30862808, //SEQ_DATA_PORT
|
||||||
|
0x30861E17, //SEQ_DATA_PORT
|
||||||
|
0x30860A05, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867009, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862024, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x3086502B, //SEQ_DATA_PORT
|
||||||
|
0x3086302C, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x30862C00, //SEQ_DATA_PORT
|
||||||
|
0x30860225, //SEQ_DATA_PORT linear seq starts
|
||||||
|
0x30865050, //SEQ_DATA_PORT
|
||||||
|
0x30862D26, //SEQ_DATA_PORT
|
||||||
|
0x30860828, //SEQ_DATA_PORT
|
||||||
|
0x30860D17, //SEQ_DATA_PORT
|
||||||
|
0x30860926, //SEQ_DATA_PORT
|
||||||
|
0x30860028, //SEQ_DATA_PORT
|
||||||
|
0x30860526, //SEQ_DATA_PORT
|
||||||
|
0x3086A728, //SEQ_DATA_PORT
|
||||||
|
0x30860725, //SEQ_DATA_PORT
|
||||||
|
0x30868080, //SEQ_DATA_PORT
|
||||||
|
0x30862917, //SEQ_DATA_PORT
|
||||||
|
0x30860525, //SEQ_DATA_PORT
|
||||||
|
0x30860040, //SEQ_DATA_PORT
|
||||||
|
0x30862702, //SEQ_DATA_PORT
|
||||||
|
0x30861616, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861736, //SEQ_DATA_PORT
|
||||||
|
0x308626A6, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x308626A4, //SEQ_DATA_PORT
|
||||||
|
0x3086171F, //SEQ_DATA_PORT
|
||||||
|
0x30862805, //SEQ_DATA_PORT
|
||||||
|
0x30862620, //SEQ_DATA_PORT
|
||||||
|
0x30862804, //SEQ_DATA_PORT
|
||||||
|
0x30862520, //SEQ_DATA_PORT
|
||||||
|
0x30862027, //SEQ_DATA_PORT
|
||||||
|
0x30860017, //SEQ_DATA_PORT
|
||||||
|
0x30861E25, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30862117, //SEQ_DATA_PORT
|
||||||
|
0x30861028, //SEQ_DATA_PORT
|
||||||
|
0x3086051B, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30862706, //SEQ_DATA_PORT
|
||||||
|
0x30861703, //SEQ_DATA_PORT
|
||||||
|
0x30861747, //SEQ_DATA_PORT
|
||||||
|
0x30862660, //SEQ_DATA_PORT
|
||||||
|
0x308617AE, //SEQ_DATA_PORT
|
||||||
|
0x30862500, //SEQ_DATA_PORT
|
||||||
|
0x30869027, //SEQ_DATA_PORT
|
||||||
|
0x30860026, //SEQ_DATA_PORT
|
||||||
|
0x30861828, //SEQ_DATA_PORT
|
||||||
|
0x3086002E, //SEQ_DATA_PORT
|
||||||
|
0x30862A28, //SEQ_DATA_PORT
|
||||||
|
0x3086081E, //SEQ_DATA_PORT
|
||||||
|
0x30860831, //SEQ_DATA_PORT
|
||||||
|
0x30861440, //SEQ_DATA_PORT
|
||||||
|
0x30864014, //SEQ_DATA_PORT
|
||||||
|
0x30862020, //SEQ_DATA_PORT
|
||||||
|
0x30861410, //SEQ_DATA_PORT
|
||||||
|
0x30861034, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30861014, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30864013, //SEQ_DATA_PORT
|
||||||
|
0x30861802, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867004, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867003, //SEQ_DATA_PORT
|
||||||
|
0x30861470, //SEQ_DATA_PORT
|
||||||
|
0x30867017, //SEQ_DATA_PORT
|
||||||
|
0x30862002, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862002, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865004, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30862004, //SEQ_DATA_PORT
|
||||||
|
0x30861400, //SEQ_DATA_PORT
|
||||||
|
0x30865022, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860020, //SEQ_DATA_PORT
|
||||||
|
0x30860314, //SEQ_DATA_PORT
|
||||||
|
0x30860050, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x30862C2C, //SEQ_DATA_PORT
|
||||||
|
0x309E018A, //set start address for linear seq
|
||||||
|
//[A-1000ERS Rev3 Hidy and linear sequencer load December 16 2010]//
|
||||||
|
|
||||||
|
0xFFFE00C8,
|
||||||
|
//Load = A-1000ERS Rev3 Optimized settings
|
||||||
|
//[A-1000ERS Rev3 Optimized settings]
|
||||||
|
0x301E00C0, // set datapedestal to 192 to avoid clipping near saturation
|
||||||
|
0x3EDA0F03, //Set vln_dac to 0x3 as recommended by Sergey
|
||||||
|
0x3EDEC007,
|
||||||
|
0x3ED801EF, // Vrst_low = +1
|
||||||
|
0x3EE2A46B,
|
||||||
|
//0x3EE0067D, // enable anti eclipse and adjust setting for high conversion gain
|
||||||
|
0x3EE0047D, // enable anti eclipse and adjust setting for high conversion gain, decrease vertical line.
|
||||||
|
0x3EDC0070, // adjust anti eclipse setting for low conversion gain
|
||||||
|
0x30440404, //enable digital row noise correction and cancels TX during column correction
|
||||||
|
0x3EE64303, // Helps with column noise at low light
|
||||||
|
0x3EE4D208, // enable analog row noise correction
|
||||||
|
0x3ED600BD,
|
||||||
|
//0x3EE68303, //improves low light FPN
|
||||||
|
|
||||||
|
// ADC settings to improve noise performance
|
||||||
|
// c55300 comment: resolve defect pixel problem.
|
||||||
|
0x30E46372,
|
||||||
|
0x30E27253,
|
||||||
|
0x30E05470,
|
||||||
|
0x30E6C4CC,
|
||||||
|
0x30E88050,
|
||||||
|
//[A-1000ERS Rev3 Optimized settings]//
|
||||||
|
|
||||||
|
//LOAD = Enable Parallel Mode //detect HSSAB board
|
||||||
|
//[Enable Parallel Mode]
|
||||||
|
0x301A10D8, // Disable Streaming and setup parallel
|
||||||
|
0x31D00001, // Set to 12 bits
|
||||||
|
//Load = PLL Enabled 27Mhz to 74.25Mhz
|
||||||
|
//[PLL Enabled 27Mhz to 74.25Mhz]
|
||||||
|
0x302C0002, // VT_SYS_CLK_DIV
|
||||||
|
0x302A0004, // VT_PIX_CLK_DIV
|
||||||
|
0x302E0002, // PRE_PLL_CLK_DIV
|
||||||
|
0x3030002C, // PLL_MULTIPLIER
|
||||||
|
0x30B00000, //????
|
||||||
|
0xFFFE0064,
|
||||||
|
//[PLL Enabled 27Mhz to 74.25Mhz]//
|
||||||
|
//[Enable Parallel Mode]//
|
||||||
|
|
||||||
|
//Load = HiDy 16x Mode Full Resolution
|
||||||
|
//[HiDy 16x Mode Full Resolution]
|
||||||
|
//Load = HDR Mode Setup
|
||||||
|
//[HDR Mode Setup]
|
||||||
|
0x301A10D8, // stop streaming
|
||||||
|
0x30820028, // Set HiDy 16x ratio
|
||||||
|
//[HDR Mode Setup]//
|
||||||
|
|
||||||
|
//Load = Column Retriggering at start up
|
||||||
|
//[Column Retriggering at start up]
|
||||||
|
0x30B01300, //disable AGS, set Column gain to 1x
|
||||||
|
0x30D4E007, //enable double sampling for column correction
|
||||||
|
0x30BA0008, // disable auto re-trigger for change in DCG and col gain and enable col corr always
|
||||||
|
0x301A10DC, // enable streaming
|
||||||
|
0xFFFE00C8,
|
||||||
|
0x301A10D8, // disable streaming
|
||||||
|
0xFFFE00C8,
|
||||||
|
//[Column Retriggering at start up]//
|
||||||
|
|
||||||
|
0x301202A0, // coarse integration time
|
||||||
|
|
||||||
|
//Load = 720p 25fps Setup
|
||||||
|
//[720p 25fps Setup]
|
||||||
|
0x30320000, // digital binning
|
||||||
|
0x30020002, // y_addr_start
|
||||||
|
0x30040000, // x_addr_start
|
||||||
|
0x300602D1, // y_addr_end
|
||||||
|
//0x300603C1, // y_addr_end
|
||||||
|
0x300804FF, // x_addr_end
|
||||||
|
0x300A02EE, // frame_length_lines
|
||||||
|
0x300C0F78, // line_length_pck
|
||||||
|
//[720p 30fps Setup]//
|
||||||
|
|
||||||
|
//LOAD = Enable AE and Load Optimized Settings For HDR 16x Mode
|
||||||
|
//Load= Enable Embedded Data and Stats
|
||||||
|
//[Enable Embedded Data and Stats]
|
||||||
|
//0x30641982, //0x30641800,
|
||||||
|
//[Enable Embedded Data and Stats]//
|
||||||
|
|
||||||
|
//[Disable Embedded Data and Stats]
|
||||||
|
0x30641802,
|
||||||
|
|
||||||
|
//[Enable AE and Load Optimized Settings For HDR 16x Mode]//
|
||||||
|
0x3100001B, //FIELD_WR=AECTRLREG, 0x001B
|
||||||
|
0x3112029F, //FIELD_WR=AEDCGEXPOSUREHIGHREG, 0x029F
|
||||||
|
0x3114008C, //FIELD_WR=AEDCGEXPOSURELOWREG, 0x0190
|
||||||
|
0x311602C0, //FIELD_WR=AEDCGGAINFACTOR, 0x02C0
|
||||||
|
0x3118005B, //FIELD_WR=AEDCGGAININVREG, 0x005B
|
||||||
|
0x31020708, //FIELD_WR=AELUMATARGETREG, 0x0708
|
||||||
|
0x31041000, //FIELD_WR-AEHISTTARGETREG, 0x1000
|
||||||
|
0x31260064, //FIELD_WR=AEALPHAV1REG, 0x0064
|
||||||
|
0x311C02A0, //FIELD_WR=AEMAXEXPOSUREREG, 0x02A0
|
||||||
|
0x311E0080, //FIELD_WR=AEMINEXPOSUREREG, 0x0080
|
||||||
|
|
||||||
|
//[2D motion compensation ON]
|
||||||
|
0x318A0FA0, // HDR_MC_CTRL1
|
||||||
|
0x31920800, // HDR_MC_CTRL5
|
||||||
|
0x318CC340, // HDR_MC_CTRL2
|
||||||
|
0x318E0320, // HDR_MC_CTRL3
|
||||||
|
// [Disable DLO]1: REG=0x3190, 0x0BA0
|
||||||
|
0x31900BA0, // HDR_MC_CTRL4
|
||||||
|
|
||||||
|
//[Disable_AutoExposure]
|
||||||
|
0x3100001A, //FIELD_WR=AECTRLREG, 0x001A
|
||||||
|
|
||||||
|
0x301A10DC, //enable streaming.
|
||||||
|
|
||||||
|
|
||||||
|
//[HiDy 16x Mode Full Resolution]//
|
||||||
|
0xFFFFFFFF // END
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,236 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2013, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : 9m034_sensor_ctl.c
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon BVT ISP group
|
||||||
|
Created : 2014/10/1
|
||||||
|
Description : Aptina ar0330 sensor driver
|
||||||
|
History :
|
||||||
|
1.Date : 2014/10/1
|
||||||
|
Author : yy
|
||||||
|
Modification : Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include "m034_sensor_config.h"
|
||||||
|
|
||||||
|
#include "hi_comm_video.h"
|
||||||
|
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
#include "gpioi2c_ex.h"
|
||||||
|
#else
|
||||||
|
#include "hi_i2c.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static int g_fd = -1;
|
||||||
|
static int flag_init = 0;
|
||||||
|
|
||||||
|
const unsigned char sensor_i2c_addr = 0x20; /* I2C Address of 9m034 */
|
||||||
|
const unsigned int sensor_addr_byte = 2;
|
||||||
|
const unsigned int sensor_data_byte = 2;
|
||||||
|
|
||||||
|
extern WDR_MODE_E genSensorMode;
|
||||||
|
extern HI_U8 gu8SensorImageMode;
|
||||||
|
extern HI_BOOL bSensorInit;
|
||||||
|
|
||||||
|
int sensor_i2c_init(void)
|
||||||
|
{
|
||||||
|
if(g_fd >= 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/gpioi2c_ex", 0);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open gpioi2c_ex error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/i2c-0", O_RDWR);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open /dev/i2c-0 error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, I2C_SLAVE_FORCE, sensor_i2c_addr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_DEV error!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_i2c_exit(void)
|
||||||
|
{
|
||||||
|
if (g_fd >= 0)
|
||||||
|
{
|
||||||
|
close(g_fd);
|
||||||
|
g_fd = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_read_register(int addr)
|
||||||
|
{
|
||||||
|
// TODO:
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_write_register(int addr, int data)
|
||||||
|
{
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
i2c_data.dev_addr = sensor_i2c_addr;
|
||||||
|
i2c_data.reg_addr = addr;
|
||||||
|
i2c_data.addr_byte_num = sensor_addr_byte;
|
||||||
|
i2c_data.data = data;
|
||||||
|
i2c_data.data_byte_num = sensor_data_byte;
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, GPIO_I2C_WRITE, &i2c_data);
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("GPIO-I2C write faild!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if(flag_init == 0)
|
||||||
|
{
|
||||||
|
|
||||||
|
sensor_i2c_init();
|
||||||
|
flag_init = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int idx = 0;
|
||||||
|
int ret;
|
||||||
|
char buf[8];
|
||||||
|
|
||||||
|
buf[idx++] = addr & 0xFF;
|
||||||
|
if (sensor_addr_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 1);
|
||||||
|
buf[idx++] = addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_REG_WIDTH error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
buf[idx++] = data;
|
||||||
|
if (sensor_data_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 1);
|
||||||
|
buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("hi_i2c write faild!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = write(g_fd, buf, idx);
|
||||||
|
if(ret < 0)
|
||||||
|
{
|
||||||
|
printf("I2C_WRITE error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void delay_ms(int ms) {
|
||||||
|
usleep(ms*1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_prog(int* rom)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
while (1) {
|
||||||
|
int lookup = rom[i++];
|
||||||
|
int addr = (lookup >> 16) & 0xFFFF;
|
||||||
|
int data = lookup & 0xFFFF;
|
||||||
|
if (addr == 0xFFFE) {
|
||||||
|
delay_ms(data);
|
||||||
|
} else if (addr == 0xFFFF) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
sensor_write_register(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_init()
|
||||||
|
{
|
||||||
|
|
||||||
|
//sensor_i2c_init();
|
||||||
|
|
||||||
|
switch(genSensorMode)
|
||||||
|
{
|
||||||
|
//720P30 linear
|
||||||
|
case WDR_MODE_NONE:
|
||||||
|
sensor_prog(sensor_rom_30_lin);
|
||||||
|
// sensor_write_register(0x3100, 0x0000);
|
||||||
|
/* Disable 1.25x analog gain */
|
||||||
|
//sensor_write_register(0x3EE4, 0xD208);
|
||||||
|
bSensorInit = HI_TRUE;
|
||||||
|
printf("linear mode========================\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
case WDR_MODE_BUILT_IN:
|
||||||
|
sensor_prog(sensor_rom_30_wdr);
|
||||||
|
/* program sensor to wdr mode */
|
||||||
|
/* Disable DCG */
|
||||||
|
printf("wdr mode========================\n");
|
||||||
|
sensor_write_register(0x3100, 0x001A);
|
||||||
|
/* Disable 1.25x analog gain */
|
||||||
|
sensor_write_register(0x3EE4, 0xD208);
|
||||||
|
bSensorInit = HI_TRUE;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
printf("NOT support this mode!\n");
|
||||||
|
return;
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_exit()
|
||||||
|
{
|
||||||
|
sensor_i2c_exit();
|
||||||
|
flag_init = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC)
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_ar0230.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_ar0230.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
|
@ -0,0 +1,147 @@
|
||||||
|
[AE]
|
||||||
|
AEModeNumber = 2
|
||||||
|
;AE [Mode 0] for linear
|
||||||
|
AeCompensation_0 = 0x38 ;linear mode
|
||||||
|
MaxIntTimeTarget_0 = 65535
|
||||||
|
MinIntTimeTarget_0 = 2
|
||||||
|
MaxAgainTarget_0 = 12288
|
||||||
|
MinAgainTarget_0 = 1024
|
||||||
|
MaxDgainTarget_0 = 2046
|
||||||
|
MinDgainTarget_0 = 128
|
||||||
|
ISPDgainShift_0 = 8
|
||||||
|
MinISPDgainTarget_0 = 256
|
||||||
|
MaxISPDgainTarget_0 = 1024
|
||||||
|
;AE [Mode 1] for Built-in wdr
|
||||||
|
AeCompensation_1 = 0x38 ;wdr mode
|
||||||
|
MaxIntTimeTarget_1 = 65535
|
||||||
|
MinIntTimeTarget_1 = 2
|
||||||
|
MaxAgainTarget_1 = 2048
|
||||||
|
MinAgainTarget_1 = 1719
|
||||||
|
MaxDgainTarget_1 = 384
|
||||||
|
MinDgainTarget_1 = 128
|
||||||
|
ISPDgainShift_1 = 8
|
||||||
|
MinISPDgainTarget_1 = 256
|
||||||
|
MaxISPDgainTarget_1 = 2048
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[AWB]
|
||||||
|
AWBModeNumber = 1
|
||||||
|
;AWB [Mode 0] for linear
|
||||||
|
HighColorTemp_0 = 6315 ;AWB CCM Matrix
|
||||||
|
HighCCM_0 = 0x01c6|0x809b|0x802b|0x8035|0x014f|0x801a|0x8002|0x809d|0x019f|
|
||||||
|
MidColorTemp_0 = 3810
|
||||||
|
MidCCM_0 = 0x01d6|0x80af|0x8027|0x803e|0x012e|0x0010|0x8004|0x80c8|0x01cc|
|
||||||
|
LowColorTemp_0 = 2650
|
||||||
|
LowCCM_0 = 0x01c8|0x8076|0x8052|0x8048|0x0154|0x800c|0x8036|0x8101|0x0237|
|
||||||
|
|
||||||
|
WbRefTemp_0 = 5000
|
||||||
|
GainOffset_0 = 0x180|0x100|0x100|0x1ca|
|
||||||
|
WbPara_0 = 37|107|-111|200420|128|-148673|
|
||||||
|
|
||||||
|
SatValid_0 = 1 ;linear mode saturation
|
||||||
|
Saturation_0 = 0x80|0x80|0x7e|0x72|0x68|0x60|0x58|0x50|0x48|0x40|0x38|0x38|0x38|0x38|0x38|0x38|
|
||||||
|
|
||||||
|
[ISP]
|
||||||
|
ISPModeNumber = 2
|
||||||
|
;ISP [Mode 0] for linear
|
||||||
|
AgcValid_0 = 1 ;ISP agc default parameter for linear mode
|
||||||
|
SharpenAltD_0 = 0x3c|0x3c|0x3a|0x36|0x32|0x30|0x2a|0x26|0x22|0x20|0x20|0x20|0x20|0x20|0x20|0x20|
|
||||||
|
SharpenAltUd_0 = 0x6a|0x6a|0x68|0x60|0x58|0x50|0x40|0x30|0x20|0x10|0x10|0x10|0x10|0x10|0x10|0x10|
|
||||||
|
SnrThresh_0 = 0x08|0x0a|0x0c|0x10|0x16|0x1b|0x22|0x28|0x2a|0x3a|0x3a|0x3a|0x3a|0x3a|0x3a|0x3a|
|
||||||
|
DemosaicLumThresh_0 = 0x50|0x50|0x4e|0x49|0x45|0x45|0x40|0x3a|0x30|0x20|0x20|0x20|0x20|0x20|0x20|0x20|
|
||||||
|
DemosaicNpOffset_0 = 0x00|0x0a|0x12|0x1a|0x20|0x28|0x30|0x32|0x34|0x38|0x38|0x38|0x38|0x38|0x38|0x38|
|
||||||
|
GeStrength_0 = 0x55|0x55|0x55|0x55|0x55|0x55|0x37|0x37|0x37|0x35|0x35|0x35|0x35|0x35|0x35|0x35|
|
||||||
|
SharpenRGB_0 = 0x86|0x86|0x84|0x7a|0x60|0x50|0x40|0x30|0x20|0x10|0x10|0x10|0x10|0x10|0x10|0x10|
|
||||||
|
|
||||||
|
WeightValid_0 = 1 ;ISP noise/demosaic weight lut for linear mode
|
||||||
|
NoiseProfileWeight_0 = 0x0,0x0,0x0,0x0,0x0,0x3,0xC,0x11,0x15,0x17,0x1A,0x1B,0x1D,0x1E,0x1F,0x21,0x22,0x23,0x23,0x24,0x25,0x26,0x26,0x27,0x27,0x28,0x29,0x29,0x2A,0x2A,0x2A,0x2B,0x2B,0x2C,0x2C,0x2C,0x2D,0x2D,0x2E,0x2E,0x2E,0x2E,0x2F,0x2F,0x2F,0x30,0x30,0x30,0x30,0x31,0x31,0x31,0x31,0x32,0x32,0x32,0x32,0x33,0x33,0x33,0x33,0x33,0x34,0x34,0x34,0x34,0x34,0x35,0x35,0x35,0x35,0x35,0x35,0x36,0x36,0x36,0x36,0x36,0x36,0x37,0x37,0x37,0x37,0x37,0x37,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,
|
||||||
|
DemosaicWeight_0 = 0x3,0xC,0x11,0x15,0x17,0x1A,0x1B,0x1D,0x1E,0x1F,0x21,0x22,0x23,0x23,0x24,0x25,0x26,0x26,0x27,0x27,0x28,0x29,0x29,0x2A,0x2A,0x2A,0x2B,0x2B,0x2C,0x2C,0x2C,0x2D,0x2D,0x2E,0x2E,0x2E,0x2E,0x2F,0x2F,0x2F,0x30,0x30,0x30,0x30,0x31,0x31,0x31,0x31,0x32,0x32,0x32,0x32,0x33,0x33,0x33,0x33,0x33,0x34,0x34,0x34,0x34,0x34,0x35,0x35,0x35,0x35,0x35,0x35,0x36,0x36,0x36,0x36,0x36,0x36,0x37,0x37,0x37,0x37,0x37,0x37,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,
|
||||||
|
|
||||||
|
demosaicValid_0 = 1 ;ISP demosaic default parameter for linear mode
|
||||||
|
VhSlope_0 = 0xac
|
||||||
|
AaSlope_0 = 0xaa
|
||||||
|
VaSlope_0 = 0xa8
|
||||||
|
UuSlope_0 = 0xa0
|
||||||
|
SatSlope_0 = 0x5d
|
||||||
|
AcSlope_0 = 0xa0
|
||||||
|
FcSlope_0 = 0x8a
|
||||||
|
VhThresh_0 = 0x0
|
||||||
|
AaThresh_0 = 0x0
|
||||||
|
VaThresh_0 = 0x0
|
||||||
|
UuThresh_0 = 0x08
|
||||||
|
SatThresh_0 = 0x0
|
||||||
|
AcThresh_0 = 0x1b3
|
||||||
|
|
||||||
|
gammaRGBValid_0 = 1 ;gamma for linear mode
|
||||||
|
gammaRGB0_0 = 0,180,320,426,516,590,660,730,786,844,896,946,994,1040,1090,1130,1170,1210,1248,1296,1336,1372,1416,1452,1486,1516,1546,1580,1616,1652,1678,1714,1742,1776,1798,1830,1862,1886,1912,1940,1968,1992,2010,2038,2062,2090,2114,2134,2158,2178,2202,2222,2246,2266,2282,2300,2324,2344,2360,2372,2390,2406,2422,2438,2458,2478,2494,2510,2526,2546,2562,2582,2598,2614,2630,2648,2660,2670,2682,2698,2710,2724,2736,2752,2764,2780,2792,2808,2820,2836,
|
||||||
|
gammaRGB1_0 = 2848,2864,2876,2888,2896,2908,2920,2928,2940,2948,2960,2972,2984,2992,3004,3014,3028,3036,3048,3056,3068,3080,3088,3100,3110,3120,3128,3140,3148,3160,3168,3174,3182,3190,3202,3210,3218,3228,3240,3256,3266,3276,3288,3300,3306,3318,3326,3334,3342,3350,3360,3370,3378,3386,3394,3398,3406,3414,3422,3426,3436,3444,3454,3466,3476,3486,3498,3502,3510,3518,3526,3530,3538,3546,3554,3558,3564,3570,3574,3582,3590,3598,3604,3610,3618,3628,3634,3640,3644,3652,
|
||||||
|
gammaRGB2_0 = 3656,3664,3670,3678,3688,3696,3700,3708,3712,3716,3722,3730,3736,3740,3748,3752,3756,3760,3766,3774,3778,3786,3790,3800,3808,3812,3816,3824,3830,3832,3842,3846,3850,3854,3858,3862,3864,3870,3874,3878,3882,3888,3894,3900,3908,3912,3918,3924,3928,3934,3940,3946,3952,3958,3966,3974,3978,3982,3986,3990,3994,4002,4006,4010,4018,4022,4032,4038,4046,4050,4056,4062,4072,4076,4084,4090,4095,
|
||||||
|
|
||||||
|
RGBsharpenLutValid_0 = 1 ;ISP RGB sharpening default parameter for linear mode
|
||||||
|
LutCore_0 = 192
|
||||||
|
LutStrength_0 = 127
|
||||||
|
LutMagnitude_0 = 6
|
||||||
|
|
||||||
|
DrcEnable_0 = 0 ;drc default parameter for linear mode
|
||||||
|
BlackLevel_0 = 0x0
|
||||||
|
WhiteLevel_0 = 0x4ff
|
||||||
|
SlopeMax_0 = 0x30
|
||||||
|
SlopeMin_0 = 0x0
|
||||||
|
VarianceSpace_0 = 0x4
|
||||||
|
VarianceIntensity_0 = 0x1
|
||||||
|
;ISP [Mode 1] for Built-in WDR
|
||||||
|
AgcValid_1 = 1 ;ISP agc default parameter for linear mode
|
||||||
|
SharpenAltD_1 = 0x40|0x40|0x40|0x40|0x38|0x30|0x28|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|
|
||||||
|
SharpenAltUd_1 = 0x60|0x60|0x60|0x60|0x50|0x40|0x30|0x20|0x10|0x10|0x10|0x10|0x10|0x10|0x10|0x10|
|
||||||
|
SnrThresh_1 = 0x8|0xC|0x10|0x14|0x18|0x20|0x28|0x30|0x30|0x30|0x30|0x30|0x30|0x30|0x30|0x30|
|
||||||
|
DemosaicLumThresh_1 = 0x50|0x50|0x40|0x40|0x30|0x30|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|
|
||||||
|
DemosaicNpOffset_1 = 0x0|0xa|0x12|0x1a|0x20|0x28|0x30|0x30|0x30|0x30|0x30|0x30|0x30|0x30|0x30|0x30|
|
||||||
|
GeStrength_1 = 0x55|0x55|0x55|0x55|0x55|0x55|0x37|0x37|0x37|0x37|0x37|0x37|0x37|0x37|0x37|0x37|
|
||||||
|
SharpenRGB_1 = 0x60|0x60|0x60|0x60|0x50|0x40|0x30|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|0x20|
|
||||||
|
|
||||||
|
WeightValid_1 = 1 ;ISP noise/demosaic weight lut for linear mode
|
||||||
|
NoiseProfileWeight_1 = 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0xF,0x13,0x15,0x18,0x1A,0x1C,0x1D,0x1E,0x20,0x21,0x22,0x23,0x23,0x24,0x25,0x26,0x26,0x26,0x27,0x28,0x28,0x29,0x29,0x2A,0x2A,0x2B,0x2B,0x2C,0x2C,0x2C,0x2D,0x2D,0x2D,0x2E,0x2E,0x2E,0x2F,0x2F,0x2F,0x2F,0x30,0x30,0x30,0x31,0x31,0x31,0x31,0x31,0x32,0x32,0x32,0x32,0x33,0x33,0x33,0x33,0x33,0x34,0x34,0x34,0x34,0x34,0x35,0x35,0x35,0x35,0x35,0x35,0x36,0x36,0x36,0x36,0x36,0x36,0x36,0x37,0x37,0x37,0x37,0x37,0x37,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3C,0x3C,0x3C,
|
||||||
|
DemosaicWeight_1 = 0x0,0x0,0x8,0xF,0x13,0x15,0x18,0x1A,0x1C,0x1D,0x1E,0x20,0x21,0x22,0x23,0x23,0x24,0x25,0x26,0x26,0x26,0x27,0x28,0x28,0x29,0x29,0x2A,0x2A,0x2B,0x2B,0x2C,0x2C,0x2C,0x2D,0x2D,0x2D,0x2E,0x2E,0x2E,0x2F,0x2F,0x2F,0x2F,0x30,0x30,0x30,0x31,0x31,0x31,0x31,0x31,0x32,0x32,0x32,0x32,0x33,0x33,0x33,0x33,0x33,0x34,0x34,0x34,0x34,0x34,0x35,0x35,0x35,0x35,0x35,0x35,0x36,0x36,0x36,0x36,0x36,0x36,0x36,0x37,0x37,0x37,0x37,0x37,0x37,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x39,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3A,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3B,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,0x3C,
|
||||||
|
|
||||||
|
demosaicValid_1 = 1 ;ISP demosaic default parameter for linear mode
|
||||||
|
VhSlope_1 = 0xdc
|
||||||
|
AaSlope_1 = 0xc8
|
||||||
|
VaSlope_1 = 0xb9
|
||||||
|
UuSlope_1 = 0xa8
|
||||||
|
SatSlope_1 = 0x5d
|
||||||
|
AcSlope_1 = 0xa0
|
||||||
|
FcSlope_1 = 0x8a
|
||||||
|
VhThresh_1 = 0x0
|
||||||
|
AaThresh_1 = 0x0
|
||||||
|
VaThresh_1 = 0x0
|
||||||
|
UuThresh_1 = 0x08
|
||||||
|
SatThresh_1 = 0x0
|
||||||
|
AcThresh_1 = 0x1b3
|
||||||
|
|
||||||
|
gammaRGBValid_1 = 1 ;gamma for linear mode
|
||||||
|
gammaRGB0_1 = 0,11,22,33,45,57,70,82,95,109,122,136,151,165,180,195,211,226,241,256,272,288,304,321,337,353,370,387,404,422,439,457,476,494,512,531,549,567,585,603,621,639,658,676,694,713,731,750,769,793,816,839,863,887,910,933,958,983,1008,1033,1059,1084,1109,1133,1157,1180,1204,1228,1252,1277,1301,1326,1348,1366,1387,1410,1432,1453,1475,1496,1518,1542,1565,1586,1607,1628,1648,1669,1689,1711,1730,1751,1771,1793,1815,1835,1854,1871,1889,1908,1928,1947,1965,1983,2003,2023,2040,
|
||||||
|
gammaRGB1_1 = 2060,2079,2096,2113,2132,2149,2167,2184,2203,2220,2238,2257,2275,2293,2310,2326,2344,2359,2377,2392,2408,2426,2442,2460,2477,2492,2510,2527,2545,2561,2577,2592,2608,2623,2638,2654,2669,2685,2700,2716,2732,2748,2764,2779,2796,2811,2827,2842,2855,2870,2884,2898,2913,2926,2941,2955,2969,2985,2998,3014,3027,3042,3057,3071,3086,3100,3114,3127,3142,3155,3168,3182,3196,3209,3222,3237,3250,3264,3277,3292,3305,3319,3332,3347,3360,3374,3385,3398,3411,3424,3437,3448,3462,3475,
|
||||||
|
gammaRGB2_1 = 3487,3501,3513,3526,3537,3550,3561,3573,3585,3596,3609,3621,3632,3644,3655,3666,3678,3689,3701,3712,3723,3735,3746,3757,3767,3779,3791,3802,3812,3823,3834,3845,3855,3866,3877,3888,3899,3907,3919,3929,3940,3951,3962,3973,3984,3994,4003,4014,4025,4034,4045,4056,4065,4076,4085,4095
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
gammafevalid_1 = 1 ;gammafe0 and gammafe1 for wdr mode
|
||||||
|
gammafe0_1 = 0,2048,34816,35840,36864,37888,38912,39936,40960,41984,43008,44032,45056,46080,47104,48128,49152,50176,51200,52224,53248,54272,55296,56320,57344,58368,59392,60416,61440,62464,63488,64512,65535
|
||||||
|
|
||||||
|
gammafe1.0_1 = 0,156,320,495,682,885,1108,1358,1650,1671,1691,1712,1733,1754,1776,1798,1821,1844,1867,1891,1915,1939,1965,1990,2017,2044,2071,2100,2129,2159,2190,2222,2255,2290,2326,2363,2403,2445,2489,2537,2589,2647,2712,2790,2891,3135,3379,3480,3558,3623,3681,3733,3781,3825,3867,3907,3944,3980,4015,4048,4080,4111,4141,4170,4199,4226,4253,4280,4305,4331,4355,4379,4403,4426,4449,4472,4494,4516,4537,4558,4579,4599,4620,4639,4659,4679,4698,4717,4735,4754,4772,4790,
|
||||||
|
gammafe1.1_1 = 4808,4826,4843,4861,4878,4895,4912,4928,4945,4961,4978,4994,5010,5025,5041,5057,5072,5087,5103,5118,5133,5148,5162,5177,5191,5206,5220,5234,5249,5263,5277,5290,5304,5318,5332,5345,5358,5372,5385,5398,5411,5424,5437,5450,5463,5842,6174,6472,6747,7002,7241,7467,7681,7886,8083,8272,8454,8630,8801,8967,9128,9285,9438,9588,9734,9877,10016,10154,10288,10550,10803,11043,11281,11512,11736,11955,12168,12377,12581,12781,12976,13168,13356,13541,13723,13901,14077,
|
||||||
|
gammafe1.2_1 = 14250,14420,14588,14753,14916,15076,15235,15392,15546,15699,15850,15999,16146,16292,16436,16578,16719,16859,16997,17134,17269,17404,17537,17668,17799,17928,18057,18184,18310,18435,20282,21977,23531,24974,26328,27608,28824,29984,31097,32167,33199,34196,35163,36101,37014,37901,38768,39613,40440,41249,42040,42816,43577,44325,45058,45779,46488,47186,48533,49856,51144,52398,53620,54815,55981,57123,58240,59336,60410,61466,62502,63520,64522,65507,65535,65535,65535,65535
|
||||||
|
|
||||||
|
RGBsharpenLutValid_1 = 1 ;ISP RGB sharpening default parameter for linear mode
|
||||||
|
LutCore_1 = 255
|
||||||
|
LutStrength_1 = 127
|
||||||
|
LutMagnitude_1 = 8
|
||||||
|
|
||||||
|
DrcEnable_1 = 1 ;drc default parameter for linear mode
|
||||||
|
BlackLevel_1 = 0x0
|
||||||
|
WhiteLevel_1 = 0xfff
|
||||||
|
SlopeMax_1 = 0x38
|
||||||
|
SlopeMin_1 = 0x0
|
||||||
|
VarianceSpace_1 = 0xa
|
||||||
|
VarianceIntensity_1 = 0x4
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC)
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_ar0130.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_ar0130.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,358 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "hi_comm_video.h"
|
||||||
|
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
#include "gpioi2c_ex.h"
|
||||||
|
#else
|
||||||
|
#include "hi_i2c.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static int g_fd = -1;
|
||||||
|
static int flag_init = 0;
|
||||||
|
|
||||||
|
const unsigned char sensor_i2c_addr = 0x20; /* I2C Address of 9m034 */
|
||||||
|
const unsigned int sensor_addr_byte = 2;
|
||||||
|
const unsigned int sensor_data_byte = 2;
|
||||||
|
|
||||||
|
extern WDR_MODE_E genSensorMode;
|
||||||
|
extern HI_U8 gu8SensorImageMode;
|
||||||
|
extern HI_BOOL bSensorInit;
|
||||||
|
|
||||||
|
int sensor_i2c_init(void)
|
||||||
|
{
|
||||||
|
if(g_fd >= 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/gpioi2c_ex", 0);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open gpioi2c_ex error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/i2c-0", O_RDWR);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open /dev/i2c-0 error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, I2C_SLAVE_FORCE, sensor_i2c_addr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_DEV error!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_i2c_exit(void)
|
||||||
|
{
|
||||||
|
if (g_fd >= 0)
|
||||||
|
{
|
||||||
|
close(g_fd);
|
||||||
|
g_fd = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_read_register(int addr)
|
||||||
|
{
|
||||||
|
// TODO:
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_write_register(int addr, int data)
|
||||||
|
{
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
i2c_data.dev_addr = sensor_i2c_addr;
|
||||||
|
i2c_data.reg_addr = addr;
|
||||||
|
i2c_data.addr_byte_num = sensor_addr_byte;
|
||||||
|
i2c_data.data = data;
|
||||||
|
i2c_data.data_byte_num = sensor_data_byte;
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, GPIO_I2C_WRITE, &i2c_data);
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("GPIO-I2C write faild!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if(flag_init == 0)
|
||||||
|
{
|
||||||
|
|
||||||
|
sensor_i2c_init();
|
||||||
|
flag_init = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int idx = 0;
|
||||||
|
int ret;
|
||||||
|
char buf[8];
|
||||||
|
|
||||||
|
buf[idx++] = addr & 0xFF;
|
||||||
|
if (sensor_addr_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 1);
|
||||||
|
buf[idx++] = addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_REG_WIDTH error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
buf[idx++] = data;
|
||||||
|
if (sensor_data_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 1);
|
||||||
|
buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("hi_i2c write faild!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = write(g_fd, buf, idx);
|
||||||
|
if(ret < 0)
|
||||||
|
{
|
||||||
|
printf("I2C_WRITE error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void delay_ms(int ms) {
|
||||||
|
usleep(ms*1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_prog(int* rom)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
while (1) {
|
||||||
|
int lookup = rom[i++];
|
||||||
|
int addr = (lookup >> 16) & 0xFFFF;
|
||||||
|
int data = lookup & 0xFFFF;
|
||||||
|
if (addr == 0xFFFE) {
|
||||||
|
delay_ms(data);
|
||||||
|
} else if (addr == 0xFFFF) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
sensor_write_register(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void sensor_init()
|
||||||
|
{
|
||||||
|
//[720p30]
|
||||||
|
|
||||||
|
sensor_write_register( 0x301A, 0x0001 ); // RESET_REGISTER
|
||||||
|
delay_ms(200); //ms
|
||||||
|
sensor_write_register( 0x301A, 0x10D8 ); // RESET_REGISTER
|
||||||
|
delay_ms(200); //ms
|
||||||
|
//Linear Mode Setup
|
||||||
|
//AR0130 Rev1 Linear sequencer load 8-2-2011
|
||||||
|
sensor_write_register( 0x3088, 0x8000 );// SEQ_CTRL_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0225 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x5050 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2D26 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0828 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0D17 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0926 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0028 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0526 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0xA728 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0725 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x8080 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2917 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0525 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0040 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2702 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1616 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2706 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1736 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x26A6 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1703 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x26A4 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x171F );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2805 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2620 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2804 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2520 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2027 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0017 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1E25 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0020 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2117 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1028 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x051B );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1703 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2706 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1703 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1747 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2660 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x17AE );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2500 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x9027 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0026 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1828 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x002E );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2A28 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x081E );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0831 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1440 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x4014 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2020 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1410 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1034 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1014 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0020 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x4013 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1802 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1470 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x7004 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1470 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x7003 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1470 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x7017 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2002 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2002 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x5004 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2004 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x1400 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x5022 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0314 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0020 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0314 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x0050 );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2C2C );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x3086, 0x2C2C );// SEQ_DATA_PORT
|
||||||
|
sensor_write_register( 0x309E, 0x0000 );// DCDS_PROG_START_ADDR
|
||||||
|
sensor_write_register( 0x30E4, 0x6372 );// ADC_BITS_6_7
|
||||||
|
sensor_write_register( 0x30E2, 0x7253 );// ADC_BITS_4_5
|
||||||
|
sensor_write_register( 0x30E0, 0x5470 );// ADC_BITS_2_3
|
||||||
|
sensor_write_register( 0x30E6, 0xC4CC );// ADC_CONFIG1
|
||||||
|
sensor_write_register( 0x30E8, 0x8050 );// ADC_CONFIG2
|
||||||
|
delay_ms(200); //ms
|
||||||
|
sensor_write_register( 0x3082, 0x0029 ); // OPERATION_MODE_CTRL
|
||||||
|
//AR0130 Rev1 Optimized settings
|
||||||
|
sensor_write_register( 0x301E, 0x00C8); // DATA_PEDESTAL
|
||||||
|
sensor_write_register( 0x3EDA, 0x0F03); // DAC_LD_14_15
|
||||||
|
sensor_write_register( 0x3EDE, 0xC005); // DAC_LD_18_19
|
||||||
|
sensor_write_register( 0x3ED8, 0x09EF); // DAC_LD_12_13
|
||||||
|
sensor_write_register( 0x3EE2, 0xA46B); // DAC_LD_22_23
|
||||||
|
sensor_write_register( 0x3EE0, 0x047D); // DAC_LD_20_21
|
||||||
|
sensor_write_register( 0x3EDC, 0x0070); // DAC_LD_16_17
|
||||||
|
sensor_write_register( 0x3044, 0x0404); // DARK_CONTROL
|
||||||
|
sensor_write_register( 0x3EE6, 0x8303); // DAC_LD_26_27
|
||||||
|
sensor_write_register( 0x3EE4, 0xD208); // DAC_LD_24_25
|
||||||
|
sensor_write_register( 0x3ED6, 0x00BD); // DAC_LD_10_11
|
||||||
|
sensor_write_register( 0x30B0, 0x1300); // DIGITAL_TEST
|
||||||
|
sensor_write_register( 0x30D4, 0xE007); // COLUMN_CORRECTION
|
||||||
|
sensor_write_register( 0x301A, 0x10DC); // RESET_REGISTER
|
||||||
|
delay_ms(500 );//ms
|
||||||
|
sensor_write_register( 0x301A, 0x10D8); // RESET_REGISTER
|
||||||
|
delay_ms(500); //ms
|
||||||
|
sensor_write_register( 0x3044, 0x0400); // DARK_CONTROL
|
||||||
|
|
||||||
|
sensor_write_register( 0x3012, 0x02A0); // COARSE_INTEGRATION_TIME
|
||||||
|
|
||||||
|
|
||||||
|
//720p 30fps Setup
|
||||||
|
sensor_write_register( 0x3032, 0x0000); // DIGITAL_BINNING
|
||||||
|
sensor_write_register( 0x3002, 0x0002); // Y_ADDR_START
|
||||||
|
sensor_write_register( 0x3004, 0x0000); // X_ADDR_START
|
||||||
|
sensor_write_register( 0x3006, 0x02D1);//Row End (A) = 721
|
||||||
|
sensor_write_register( 0x3008, 0x04FF);//Column End (A) = 1279
|
||||||
|
sensor_write_register( 0x300A, 0x02EA);//Frame Lines (A) = 746
|
||||||
|
sensor_write_register( 0x300C, 0x08ba);
|
||||||
|
sensor_write_register( 0x3012, 0x0133);//Coarse_IT_Time (A) = 307
|
||||||
|
sensor_write_register( 0x306e, 0x9211);//Coarse_IT_Time (A) = 307
|
||||||
|
|
||||||
|
|
||||||
|
//Enable Parallel Mode
|
||||||
|
sensor_write_register( 0x301A, 0x10D8); // RESET_REGISTER
|
||||||
|
sensor_write_register( 0x31D0, 0x0001); // HDR_COMP
|
||||||
|
|
||||||
|
//PLL Enabled 27Mhz to 50Mhz
|
||||||
|
sensor_write_register( 0x302A, 0x0009 );//VT_PIX_CLK_DIV = 9
|
||||||
|
sensor_write_register( 0x302C, 0x0001 );//VT_SYS_CLK_DIV = 1
|
||||||
|
sensor_write_register( 0x302E, 0x0003 );//PRE_PLL_CLK_DIV = 3
|
||||||
|
sensor_write_register( 0x3030, 0x0032 );//PLL_MULTIPLIER = 50
|
||||||
|
sensor_write_register( 0x30B0, 0x1300 ); // DIGITAL_TEST
|
||||||
|
delay_ms(100); //ms
|
||||||
|
sensor_write_register( 0x301A, 0x10DC ); // RESET_REGISTER
|
||||||
|
sensor_write_register( 0x301A, 0x10DC ); // RESET_REGISTER
|
||||||
|
|
||||||
|
//exposure
|
||||||
|
sensor_write_register( 0x3012, 0x0671 ); // COARSE_INTEGRATION_TIME
|
||||||
|
sensor_write_register( 0x30B0, 0x1330 ); // DIGITAL_TEST
|
||||||
|
sensor_write_register( 0x3056, 0x003B ); // GREEN1_GAIN
|
||||||
|
sensor_write_register( 0x305C, 0x003B ); // GREEN2_GAIN
|
||||||
|
sensor_write_register( 0x305A, 0x003B ); // RED_GAIN
|
||||||
|
sensor_write_register( 0x3058, 0x003B ); // BLUE_GAIN
|
||||||
|
//High Conversion gain
|
||||||
|
sensor_write_register( 0x3100, 0x0004 ); // AE_CTRL_REG
|
||||||
|
|
||||||
|
|
||||||
|
//LOAD= Disable Embedded Data and Stats
|
||||||
|
sensor_write_register(0x3064, 0x1802); // SMIA_TEST, EMBEDDED_STATS_EN, 0x0000
|
||||||
|
sensor_write_register(0x3064, 0x1802); // SMIA_TEST, EMBEDDED_DATA, 0x0000
|
||||||
|
|
||||||
|
sensor_write_register(0x30BA, 0x0008); //20120502
|
||||||
|
|
||||||
|
sensor_write_register(0x3EE4, 0xD308); //the default value former is 0xd208
|
||||||
|
|
||||||
|
sensor_write_register(0x301A, 0x10DC); // RESET_REGISTER
|
||||||
|
|
||||||
|
delay_ms(200); //DELAY= 200
|
||||||
|
|
||||||
|
|
||||||
|
printf("Aptina AR0130 sensor 720P30fps init success!\n");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_exit()
|
||||||
|
{
|
||||||
|
sensor_i2c_exit();
|
||||||
|
flag_init = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
#
|
||||||
|
# hi_iniparser lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
INI_INC := $(ISP_PATH)/iniparser
|
||||||
|
3A_PATH := $(ISP_PATH)/include
|
||||||
|
|
||||||
|
ifeq ($(MPP_BUILD), y)
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
else
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/extdrv
|
||||||
|
endif
|
||||||
|
|
||||||
|
BUS_DIR := $(EXT_PATH)/pwm
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
CFLAGS = -Wall -fPIC
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
DFLAGS := -DEXT_REG
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
|
||||||
|
INC := -I$(REL_INC) -I$(ISP_INC) -I$(BUS_DIR) -I$(INI_INC) -I$(3A_INC)
|
||||||
|
#-I$(SRC_INC) -I$(VREG_INC) -I$(VREG_INC)/arch/$(HIARCH)
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@(echo "compiling $< ...")
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@($(COMPILE) -o $@ -c $< $(INC))
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
LIB_A := $(LIBPATH)/lib_cmoscfg.a
|
||||||
|
LIB_S := $(LIBPATH)/lib_cmoscfg.so
|
||||||
|
|
||||||
|
all:$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(LIB_A) $(OBJS))
|
||||||
|
@($(CC) $(LIBS_LD_CFLAGS) -shared -fPIC -o $(LIB_S) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(LIB_A) $(LIB_S) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
||||||
|
|
||||||
|
show:
|
||||||
|
@echo "$(QUICK_CONFIG)"
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC) -I$(ISP_PATH)/iniparser
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_ov9712.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_ov9712.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
|
@ -0,0 +1,3 @@
|
||||||
|
make clean;make
|
||||||
|
cp ../../lib/libsns_ov9712.so /home/x00226337/hi3518e/release_3518E/libs;
|
||||||
|
echo "cp down!!"
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,310 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "hi_comm_video.h"
|
||||||
|
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
#include "gpioi2c_ex.h"
|
||||||
|
#else
|
||||||
|
#include "hi_i2c.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const unsigned char sensor_i2c_addr = 0x60; /* I2C Address of OV9712 */
|
||||||
|
const unsigned int sensor_addr_byte = 1;
|
||||||
|
const unsigned int sensor_data_byte = 1;
|
||||||
|
static int g_fd = -1;
|
||||||
|
static int flag_init = 0;
|
||||||
|
|
||||||
|
extern WDR_MODE_E genSensorMode;
|
||||||
|
extern HI_U8 gu8SensorImageMode;
|
||||||
|
extern HI_BOOL bSensorInit;
|
||||||
|
|
||||||
|
int sensor_i2c_init(void)
|
||||||
|
{
|
||||||
|
if(g_fd >= 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/gpioi2c_ex", 0);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open gpioi2c_ex error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/i2c-0", O_RDWR);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open /dev/i2c-0 error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, I2C_SLAVE_FORCE, sensor_i2c_addr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_DEV error!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_i2c_exit(void)
|
||||||
|
{
|
||||||
|
if (g_fd >= 0)
|
||||||
|
{
|
||||||
|
close(g_fd);
|
||||||
|
g_fd = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_read_register(int addr)
|
||||||
|
{
|
||||||
|
// TODO:
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_write_register(int addr, int data)
|
||||||
|
{
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
i2c_data.dev_addr = sensor_i2c_addr;
|
||||||
|
i2c_data.reg_addr = addr;
|
||||||
|
i2c_data.addr_byte_num = sensor_addr_byte;
|
||||||
|
i2c_data.data = data;
|
||||||
|
i2c_data.data_byte_num = sensor_data_byte;
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, GPIO_I2C_WRITE, &i2c_data);
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("GPIO-I2C write faild!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if(flag_init == 0)
|
||||||
|
{
|
||||||
|
|
||||||
|
sensor_i2c_init();
|
||||||
|
flag_init = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int idx = 0;
|
||||||
|
int ret;
|
||||||
|
char buf[8];
|
||||||
|
|
||||||
|
buf[idx++] = addr & 0xFF;
|
||||||
|
if (sensor_addr_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 1);
|
||||||
|
buf[idx++] = addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_REG_WIDTH error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
buf[idx++] = data;
|
||||||
|
if (sensor_data_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 1);
|
||||||
|
buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("hi_i2c write faild!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = write(g_fd, buf, idx);
|
||||||
|
if(ret < 0)
|
||||||
|
{
|
||||||
|
printf("I2C_WRITE error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void delay_ms(int ms) {
|
||||||
|
usleep(ms*1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_prog(int* rom)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
while (1) {
|
||||||
|
int lookup = rom[i++];
|
||||||
|
int addr = (lookup >> 16) & 0xFFFF;
|
||||||
|
int data = lookup & 0xFFFF;
|
||||||
|
if (addr == 0xFFFE) {
|
||||||
|
delay_ms(data);
|
||||||
|
} else if (addr == 0xFFFF) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
sensor_write_register(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_linear_720p25_init();
|
||||||
|
|
||||||
|
#define SENSOR_720P_25FPS_MODE (1)
|
||||||
|
|
||||||
|
void sensor_init()
|
||||||
|
{
|
||||||
|
sensor_i2c_init();
|
||||||
|
#if 0
|
||||||
|
/* When sensor first init, config all registers */
|
||||||
|
if (HI_FALSE == bSensorInit)
|
||||||
|
{
|
||||||
|
if(SENSOR_720P_25FPS_MODE == gu8SensorImageMode)
|
||||||
|
{
|
||||||
|
sensor_linear_720p25_init();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* When sensor switch mode(linear<->WDR or resolution), config different registers(if possible) */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(SENSOR_720P_25FPS_MODE == gu8SensorImageMode)
|
||||||
|
{
|
||||||
|
sensor_linear_720p25_init();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
sensor_linear_720p25_init();
|
||||||
|
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_exit()
|
||||||
|
{
|
||||||
|
sensor_i2c_exit();
|
||||||
|
flag_init = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 720P30 and 720P25 */
|
||||||
|
void sensor_linear_720p25_init()
|
||||||
|
{
|
||||||
|
//Reset
|
||||||
|
sensor_write_register(0x12, 0x80);
|
||||||
|
sensor_write_register(0x09, 0x10);
|
||||||
|
|
||||||
|
//Core Settings
|
||||||
|
sensor_write_register(0x1e, 0x07);
|
||||||
|
sensor_write_register(0x5f, 0x18);
|
||||||
|
sensor_write_register(0x69, 0x04);
|
||||||
|
sensor_write_register(0x65, 0x2a);
|
||||||
|
sensor_write_register(0x68, 0x0a);
|
||||||
|
sensor_write_register(0x39, 0x28);
|
||||||
|
sensor_write_register(0x4d, 0x90);
|
||||||
|
sensor_write_register(0xc1, 0x80);
|
||||||
|
sensor_write_register(0x0c, 0x30);
|
||||||
|
sensor_write_register(0x6d, 0x02);
|
||||||
|
|
||||||
|
//DSP
|
||||||
|
//sensor_write_register(0x96, 0xf1);
|
||||||
|
sensor_write_register(0x96, 0x01);
|
||||||
|
sensor_write_register(0xbc, 0x68);
|
||||||
|
|
||||||
|
//Resolution and Format
|
||||||
|
sensor_write_register(0x12, 0x00);
|
||||||
|
sensor_write_register(0x3b, 0x00);
|
||||||
|
sensor_write_register(0x97, 0x80);
|
||||||
|
sensor_write_register(0x17, 0x25);
|
||||||
|
sensor_write_register(0x18, 0xA2);
|
||||||
|
sensor_write_register(0x19, 0x01);
|
||||||
|
sensor_write_register(0x1a, 0xCA);
|
||||||
|
sensor_write_register(0x03, 0x0A);
|
||||||
|
sensor_write_register(0x32, 0x07);
|
||||||
|
sensor_write_register(0x98, 0x00);
|
||||||
|
sensor_write_register(0x99, 0x28);
|
||||||
|
sensor_write_register(0x9a, 0x00);
|
||||||
|
sensor_write_register(0x57, 0x00);
|
||||||
|
sensor_write_register(0x58, 0xB4);
|
||||||
|
sensor_write_register(0x59, 0xA0);
|
||||||
|
sensor_write_register(0x4c, 0x13);
|
||||||
|
sensor_write_register(0x4b, 0x36);
|
||||||
|
sensor_write_register(0x3d, 0x3c);
|
||||||
|
sensor_write_register(0x3e, 0x03);
|
||||||
|
sensor_write_register(0xbd, 0xA0);
|
||||||
|
sensor_write_register(0xbe, 0xb4);
|
||||||
|
sensor_write_register(0x37, 0x02);
|
||||||
|
sensor_write_register(0x60, 0x9d);
|
||||||
|
|
||||||
|
//YAVG
|
||||||
|
sensor_write_register(0x4e, 0x55);
|
||||||
|
sensor_write_register(0x4f, 0x55);
|
||||||
|
sensor_write_register(0x50, 0x55);
|
||||||
|
sensor_write_register(0x51, 0x55);
|
||||||
|
sensor_write_register(0x24, 0x55);
|
||||||
|
sensor_write_register(0x25, 0x40);
|
||||||
|
sensor_write_register(0x26, 0xa1);
|
||||||
|
|
||||||
|
//Clock
|
||||||
|
sensor_write_register(0x5c, 0x52);
|
||||||
|
sensor_write_register(0x5d, 0x00);
|
||||||
|
sensor_write_register(0x11, 0x01);
|
||||||
|
sensor_write_register(0x2a, 0x9c);
|
||||||
|
sensor_write_register(0x2b, 0x06);
|
||||||
|
sensor_write_register(0x2d, 0x00);
|
||||||
|
sensor_write_register(0x2e, 0x00);
|
||||||
|
|
||||||
|
//General
|
||||||
|
sensor_write_register(0x13, 0xA5);
|
||||||
|
sensor_write_register(0x14, 0x40);
|
||||||
|
|
||||||
|
//Banding
|
||||||
|
sensor_write_register(0x4a, 0x00);
|
||||||
|
sensor_write_register(0x49, 0xce);
|
||||||
|
sensor_write_register(0x22, 0x03);
|
||||||
|
sensor_write_register(0x09, 0x00);
|
||||||
|
|
||||||
|
//close AE_AWB
|
||||||
|
sensor_write_register(0x13, 0x80);
|
||||||
|
sensor_write_register(0x16, 0x00);
|
||||||
|
sensor_write_register(0x10, 0xf0);
|
||||||
|
sensor_write_register(0x00, 0x3f);
|
||||||
|
sensor_write_register(0x38, 0x00);
|
||||||
|
sensor_write_register(0x01, 0x40);
|
||||||
|
sensor_write_register(0x02, 0x40);
|
||||||
|
sensor_write_register(0x05, 0x40);
|
||||||
|
sensor_write_register(0x06, 0x00);
|
||||||
|
sensor_write_register(0x07, 0x00);
|
||||||
|
|
||||||
|
//BLC
|
||||||
|
sensor_write_register(0x41, 0x84);
|
||||||
|
|
||||||
|
bSensorInit = HI_TRUE;
|
||||||
|
printf("=========================================================\n");
|
||||||
|
printf("===ominivision ov9712 sensor 720P30fps(Parallel port) init success!=====\n");
|
||||||
|
printf("=========================================================\n");
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC) -I$(ISP_PATH)/iniparser
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_ov9752.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_ov9752.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,461 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "hi_comm_video.h"
|
||||||
|
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
#include "gpioi2c_ex.h"
|
||||||
|
#else
|
||||||
|
#include "hi_i2c.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const unsigned char sensor_i2c_addr = 0x42; /* I2C Address of OV4682 */
|
||||||
|
const unsigned int sensor_addr_byte = 2;
|
||||||
|
const unsigned int sensor_data_byte = 1;
|
||||||
|
static int g_fd = -1;
|
||||||
|
|
||||||
|
extern WDR_MODE_E genSensorMode;
|
||||||
|
extern HI_U8 gu8SensorImageMode;
|
||||||
|
extern HI_BOOL bSensorInit;
|
||||||
|
|
||||||
|
int sensor_i2c_init(void)
|
||||||
|
{
|
||||||
|
if(g_fd >= 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/gpioi2c_ex", 0);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open gpioi2c_ex error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/i2c-0", O_RDWR);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open /dev/i2c-0 error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, I2C_SLAVE_FORCE, sensor_i2c_addr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_DEV error!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_i2c_exit(void)
|
||||||
|
{
|
||||||
|
if (g_fd >= 0)
|
||||||
|
{
|
||||||
|
close(g_fd);
|
||||||
|
g_fd = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_read_register(int addr)
|
||||||
|
{
|
||||||
|
// TODO:
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_write_register(int addr, int data)
|
||||||
|
{
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
i2c_data.dev_addr = sensor_i2c_addr;
|
||||||
|
i2c_data.reg_addr = addr;
|
||||||
|
i2c_data.addr_byte_num = sensor_addr_byte;
|
||||||
|
i2c_data.data = data;
|
||||||
|
i2c_data.data_byte_num = sensor_data_byte;
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, GPIO_I2C_WRITE, &i2c_data);
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("GPIO-I2C write faild!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int idx = 0;
|
||||||
|
int ret;
|
||||||
|
char buf[8];
|
||||||
|
|
||||||
|
buf[idx++] = addr & 0xFF;
|
||||||
|
if (sensor_addr_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 1);
|
||||||
|
buf[idx++] = addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_REG_WIDTH error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
buf[idx++] = data;
|
||||||
|
if (sensor_data_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 1);
|
||||||
|
buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("hi_i2c write faild!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = write(g_fd, buf, idx);
|
||||||
|
if(ret < 0)
|
||||||
|
{
|
||||||
|
printf("I2C_WRITE error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void delay_ms(int ms) {
|
||||||
|
usleep(ms*1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_prog(int* rom)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
while (1) {
|
||||||
|
int lookup = rom[i++];
|
||||||
|
int addr = (lookup >> 16) & 0xFFFF;
|
||||||
|
int data = lookup & 0xFFFF;
|
||||||
|
if (addr == 0xFFFE) {
|
||||||
|
delay_ms(data);
|
||||||
|
} else if (addr == 0xFFFF) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
sensor_write_register(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_linear_720p30_init();
|
||||||
|
|
||||||
|
#define SENSOR_720P_30FPS_MODE (1)
|
||||||
|
|
||||||
|
void sensor_init()
|
||||||
|
{
|
||||||
|
sensor_i2c_init();
|
||||||
|
|
||||||
|
/* When sensor first init, config all registers */
|
||||||
|
if (HI_FALSE == bSensorInit)
|
||||||
|
{
|
||||||
|
if(SENSOR_720P_30FPS_MODE == gu8SensorImageMode)
|
||||||
|
{
|
||||||
|
sensor_linear_720p30_init();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* When sensor switch mode(linear<->WDR or resolution), config different registers(if possible) */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(SENSOR_720P_30FPS_MODE == gu8SensorImageMode)
|
||||||
|
{
|
||||||
|
sensor_linear_720p30_init();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_exit()
|
||||||
|
{
|
||||||
|
sensor_i2c_exit();
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 720P30 and 720P25 */
|
||||||
|
void sensor_linear_720p30_init()
|
||||||
|
{
|
||||||
|
/* #!/bin/sh
|
||||||
|
#MCLK=24MHz
|
||||||
|
# OV9752 720P 30FPS MIPI 480Mbps 2 lane Test ADC12bits*/
|
||||||
|
sensor_write_register (0x0103, 0x01);
|
||||||
|
sensor_write_register (0x0100, 0x00);
|
||||||
|
sensor_write_register (0x0300, 0x04);
|
||||||
|
sensor_write_register (0x0302, 0x78); //#;64
|
||||||
|
sensor_write_register (0x0303, 0x03); //#;00
|
||||||
|
sensor_write_register (0x0304, 0x03);
|
||||||
|
sensor_write_register (0x0305, 0x01);
|
||||||
|
sensor_write_register (0x0306, 0x01);
|
||||||
|
sensor_write_register (0x030a, 0x00);
|
||||||
|
sensor_write_register (0x030b, 0x00);
|
||||||
|
sensor_write_register (0x030d, 0x1e);
|
||||||
|
sensor_write_register (0x030e, 0x01);
|
||||||
|
sensor_write_register (0x030f, 0x04);
|
||||||
|
sensor_write_register (0x0312, 0x01);
|
||||||
|
sensor_write_register (0x031e, 0x04);
|
||||||
|
sensor_write_register (0x3000, 0x00);
|
||||||
|
sensor_write_register (0x3001, 0x00);
|
||||||
|
sensor_write_register (0x3002, 0x21);
|
||||||
|
sensor_write_register (0x3005, 0xf0);
|
||||||
|
sensor_write_register (0x3011, 0x00);
|
||||||
|
sensor_write_register (0x3016, 0x53);
|
||||||
|
sensor_write_register (0x3018, 0x32);
|
||||||
|
sensor_write_register (0x301a, 0xf0);
|
||||||
|
sensor_write_register (0x301b, 0xf0);
|
||||||
|
sensor_write_register (0x301c, 0xf0);
|
||||||
|
sensor_write_register (0x301d, 0xf0);
|
||||||
|
sensor_write_register (0x301e, 0xf0);
|
||||||
|
sensor_write_register (0x3022, 0x01);
|
||||||
|
sensor_write_register (0x3031, 0x0a);
|
||||||
|
sensor_write_register (0x3032, 0x80);
|
||||||
|
sensor_write_register (0x303c, 0xff);
|
||||||
|
sensor_write_register (0x303e, 0xff);
|
||||||
|
sensor_write_register (0x3040, 0xf0);
|
||||||
|
sensor_write_register (0x3041, 0x00);
|
||||||
|
sensor_write_register (0x3042, 0xf0);
|
||||||
|
sensor_write_register (0x3104, 0x01);
|
||||||
|
sensor_write_register (0x3106, 0x15);
|
||||||
|
sensor_write_register (0x3107, 0x01);
|
||||||
|
sensor_write_register (0x3500, 0x00);
|
||||||
|
sensor_write_register (0x3501, 0x1d);
|
||||||
|
sensor_write_register (0x3502, 0x00);
|
||||||
|
sensor_write_register (0x3503, 0x78);//GAIN/SHUTTER delay config
|
||||||
|
sensor_write_register (0x3504, 0x03);
|
||||||
|
sensor_write_register (0x3505, 0x83);
|
||||||
|
sensor_write_register (0x3508, 0x02);
|
||||||
|
sensor_write_register (0x3509, 0x80);
|
||||||
|
sensor_write_register (0x3600, 0x65);
|
||||||
|
sensor_write_register (0x3601, 0x60);
|
||||||
|
sensor_write_register (0x3602, 0x22);
|
||||||
|
sensor_write_register (0x3610, 0xe8);
|
||||||
|
sensor_write_register (0x3611, 0x56);
|
||||||
|
sensor_write_register (0x3612, 0x18);
|
||||||
|
sensor_write_register (0x3613, 0x5a);
|
||||||
|
sensor_write_register (0x3614, 0x91);
|
||||||
|
sensor_write_register (0x3615, 0x79);
|
||||||
|
sensor_write_register (0x3617, 0x57);
|
||||||
|
sensor_write_register (0x3621, 0x90);
|
||||||
|
sensor_write_register (0x3622, 0x00);
|
||||||
|
sensor_write_register (0x3623, 0x00);
|
||||||
|
sensor_write_register (0x3633, 0x10);
|
||||||
|
sensor_write_register (0x3634, 0x10);
|
||||||
|
sensor_write_register (0x3635, 0x14);
|
||||||
|
sensor_write_register (0x3636, 0x13);
|
||||||
|
sensor_write_register (0x3650, 0x00);
|
||||||
|
sensor_write_register (0x3652, 0xff);
|
||||||
|
sensor_write_register (0x3654, 0x00);
|
||||||
|
sensor_write_register (0x3653, 0x34);
|
||||||
|
sensor_write_register (0x3655, 0x20);
|
||||||
|
sensor_write_register (0x3656, 0xff);
|
||||||
|
sensor_write_register (0x3657, 0xc4);
|
||||||
|
sensor_write_register (0x365a, 0xff);
|
||||||
|
sensor_write_register (0x365b, 0xff);
|
||||||
|
sensor_write_register (0x365e, 0xff);
|
||||||
|
sensor_write_register (0x365f, 0x00);
|
||||||
|
sensor_write_register (0x3668, 0x00);
|
||||||
|
sensor_write_register (0x366a, 0x07);
|
||||||
|
sensor_write_register (0x366d, 0x00);
|
||||||
|
sensor_write_register (0x366e, 0x10);
|
||||||
|
sensor_write_register (0x3702, 0x1d);
|
||||||
|
sensor_write_register (0x3703, 0x10);
|
||||||
|
sensor_write_register (0x3704, 0x14);
|
||||||
|
sensor_write_register (0x3705, 0x00);
|
||||||
|
sensor_write_register (0x3706, 0x27);
|
||||||
|
sensor_write_register (0x3709, 0x24);
|
||||||
|
sensor_write_register (0x370a, 0x00);
|
||||||
|
sensor_write_register (0x370b, 0x7d);
|
||||||
|
sensor_write_register (0x3714, 0x24);
|
||||||
|
sensor_write_register (0x371a, 0x5e);
|
||||||
|
sensor_write_register (0x3730, 0x82);
|
||||||
|
sensor_write_register (0x3733, 0x10);
|
||||||
|
sensor_write_register (0x373e, 0x18);
|
||||||
|
sensor_write_register (0x3755, 0x00);
|
||||||
|
sensor_write_register (0x3758, 0x00);
|
||||||
|
sensor_write_register (0x375b, 0x13);
|
||||||
|
sensor_write_register (0x3772, 0x23);
|
||||||
|
sensor_write_register (0x3773, 0x05);
|
||||||
|
sensor_write_register (0x3774, 0x16);
|
||||||
|
sensor_write_register (0x3775, 0x12);
|
||||||
|
sensor_write_register (0x3776, 0x08);
|
||||||
|
sensor_write_register (0x37a8, 0x38);
|
||||||
|
sensor_write_register (0x37b5, 0x36);
|
||||||
|
sensor_write_register (0x37c2, 0x04);
|
||||||
|
sensor_write_register (0x37c5, 0x00);
|
||||||
|
sensor_write_register (0x37c7, 0x30);
|
||||||
|
sensor_write_register (0x37c8, 0x00);
|
||||||
|
sensor_write_register (0x37d1, 0x13);
|
||||||
|
sensor_write_register (0x3800, 0x00);
|
||||||
|
sensor_write_register (0x3801, 0x00);
|
||||||
|
sensor_write_register (0x3802, 0x00);
|
||||||
|
sensor_write_register (0x3803, 0x04);
|
||||||
|
sensor_write_register (0x3804, 0x05);
|
||||||
|
sensor_write_register (0x3805, 0x0f);
|
||||||
|
sensor_write_register (0x3806, 0x02); //#;03
|
||||||
|
sensor_write_register (0x3807, 0xdc); //#;cb
|
||||||
|
sensor_write_register (0x3808, 0x05);
|
||||||
|
sensor_write_register (0x3809, 0x00);
|
||||||
|
sensor_write_register (0x380a, 0x02);
|
||||||
|
sensor_write_register (0x380b, 0xd0);
|
||||||
|
sensor_write_register (0x380c, 0x06); //#;03
|
||||||
|
sensor_write_register (0x380d, 0x53); //#;2a
|
||||||
|
sensor_write_register (0x380e, 0x03);
|
||||||
|
sensor_write_register (0x380f, 0xdc);
|
||||||
|
sensor_write_register (0x3810, 0x00);
|
||||||
|
sensor_write_register (0x3811, 0x08);
|
||||||
|
sensor_write_register (0x3812, 0x00);
|
||||||
|
sensor_write_register (0x3813, 0x04);
|
||||||
|
sensor_write_register (0x3814, 0x01);
|
||||||
|
sensor_write_register (0x3815, 0x01);
|
||||||
|
sensor_write_register (0x3816, 0x00);
|
||||||
|
sensor_write_register (0x3817, 0x00);
|
||||||
|
sensor_write_register (0x3818, 0x00);
|
||||||
|
sensor_write_register (0x3819, 0x00);
|
||||||
|
sensor_write_register (0x3820, 0x86);//flip V
|
||||||
|
sensor_write_register (0x3821, 0x46);//flip H
|
||||||
|
sensor_write_register (0x450b, 0x20);
|
||||||
|
sensor_write_register (0x3826, 0x00);
|
||||||
|
sensor_write_register (0x3827, 0x08);
|
||||||
|
sensor_write_register (0x382a, 0x01);
|
||||||
|
sensor_write_register (0x382b, 0x01);
|
||||||
|
sensor_write_register (0x3836, 0x02);
|
||||||
|
sensor_write_register (0x3838, 0x10);
|
||||||
|
sensor_write_register (0x3861, 0x00);
|
||||||
|
sensor_write_register (0x3862, 0x00);
|
||||||
|
sensor_write_register (0x3863, 0x02);
|
||||||
|
sensor_write_register (0x3b00, 0x00);
|
||||||
|
sensor_write_register (0x3c00, 0x89);
|
||||||
|
sensor_write_register (0x3c01, 0xab);
|
||||||
|
sensor_write_register (0x3c02, 0x01);
|
||||||
|
sensor_write_register (0x3c03, 0x00);
|
||||||
|
sensor_write_register (0x3c04, 0x00);
|
||||||
|
sensor_write_register (0x3c05, 0x03);
|
||||||
|
sensor_write_register (0x3c06, 0x00);
|
||||||
|
sensor_write_register (0x3c07, 0x05);
|
||||||
|
sensor_write_register (0x3c0c, 0x00);
|
||||||
|
sensor_write_register (0x3c0d, 0x00);
|
||||||
|
sensor_write_register (0x3c0e, 0x00);
|
||||||
|
sensor_write_register (0x3c0f, 0x00);
|
||||||
|
sensor_write_register (0x3c40, 0x00);
|
||||||
|
sensor_write_register (0x3c41, 0xa3);
|
||||||
|
sensor_write_register (0x3c43, 0x7d);
|
||||||
|
sensor_write_register (0x3c56, 0x80);
|
||||||
|
sensor_write_register (0x3c80, 0x08);
|
||||||
|
sensor_write_register (0x3c82, 0x01);
|
||||||
|
sensor_write_register (0x3c83, 0x61);
|
||||||
|
sensor_write_register (0x3d85, 0x17);
|
||||||
|
sensor_write_register (0x3f08, 0x08);
|
||||||
|
sensor_write_register (0x3f0a, 0x00);
|
||||||
|
sensor_write_register (0x3f0b, 0x30);
|
||||||
|
sensor_write_register (0x4000, 0xcd);
|
||||||
|
sensor_write_register (0x4003, 0x40);
|
||||||
|
sensor_write_register (0x4009, 0x0d);
|
||||||
|
sensor_write_register (0x4010, 0xf0);
|
||||||
|
sensor_write_register (0x4011, 0x70);
|
||||||
|
sensor_write_register (0x4017, 0x10);
|
||||||
|
sensor_write_register (0x4040, 0x00);
|
||||||
|
sensor_write_register (0x4041, 0x00);
|
||||||
|
sensor_write_register (0x4303, 0x00);
|
||||||
|
sensor_write_register (0x4307, 0x30);
|
||||||
|
sensor_write_register (0x4500, 0x30);
|
||||||
|
sensor_write_register (0x4502, 0x40);
|
||||||
|
sensor_write_register (0x4503, 0x06);
|
||||||
|
sensor_write_register (0x4508, 0xaa);
|
||||||
|
//sensor_write_register (0x450b, 0x20);
|
||||||
|
sensor_write_register (0x450c, 0x00);
|
||||||
|
sensor_write_register (0x4600, 0x00);
|
||||||
|
sensor_write_register (0x4601, 0x80);
|
||||||
|
sensor_write_register (0x4700, 0x04);
|
||||||
|
sensor_write_register (0x4704, 0x00);
|
||||||
|
sensor_write_register (0x4705, 0x04);
|
||||||
|
sensor_write_register (0x4837, 0x14);
|
||||||
|
sensor_write_register (0x484a, 0x3f);
|
||||||
|
sensor_write_register (0x5000, 0x10);
|
||||||
|
sensor_write_register (0x5001, 0x01);
|
||||||
|
sensor_write_register (0x5002, 0x28);
|
||||||
|
sensor_write_register (0x5004, 0x0c);
|
||||||
|
sensor_write_register (0x5006, 0x0c);
|
||||||
|
sensor_write_register (0x5007, 0xe0);
|
||||||
|
sensor_write_register (0x5008, 0x01);
|
||||||
|
sensor_write_register (0x5009, 0xb0);
|
||||||
|
sensor_write_register (0x502a, 0x18);
|
||||||
|
sensor_write_register (0x5901, 0x00);
|
||||||
|
sensor_write_register (0x5a01, 0x00);
|
||||||
|
sensor_write_register (0x5a03, 0x00);
|
||||||
|
sensor_write_register (0x5a04, 0x0c);
|
||||||
|
sensor_write_register (0x5a05, 0xe0);
|
||||||
|
sensor_write_register (0x5a06, 0x09);
|
||||||
|
sensor_write_register (0x5a07, 0xb0);
|
||||||
|
sensor_write_register (0x5a08, 0x06);
|
||||||
|
sensor_write_register (0x5e00, 0x00);
|
||||||
|
sensor_write_register (0x5e10, 0xfc);
|
||||||
|
|
||||||
|
sensor_write_register (0x300f, 0x00);
|
||||||
|
sensor_write_register (0x3733, 0x10);
|
||||||
|
sensor_write_register (0x3610, 0xe8);
|
||||||
|
sensor_write_register (0x3611, 0x56);
|
||||||
|
sensor_write_register (0x3635, 0x14);
|
||||||
|
sensor_write_register (0x3636, 0x13);
|
||||||
|
sensor_write_register (0x3620, 0x84);
|
||||||
|
sensor_write_register (0x3614, 0x96);
|
||||||
|
sensor_write_register (0x481f, 0x30);
|
||||||
|
sensor_write_register (0x3788, 0x00);
|
||||||
|
sensor_write_register (0x3789, 0x04);
|
||||||
|
sensor_write_register (0x378a, 0x01);
|
||||||
|
sensor_write_register (0x378b, 0x60);
|
||||||
|
sensor_write_register (0x3799, 0x27); //#;;12bits
|
||||||
|
sensor_write_register (0x300f, 0x00);
|
||||||
|
sensor_write_register (0x3602, 0x32);
|
||||||
|
sensor_write_register (0x3706, 0x48);
|
||||||
|
sensor_write_register (0x370b, 0xfa);
|
||||||
|
sensor_write_register (0x5000, 0x30);
|
||||||
|
sensor_write_register (0x502a, 0x14);
|
||||||
|
sensor_write_register (0x3031, 0x0c);
|
||||||
|
|
||||||
|
//sleep 1
|
||||||
|
|
||||||
|
//# ADC 12 Bits (MIPI); frame rate * 3/4
|
||||||
|
sensor_write_register (0x0100, 0x00);
|
||||||
|
sensor_write_register (0x300f, 0x00);
|
||||||
|
sensor_write_register (0x3602, 0x32);
|
||||||
|
sensor_write_register (0x3706, 0x48);
|
||||||
|
sensor_write_register (0x370b, 0xfa);
|
||||||
|
sensor_write_register (0x5000, 0x30);
|
||||||
|
sensor_write_register (0x502a, 0x14);
|
||||||
|
sensor_write_register (0x3031, 0x0c);
|
||||||
|
|
||||||
|
sensor_write_register (0x0100, 0x01);
|
||||||
|
|
||||||
|
bSensorInit = HI_TRUE;
|
||||||
|
printf("=========================================================\n");
|
||||||
|
printf("===panasonic ov9752 sensor 720P30fps(MIPI port) init success!=====\n");
|
||||||
|
printf("=========================================================\n");
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_I2C
|
||||||
|
else
|
||||||
|
HI_GPIO_I2C:=HI_GPIO_XXX
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
CFLAGS = -Wall -fPIC -D$(HI_FPGA) -D$(HI_GPIO_I2C)
|
||||||
|
CFLAGS += -O2
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(ISP_INI_CONFIG), y)
|
||||||
|
CFLAGS += -D INIFILE_CONFIG_MODE
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC) -I$(ISP_PATH)/iniparser
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C), y)
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c-ex
|
||||||
|
INC += -I$(EXT_PATH)/gpio-i2c
|
||||||
|
else
|
||||||
|
INC += -I$(EXT_PATH)/i2c
|
||||||
|
INC += -I$(EXT_PATH)/hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_mn34222.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_mn34222.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,307 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "hi_comm_video.h"
|
||||||
|
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
#include "gpioi2c_ex.h"
|
||||||
|
#else
|
||||||
|
#include "hi_i2c.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
const unsigned char sensor_i2c_addr = 0x6c; /* I2C Address of MN34222 */
|
||||||
|
const unsigned int sensor_addr_byte = 2;
|
||||||
|
const unsigned int sensor_data_byte = 1;
|
||||||
|
static int g_fd = -1;
|
||||||
|
|
||||||
|
extern WDR_MODE_E genSensorMode;
|
||||||
|
extern HI_U8 gu8SensorImageMode;
|
||||||
|
extern HI_BOOL bSensorInit;
|
||||||
|
|
||||||
|
int sensor_i2c_init(void)
|
||||||
|
{
|
||||||
|
if(g_fd >= 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/gpioi2c_ex", 0);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open gpioi2c_ex error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
g_fd = open("/dev/i2c-0", O_RDWR);
|
||||||
|
if(g_fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open /dev/i2c-0 error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, I2C_SLAVE_FORCE, sensor_i2c_addr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_DEV error!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_i2c_exit(void)
|
||||||
|
{
|
||||||
|
if (g_fd >= 0)
|
||||||
|
{
|
||||||
|
close(g_fd);
|
||||||
|
g_fd = -1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_read_register(int addr)
|
||||||
|
{
|
||||||
|
// TODO:
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int sensor_write_register(int addr, int data)
|
||||||
|
{
|
||||||
|
#ifdef HI_GPIO_I2C
|
||||||
|
i2c_data.dev_addr = sensor_i2c_addr;
|
||||||
|
i2c_data.reg_addr = addr;
|
||||||
|
i2c_data.addr_byte_num = sensor_addr_byte;
|
||||||
|
i2c_data.data = data;
|
||||||
|
i2c_data.data_byte_num = sensor_data_byte;
|
||||||
|
|
||||||
|
ret = ioctl(g_fd, GPIO_I2C_WRITE, &i2c_data);
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("GPIO-I2C write faild!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
int idx = 0;
|
||||||
|
int ret;
|
||||||
|
char buf[8];
|
||||||
|
|
||||||
|
buf[idx++] = addr & 0xFF;
|
||||||
|
if (sensor_addr_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 1);
|
||||||
|
buf[idx++] = addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_REG, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
printf("CMD_SET_REG_WIDTH error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
buf[idx++] = data;
|
||||||
|
if (sensor_data_byte == 2)
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 1);
|
||||||
|
buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret = ioctl(g_fd, I2C_16BIT_DATA, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printf("hi_i2c write faild!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = write(g_fd, buf, idx);
|
||||||
|
if(ret < 0)
|
||||||
|
{
|
||||||
|
printf("I2C_WRITE error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void delay_ms(int ms) {
|
||||||
|
usleep(ms*1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_prog(int* rom)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
while (1) {
|
||||||
|
int lookup = rom[i++];
|
||||||
|
int addr = (lookup >> 16) & 0xFFFF;
|
||||||
|
int data = lookup & 0xFFFF;
|
||||||
|
if (addr == 0xFFFE) {
|
||||||
|
delay_ms(data);
|
||||||
|
} else if (addr == 0xFFFF) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
sensor_write_register(addr, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_linear_1080p30_init();
|
||||||
|
|
||||||
|
void sensor_init()
|
||||||
|
{
|
||||||
|
sensor_i2c_init();
|
||||||
|
|
||||||
|
/* When sensor first init, config all registers */
|
||||||
|
if (HI_FALSE == bSensorInit)
|
||||||
|
{
|
||||||
|
|
||||||
|
sensor_linear_1080p30_init();
|
||||||
|
}
|
||||||
|
/* When sensor switch mode(linear<->WDR or resolution), config different registers(if possible) */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
sensor_linear_1080p30_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
void sensor_exit()
|
||||||
|
{
|
||||||
|
sensor_i2c_exit();
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1080P30 and 1080P25 */
|
||||||
|
void sensor_linear_1080p30_init()
|
||||||
|
{
|
||||||
|
/*# N340M_S12_P2_FHD_V1125_12b_445MHz_30fps_vM17e_150703_MCLK37_Mst_I2C_d.txt
|
||||||
|
# VCYCLE:1125 HCYCLE:1100 (@MCLK)*/
|
||||||
|
sensor_write_register (0x300E, 0x01);
|
||||||
|
sensor_write_register (0x300F, 0x00);
|
||||||
|
sensor_write_register (0x0305, 0x02);
|
||||||
|
sensor_write_register (0x0307, 0x24);
|
||||||
|
sensor_write_register (0x3000, 0x00);
|
||||||
|
sensor_write_register (0x3001, 0x03);
|
||||||
|
sensor_write_register (0x0112, 0x0C);
|
||||||
|
sensor_write_register (0x0113, 0x0C);
|
||||||
|
sensor_write_register (0x3004, 0x01);
|
||||||
|
sensor_write_register (0x3005, 0x64);
|
||||||
|
sensor_write_register (0x3008, 0xF1);
|
||||||
|
sensor_write_register (0x3009, 0x0E);//mipi:bit3=1 lvds:bit3=0
|
||||||
|
sensor_write_register (0x300B, 0x00);
|
||||||
|
sensor_write_register (0x3018, 0x43);
|
||||||
|
sensor_write_register (0x3019, 0x10);
|
||||||
|
sensor_write_register (0x301A, 0xB9);
|
||||||
|
sensor_write_register (0x3000, 0x00);
|
||||||
|
sensor_write_register (0x3001, 0x53);
|
||||||
|
sensor_write_register (0x300E, 0x00);
|
||||||
|
sensor_write_register (0x300F, 0x00);
|
||||||
|
sensor_write_register (0x0202, 0x04);
|
||||||
|
sensor_write_register (0x0203, 0x63);
|
||||||
|
sensor_write_register (0x3036, 0x00);
|
||||||
|
sensor_write_register (0x3039, 0x2E);
|
||||||
|
sensor_write_register (0x3058, 0x0F);
|
||||||
|
sensor_write_register (0x3059, 0xFF);
|
||||||
|
sensor_write_register (0x305B, 0x00);
|
||||||
|
sensor_write_register (0x3062, 0x10);
|
||||||
|
sensor_write_register (0x3063, 0x24);
|
||||||
|
sensor_write_register (0x306E, 0x0C);
|
||||||
|
sensor_write_register (0x306F, 0x00);
|
||||||
|
sensor_write_register (0x3074, 0x01);
|
||||||
|
sensor_write_register (0x3076, 0x40);
|
||||||
|
sensor_write_register (0x307C, 0x2C);
|
||||||
|
sensor_write_register (0x3085, 0x33);
|
||||||
|
sensor_write_register (0x3088, 0x0E);
|
||||||
|
sensor_write_register (0x3089, 0x00);
|
||||||
|
sensor_write_register (0x308B, 0x00);
|
||||||
|
sensor_write_register (0x308C, 0x06);
|
||||||
|
sensor_write_register (0x308D, 0x03);
|
||||||
|
sensor_write_register (0x308E, 0x03);
|
||||||
|
sensor_write_register (0x308F, 0x06);
|
||||||
|
sensor_write_register (0x3090, 0x04);
|
||||||
|
sensor_write_register (0x3094, 0x0B);
|
||||||
|
sensor_write_register (0x3095, 0x76);
|
||||||
|
sensor_write_register (0x3098, 0x00);
|
||||||
|
sensor_write_register (0x3099, 0x00);
|
||||||
|
sensor_write_register (0x309A, 0x01);
|
||||||
|
sensor_write_register (0x3104, 0x04);
|
||||||
|
sensor_write_register (0x3106, 0x00);
|
||||||
|
sensor_write_register (0x3107, 0xC0);
|
||||||
|
sensor_write_register (0x3141, 0x40);
|
||||||
|
sensor_write_register (0x3143, 0x02);
|
||||||
|
sensor_write_register (0x3144, 0x02);
|
||||||
|
sensor_write_register (0x3145, 0x02);
|
||||||
|
sensor_write_register (0x3146, 0x00);
|
||||||
|
sensor_write_register (0x3147, 0x02);
|
||||||
|
sensor_write_register (0x314A, 0x01);
|
||||||
|
sensor_write_register (0x314B, 0x02);
|
||||||
|
sensor_write_register (0x314C, 0x02);
|
||||||
|
sensor_write_register (0x314D, 0x02);
|
||||||
|
sensor_write_register (0x314E, 0x01);
|
||||||
|
sensor_write_register (0x314F, 0x02);
|
||||||
|
sensor_write_register (0x3150, 0x02);
|
||||||
|
sensor_write_register (0x3152, 0x04);
|
||||||
|
sensor_write_register (0x3153, 0xE3);
|
||||||
|
sensor_write_register (0x316F, 0xC6);
|
||||||
|
sensor_write_register (0x3175, 0x80);
|
||||||
|
sensor_write_register (0x318E, 0x20);
|
||||||
|
sensor_write_register (0x318F, 0x70);
|
||||||
|
sensor_write_register (0x3196, 0x08);
|
||||||
|
sensor_write_register (0x3211, 0x0C);
|
||||||
|
sensor_write_register (0x323A, 0x80);
|
||||||
|
sensor_write_register (0x323B, 0x91);
|
||||||
|
sensor_write_register (0x323D, 0x90);
|
||||||
|
sensor_write_register (0x3243, 0xD7);
|
||||||
|
sensor_write_register (0x3246, 0x03);
|
||||||
|
sensor_write_register (0x3247, 0x27);
|
||||||
|
sensor_write_register (0x3248, 0x03);
|
||||||
|
sensor_write_register (0x3249, 0x79);
|
||||||
|
sensor_write_register (0x324A, 0x30);
|
||||||
|
sensor_write_register (0x324B, 0x18);
|
||||||
|
sensor_write_register (0x324C, 0x02);
|
||||||
|
sensor_write_register (0x3253, 0xDE);
|
||||||
|
sensor_write_register (0x3258, 0x03);
|
||||||
|
sensor_write_register (0x3259, 0x17);
|
||||||
|
sensor_write_register (0x3272, 0x46);
|
||||||
|
sensor_write_register (0x3280, 0x30);
|
||||||
|
sensor_write_register (0x3288, 0x01);
|
||||||
|
sensor_write_register (0x330E, 0x05);
|
||||||
|
sensor_write_register (0x3310, 0x02);
|
||||||
|
sensor_write_register (0x3315, 0x1F);
|
||||||
|
sensor_write_register (0x332C, 0x02);
|
||||||
|
sensor_write_register (0x3339, 0x02);
|
||||||
|
sensor_write_register (0x3000, 0x00);
|
||||||
|
sensor_write_register (0x3001, 0xD3);
|
||||||
|
sensor_write_register (0x0100, 0x01);
|
||||||
|
sensor_write_register (0x0101, 0x00);
|
||||||
|
|
||||||
|
printf("===panasonic mn34222 sensor lvds 1ch2lane 1080P30fps linear mode init success!=====\n");
|
||||||
|
|
||||||
|
bSensorInit = HI_TRUE;
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
#
|
||||||
|
# sensor lib Makefile
|
||||||
|
#
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ISP_PATH := $(SDK_PATH)/mpp/component/isp
|
||||||
|
EXT_PATH := $(SDK_PATH)/mpp/$(EXTDRV)
|
||||||
|
3A_PATH := $(ISP_PATH)/3a
|
||||||
|
LIBPATH = $(ISP_PATH)/lib
|
||||||
|
OBJPATH = ./obj
|
||||||
|
|
||||||
|
ARFLAGS = rcv
|
||||||
|
ARFLAGS_SO = $(LIBS_LD_CFLAGS)
|
||||||
|
ARFLAGS_SO += -shared -fPIC -o
|
||||||
|
|
||||||
|
CFLAGS = -Wall
|
||||||
|
CFLAGS += -O2 -fPIC
|
||||||
|
CFLAGS += $(LIBS_CFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(HIGDB),HI_GDB)
|
||||||
|
CFLAGS += -g
|
||||||
|
endif
|
||||||
|
ifeq ($(CONFIG_JPEGEDCF), y)
|
||||||
|
CFLAGS += -D ENABLE_JPEGEDCF
|
||||||
|
endif
|
||||||
|
BUS_DIR := $(EXT_PATH)/ssp-sony/
|
||||||
|
|
||||||
|
ISP_INC := $(ISP_PATH)/include
|
||||||
|
3A_INC := $(3A_PATH)/include
|
||||||
|
INC := -I$(BUS_DIR) -I$(REL_INC) -I$(ISP_INC) -I$(3A_INC)
|
||||||
|
|
||||||
|
COMPILE = $(CC) $(CFLAGS) $(DFLAGS) -lm
|
||||||
|
|
||||||
|
$(OBJPATH)/%.o: ./%.c
|
||||||
|
@[ -e $(LIBPATH) ] || mkdir $(LIBPATH)
|
||||||
|
@[ -e $(OBJPATH) ] || mkdir $(OBJPATH)
|
||||||
|
@$(COMPILE) -o $@ -c $< $(INC)
|
||||||
|
|
||||||
|
SRCS = $(wildcard ./*.c)
|
||||||
|
OBJS = $(SRCS:%.c=%.o)
|
||||||
|
OBJS := $(OBJS:./%=obj/%)
|
||||||
|
|
||||||
|
TARGETLIB := $(LIBPATH)/libsns_imx122.a
|
||||||
|
TARGETLIB_SO := $(LIBPATH)/libsns_imx122.so
|
||||||
|
|
||||||
|
all:$(TARGETLIB)
|
||||||
|
$(TARGETLIB):$(OBJS)
|
||||||
|
@($(AR) $(ARFLAGS) $(TARGETLIB) $(OBJS))
|
||||||
|
@($(CC) $(ARFLAGS_SO) $(TARGETLIB_SO) $(OBJS))
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@$(RM) -rf $(TARGETLIB) $(OBJS)
|
||||||
|
@$(RM) -rf $(LIBPATH) $(OBJPATH)
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,27 @@
|
||||||
|
# $(ROOT)/mpp/Mafile
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
EXTDRV_KO=$(REL_KO)/extdrv
|
||||||
|
|
||||||
|
.PHONY:clean all rel
|
||||||
|
all:
|
||||||
|
@echo -e "\e[0;32;1m--Compiling 'extdrv'... Configs as follow:\e[0;36;1m"
|
||||||
|
@echo ---- CROSS=$(CROSS)
|
||||||
|
@echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), HIDBG=$(HIDBG)
|
||||||
|
@echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE)
|
||||||
|
@echo ---- LINUX_ROOT=$(LINUX_ROOT)
|
||||||
|
@echo -e "\e[0m"
|
||||||
|
@mkdir -p $(EXTDRV_KO)
|
||||||
|
@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; do\
|
||||||
|
{ cd `dirname $$x`; if [ $$? ]; then make || exit 1; cp *.ko $(EXTDRV_KO); cd ../; fi;}& done; wait
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; do\
|
||||||
|
{ cd `dirname $$x`; if [ $$? ]; then make clean; cd ../; fi;}& done; wait
|
||||||
|
@if [ -e $(EXTDRV_KO) ];then rm $(EXTDRV_KO) -fr; fi
|
||||||
|
@if [ -e $(REL_KO) ];then rmdir --ignore-fail-on-non-empty "$(REL_KO)"; fi
|
||||||
|
|
|
@ -0,0 +1,568 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/.adv7179.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -DHI_I2C -I/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/../hi_i2c -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -DHI_XXXX -DMODULE -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(adv7179)" -D"KBUILD_MODNAME=KBUILD_STR(adv_7179)" -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o := \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/slab.h \
|
||||||
|
$(wildcard include/config/slab/debug.h) \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/failslab.h) \
|
||||||
|
$(wildcard include/config/slub.h) \
|
||||||
|
$(wildcard include/config/slob.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/debug/slab.h) \
|
||||||
|
$(wildcard include/config/slab.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/slub_def.h \
|
||||||
|
$(wildcard include/config/slub/stats.h) \
|
||||||
|
$(wildcard include/config/slub/debug.h) \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/kmemleak.h \
|
||||||
|
$(wildcard include/config/debug/kmemleak.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/miscdevice.h \
|
||||||
|
include/linux/major.h \
|
||||||
|
include/linux/pm.h \
|
||||||
|
$(wildcard include/config/pm.h) \
|
||||||
|
$(wildcard include/config/pm/runtime.h) \
|
||||||
|
$(wildcard include/config/pm/clk.h) \
|
||||||
|
$(wildcard include/config/pm/generic/domains.h) \
|
||||||
|
include/linux/fcntl.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fcntl.h \
|
||||||
|
include/asm-generic/fcntl.h \
|
||||||
|
include/linux/delay.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/delay.h \
|
||||||
|
include/linux/proc_fs.h \
|
||||||
|
$(wildcard include/config/proc/fs.h) \
|
||||||
|
$(wildcard include/config/proc/devicetree.h) \
|
||||||
|
$(wildcard include/config/proc/kcore.h) \
|
||||||
|
include/linux/fs.h \
|
||||||
|
$(wildcard include/config/fs/posix/acl.h) \
|
||||||
|
$(wildcard include/config/security.h) \
|
||||||
|
$(wildcard include/config/quota.h) \
|
||||||
|
$(wildcard include/config/fsnotify.h) \
|
||||||
|
$(wildcard include/config/ima.h) \
|
||||||
|
$(wildcard include/config/epoll.h) \
|
||||||
|
$(wildcard include/config/debug/writecount.h) \
|
||||||
|
$(wildcard include/config/file/locking.h) \
|
||||||
|
$(wildcard include/config/auditsyscall.h) \
|
||||||
|
$(wildcard include/config/block.h) \
|
||||||
|
$(wildcard include/config/fs/xip.h) \
|
||||||
|
$(wildcard include/config/migration.h) \
|
||||||
|
include/linux/limits.h \
|
||||||
|
include/linux/ioctl.h \
|
||||||
|
arch/arm/include/generated/asm/ioctl.h \
|
||||||
|
include/asm-generic/ioctl.h \
|
||||||
|
include/linux/blk_types.h \
|
||||||
|
$(wildcard include/config/blk/dev/integrity.h) \
|
||||||
|
include/linux/kdev_t.h \
|
||||||
|
include/linux/dcache.h \
|
||||||
|
include/linux/rculist.h \
|
||||||
|
include/linux/rculist_bl.h \
|
||||||
|
include/linux/list_bl.h \
|
||||||
|
include/linux/bit_spinlock.h \
|
||||||
|
include/linux/path.h \
|
||||||
|
include/linux/radix-tree.h \
|
||||||
|
include/linux/prio_tree.h \
|
||||||
|
include/linux/pid.h \
|
||||||
|
include/linux/capability.h \
|
||||||
|
include/linux/semaphore.h \
|
||||||
|
include/linux/fiemap.h \
|
||||||
|
include/linux/shrinker.h \
|
||||||
|
include/linux/migrate_mode.h \
|
||||||
|
include/linux/quota.h \
|
||||||
|
$(wildcard include/config/quota/netlink/interface.h) \
|
||||||
|
include/linux/percpu_counter.h \
|
||||||
|
include/linux/dqblk_xfs.h \
|
||||||
|
include/linux/dqblk_v1.h \
|
||||||
|
include/linux/dqblk_v2.h \
|
||||||
|
include/linux/dqblk_qtree.h \
|
||||||
|
include/linux/nfs_fs_i.h \
|
||||||
|
include/linux/err.h \
|
||||||
|
include/linux/magic.h \
|
||||||
|
include/linux/poll.h \
|
||||||
|
arch/arm/include/generated/asm/poll.h \
|
||||||
|
include/asm-generic/poll.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/uaccess.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/unified.h \
|
||||||
|
$(wildcard include/config/arm/asm/unified.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irq.h \
|
||||||
|
$(wildcard include/config/sparse/irq.h) \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/irqs.h \
|
||||||
|
include/linux/ioport.h \
|
||||||
|
include/linux/interrupt.h \
|
||||||
|
$(wildcard include/config/generic/hardirqs.h) \
|
||||||
|
$(wildcard include/config/irq/forced/threading.h) \
|
||||||
|
$(wildcard include/config/generic/irq/probe.h) \
|
||||||
|
include/linux/irqreturn.h \
|
||||||
|
include/linux/irqnr.h \
|
||||||
|
include/linux/hardirq.h \
|
||||||
|
$(wildcard include/config/virt/cpu/accounting.h) \
|
||||||
|
$(wildcard include/config/irq/time/accounting.h) \
|
||||||
|
include/linux/ftrace_irq.h \
|
||||||
|
$(wildcard include/config/ftrace/nmi/enter.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hardirq.h \
|
||||||
|
include/linux/irq_cpustat.h \
|
||||||
|
include/linux/hrtimer.h \
|
||||||
|
$(wildcard include/config/high/res/timers.h) \
|
||||||
|
$(wildcard include/config/timerfd.h) \
|
||||||
|
include/linux/timerqueue.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/io.h \
|
||||||
|
$(wildcard include/config/need/mach/io/h.h) \
|
||||||
|
$(wildcard include/config/pcmcia/soc/common.h) \
|
||||||
|
$(wildcard include/config/pci.h) \
|
||||||
|
$(wildcard include/config/isa.h) \
|
||||||
|
$(wildcard include/config/pccard.h) \
|
||||||
|
include/asm-generic/pci_iomap.h \
|
||||||
|
$(wildcard include/config/no/generic/pci/ioport/map.h) \
|
||||||
|
$(wildcard include/config/generic/pci/iomap.h) \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/io.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/exec.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/switch_to.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_info.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_misc.h \
|
||||||
|
include/linux/i2c.h \
|
||||||
|
$(wildcard include/config/i2c.h) \
|
||||||
|
$(wildcard include/config/i2c/boardinfo.h) \
|
||||||
|
include/linux/mod_devicetable.h \
|
||||||
|
include/linux/device.h \
|
||||||
|
$(wildcard include/config/debug/devres.h) \
|
||||||
|
$(wildcard include/config/devtmpfs.h) \
|
||||||
|
$(wildcard include/config/sysfs/deprecated.h) \
|
||||||
|
include/linux/klist.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/device.h \
|
||||||
|
$(wildcard include/config/dmabounce.h) \
|
||||||
|
$(wildcard include/config/iommu/api.h) \
|
||||||
|
$(wildcard include/config/arch/omap.h) \
|
||||||
|
include/linux/pm_wakeup.h \
|
||||||
|
include/linux/sched.h \
|
||||||
|
$(wildcard include/config/sched/debug.h) \
|
||||||
|
$(wildcard include/config/no/hz.h) \
|
||||||
|
$(wildcard include/config/lockup/detector.h) \
|
||||||
|
$(wildcard include/config/detect/hung/task.h) \
|
||||||
|
$(wildcard include/config/core/dump/default/elf/headers.h) \
|
||||||
|
$(wildcard include/config/sched/autogroup.h) \
|
||||||
|
$(wildcard include/config/bsd/process/acct.h) \
|
||||||
|
$(wildcard include/config/taskstats.h) \
|
||||||
|
$(wildcard include/config/audit.h) \
|
||||||
|
$(wildcard include/config/cgroups.h) \
|
||||||
|
$(wildcard include/config/inotify/user.h) \
|
||||||
|
$(wildcard include/config/fanotify.h) \
|
||||||
|
$(wildcard include/config/posix/mqueue.h) \
|
||||||
|
$(wildcard include/config/keys.h) \
|
||||||
|
$(wildcard include/config/perf/events.h) \
|
||||||
|
$(wildcard include/config/schedstats.h) \
|
||||||
|
$(wildcard include/config/task/delay/acct.h) \
|
||||||
|
$(wildcard include/config/fair/group/sched.h) \
|
||||||
|
$(wildcard include/config/rt/group/sched.h) \
|
||||||
|
$(wildcard include/config/cgroup/sched.h) \
|
||||||
|
$(wildcard include/config/blk/dev/io/trace.h) \
|
||||||
|
$(wildcard include/config/rcu/boost.h) \
|
||||||
|
$(wildcard include/config/compat/brk.h) \
|
||||||
|
$(wildcard include/config/cc/stackprotector.h) \
|
||||||
|
$(wildcard include/config/sysvipc.h) \
|
||||||
|
$(wildcard include/config/rt/mutexes.h) \
|
||||||
|
$(wildcard include/config/task/xacct.h) \
|
||||||
|
$(wildcard include/config/cpusets.h) \
|
||||||
|
$(wildcard include/config/futex.h) \
|
||||||
|
$(wildcard include/config/fault/injection.h) \
|
||||||
|
$(wildcard include/config/latencytop.h) \
|
||||||
|
$(wildcard include/config/function/graph/tracer.h) \
|
||||||
|
$(wildcard include/config/have/unstable/sched/clock.h) \
|
||||||
|
$(wildcard include/config/cfs/bandwidth.h) \
|
||||||
|
$(wildcard include/config/stack/growsup.h) \
|
||||||
|
$(wildcard include/config/debug/stack/usage.h) \
|
||||||
|
$(wildcard include/config/mm/owner.h) \
|
||||||
|
include/linux/mm_types.h \
|
||||||
|
$(wildcard include/config/split/ptlock/cpus.h) \
|
||||||
|
$(wildcard include/config/have/cmpxchg/double.h) \
|
||||||
|
$(wildcard include/config/have/aligned/struct/page.h) \
|
||||||
|
$(wildcard include/config/want/page/debug/flags.h) \
|
||||||
|
$(wildcard include/config/aio.h) \
|
||||||
|
$(wildcard include/config/mmu/notifier.h) \
|
||||||
|
$(wildcard include/config/transparent/hugepage.h) \
|
||||||
|
include/linux/auxvec.h \
|
||||||
|
arch/arm/include/generated/asm/auxvec.h \
|
||||||
|
include/asm-generic/auxvec.h \
|
||||||
|
include/linux/page-debug-flags.h \
|
||||||
|
$(wildcard include/config/page/poisoning.h) \
|
||||||
|
$(wildcard include/config/page/guard.h) \
|
||||||
|
$(wildcard include/config/page/debug/something/else.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/mmu.h \
|
||||||
|
$(wildcard include/config/cpu/has/asid.h) \
|
||||||
|
arch/arm/include/generated/asm/cputime.h \
|
||||||
|
include/asm-generic/cputime.h \
|
||||||
|
include/linux/sem.h \
|
||||||
|
include/linux/ipc.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ipcbuf.h \
|
||||||
|
include/asm-generic/ipcbuf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/sembuf.h \
|
||||||
|
include/linux/signal.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/signal.h \
|
||||||
|
include/asm-generic/signal-defs.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/sigcontext.h \
|
||||||
|
arch/arm/include/generated/asm/siginfo.h \
|
||||||
|
include/asm-generic/siginfo.h \
|
||||||
|
include/linux/proportions.h \
|
||||||
|
include/linux/seccomp.h \
|
||||||
|
$(wildcard include/config/seccomp.h) \
|
||||||
|
include/linux/rtmutex.h \
|
||||||
|
$(wildcard include/config/debug/rt/mutexes.h) \
|
||||||
|
include/linux/plist.h \
|
||||||
|
$(wildcard include/config/debug/pi/list.h) \
|
||||||
|
include/linux/resource.h \
|
||||||
|
arch/arm/include/generated/asm/resource.h \
|
||||||
|
include/asm-generic/resource.h \
|
||||||
|
include/linux/task_io_accounting.h \
|
||||||
|
$(wildcard include/config/task/io/accounting.h) \
|
||||||
|
include/linux/latencytop.h \
|
||||||
|
include/linux/cred.h \
|
||||||
|
$(wildcard include/config/debug/credentials.h) \
|
||||||
|
$(wildcard include/config/user/ns.h) \
|
||||||
|
include/linux/key.h \
|
||||||
|
include/linux/selinux.h \
|
||||||
|
$(wildcard include/config/security/selinux.h) \
|
||||||
|
include/linux/llist.h \
|
||||||
|
$(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \
|
||||||
|
include/linux/aio.h \
|
||||||
|
include/linux/aio_abi.h \
|
||||||
|
include/linux/uio.h \
|
||||||
|
include/linux/of.h \
|
||||||
|
$(wildcard include/config/sparc.h) \
|
||||||
|
$(wildcard include/config/of/dynamic.h) \
|
||||||
|
$(wildcard include/config/of.h) \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o):
|
|
@ -0,0 +1 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.ko := arm-hisiv300-linux-ld -EL -r -T /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/scripts/module-common.lds --build-id -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.ko /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o
|
|
@ -0,0 +1,345 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/.adv_7179.mod.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -DHI_I2C -I/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/../hi_i2c -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -DHI_XXXX -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(adv_7179.mod)" -D"KBUILD_MODNAME=KBUILD_STR(adv_7179)" -DMODULE -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o := \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/vermagic.h \
|
||||||
|
include/generated/utsrelease.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.mod.o):
|
|
@ -0,0 +1 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.o := arm-hisiv300-linux-ld -EL -r -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o
|
|
@ -0,0 +1,2 @@
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.ko
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv7179.o
|
|
@ -0,0 +1,28 @@
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_GPIO_I2C),y)
|
||||||
|
EXTRA_CFLAGS += -DHI_GPIO_I2C
|
||||||
|
EXTRA_CFLAGS+=-I$(PWD)/../gpio-i2c
|
||||||
|
else
|
||||||
|
EXTRA_CFLAGS += -DHI_I2C
|
||||||
|
EXTRA_CFLAGS+=-I$(PWD)/../hi_i2c
|
||||||
|
endif
|
||||||
|
|
||||||
|
EXTRA_CFLAGS += -I$(REL_INC)
|
||||||
|
EXTRA_CFLAGS += $(DRV_CFLAGS)
|
||||||
|
EXTRA_CFLAGS += -D$(HI_FPGA)
|
||||||
|
|
||||||
|
obj-m := adv_7179.o
|
||||||
|
adv_7179-y += adv7179.o
|
||||||
|
|
||||||
|
default:
|
||||||
|
echo $(LINUX_ROOT)
|
||||||
|
make -C $(LINUX_ROOT) M=$(PWD) modules
|
||||||
|
|
||||||
|
clean:
|
||||||
|
# make -C $(LINUX_ROOT) M=$(PWD) clean
|
||||||
|
@make -C $(LINUX_ROOT) M=$(PWD) clean
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
1.Module parameter description
|
||||||
|
|
||||||
|
BT656 PAL:insmod adv_7179.ko norm_mode=0
|
||||||
|
BT656 NTSC:insmod adv_7179.ko norm_mode=1
|
||||||
|
|
||||||
|
BT656 PAL is defualt
|
|
@ -0,0 +1,612 @@
|
||||||
|
/* extdrv/peripheral/vda/adv7179.c
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Copyright (c) 2006 Hisilicon Co., Ltd.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* History:
|
||||||
|
* 17-Apr-2006 create this file
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <linux/string.h>
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/module.h>
|
||||||
|
// BEGIN: Modified by x00132463, 2010-8-20 15 : 57 : 28
|
||||||
|
//#include <linux/config.h>
|
||||||
|
//#include <linux/autoconf.h>
|
||||||
|
#include <linux/errno.h>
|
||||||
|
#include <linux/miscdevice.h>
|
||||||
|
#include <linux/fcntl.h>
|
||||||
|
#include <linux/kernel.h>
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/delay.h>
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/workqueue.h>
|
||||||
|
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/poll.h>
|
||||||
|
|
||||||
|
//#include <asm/hardware.h>
|
||||||
|
#include <asm/bitops.h>
|
||||||
|
#include <asm/uaccess.h>
|
||||||
|
#include <asm/irq.h>
|
||||||
|
|
||||||
|
#include <linux/moduleparam.h>
|
||||||
|
#include <linux/ioport.h>
|
||||||
|
#include <linux/interrupt.h>
|
||||||
|
//#include <linux/kcom.h>
|
||||||
|
//#include <kcom/gpio_i2c.h>
|
||||||
|
#include "adv7179.h"
|
||||||
|
|
||||||
|
#include <asm/io.h>
|
||||||
|
#include <asm/system.h>
|
||||||
|
#include <linux/miscdevice.h>
|
||||||
|
|
||||||
|
#include <linux/i2c.h>
|
||||||
|
|
||||||
|
//#define HI_GPIO_I2C
|
||||||
|
//#ifdef HI_GPIO_I2C
|
||||||
|
//#include "gpio_i2c.h"
|
||||||
|
//#else
|
||||||
|
//#include "hi_i2c.h"
|
||||||
|
//#endif
|
||||||
|
|
||||||
|
//#ifdef HI_GPIO_I2C
|
||||||
|
//#define hi_i2c_write(chip_addr,reg_addr,value) gpio_i2c_write(chip_addr,reg_addr,value)
|
||||||
|
//#define hi_i2c_read(chip_addr,reg_addr) gpio_i2c_read(chip_addr,reg_addr)
|
||||||
|
//#else
|
||||||
|
//#define hi_i2c_write(chip_addr,reg_addr,value) HI_I2C_Write(chip_addr,reg_addr,1,value,1)
|
||||||
|
//#define hi_i2c_read(chip_addr,reg_addr) HI_I2C_Read(chip_addr,reg_addr,1,1)
|
||||||
|
//#endif
|
||||||
|
#define I2C_ADV7179 0x56
|
||||||
|
static struct i2c_client* sil_client;
|
||||||
|
static struct i2c_board_info sil_i2c_info =
|
||||||
|
{
|
||||||
|
I2C_BOARD_INFO("sil9034", I2C_ADV7179),
|
||||||
|
};
|
||||||
|
|
||||||
|
unsigned char _hi_i2c_read_byte(unsigned char devaddress, unsigned char address)
|
||||||
|
{
|
||||||
|
unsigned char ret_data = 0xFF;
|
||||||
|
int ret;
|
||||||
|
struct i2c_client* client = sil_client;
|
||||||
|
unsigned char buf[2];
|
||||||
|
|
||||||
|
buf[0] = address;
|
||||||
|
ret = i2c_master_recv(client, buf, 1);
|
||||||
|
if (ret >= 0)
|
||||||
|
{
|
||||||
|
ret_data = buf[0];
|
||||||
|
}
|
||||||
|
return ret_data;
|
||||||
|
}
|
||||||
|
|
||||||
|
int _hi_i2c_write_byte(unsigned char devaddress, unsigned char address, unsigned char data)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
unsigned char buf[2];
|
||||||
|
struct i2c_client* client = sil_client;
|
||||||
|
|
||||||
|
buf[0] = address;
|
||||||
|
buf[1] = data;
|
||||||
|
|
||||||
|
ret = i2c_master_send(client, buf, 2);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
static int i2c_client_init(void)
|
||||||
|
{
|
||||||
|
struct i2c_adapter* i2c_adap;
|
||||||
|
|
||||||
|
// use i2c1
|
||||||
|
i2c_adap = i2c_get_adapter(1);
|
||||||
|
sil_client = i2c_new_device(i2c_adap, &sil_i2c_info);
|
||||||
|
|
||||||
|
i2c_put_adapter(i2c_adap);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void i2c_client_exit(void)
|
||||||
|
{
|
||||||
|
i2c_unregister_device(sil_client);
|
||||||
|
}
|
||||||
|
|
||||||
|
#define I2CReadByte _hi_i2c_read_byte
|
||||||
|
#define I2CWriteByte _hi_i2c_write_byte
|
||||||
|
|
||||||
|
/* adv7179 i2c slaver address micro-definition. */
|
||||||
|
|
||||||
|
#define ADV7179_NUM 1
|
||||||
|
#define ADV7179_REG_WIDTH 1
|
||||||
|
#define ADV7179_DAT_WIDTH 1
|
||||||
|
|
||||||
|
#define adv7179_NUM_REGISTERS 128
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Output filter: S-Video Composite */
|
||||||
|
|
||||||
|
#define MR050 0x11
|
||||||
|
#define MR060 0x14
|
||||||
|
|
||||||
|
|
||||||
|
#define TR0MODE_656 0x08
|
||||||
|
#define TR0MODE_601 0x0c
|
||||||
|
|
||||||
|
|
||||||
|
#define TR0RST 0x80
|
||||||
|
|
||||||
|
#define TR1CAPT 0x00
|
||||||
|
#define TR1PLAY 0x00
|
||||||
|
|
||||||
|
static int norm_mode = VIDEO_NORM_PAL;
|
||||||
|
|
||||||
|
|
||||||
|
static const unsigned char init_656_NTSC[] =
|
||||||
|
{
|
||||||
|
0x00, 0x00, /* MR0 */
|
||||||
|
0x01, 0x00, /* MR1 */
|
||||||
|
0x02, 0x00, /* MR2 RTC control: bits 2 and 1 */
|
||||||
|
0x03, 0x00, /* MR3 */
|
||||||
|
0x04, 0x15, /* MR4 */
|
||||||
|
0x05, 0x00, /* Reserved */
|
||||||
|
0x06, 0x00, /* Reserved */
|
||||||
|
0x07, TR0MODE_656, /* TM0 */
|
||||||
|
0x08, TR1CAPT, /* TM1 */
|
||||||
|
0x09, 0x16, /* Fsc0 */
|
||||||
|
0x0a, 0x7c, /* Fsc1 */
|
||||||
|
0x0b, 0xf0, /* Fsc2 */
|
||||||
|
0x0c, 0x21, /* Fsc3 */
|
||||||
|
0x0d, 0x00, /* Subcarrier Phase */
|
||||||
|
0x0e, 0x00, /* Closed Capt. Ext 0 */
|
||||||
|
0x0f, 0x00, /* Closed Capt. Ext 1 */
|
||||||
|
0x10, 0x00, /* Closed Capt. 0 */
|
||||||
|
0x11, 0x00, /* Closed Capt. 1 */
|
||||||
|
0x12, 0x00, /* Pedestal Ctl 0 */
|
||||||
|
0x13, 0x00, /* Pedestal Ctl 1 */
|
||||||
|
0x14, 0x00, /* Pedestal Ctl 2 */
|
||||||
|
0x15, 0x00, /* Pedestal Ctl 3 */
|
||||||
|
0x16, 0x00, /* CGMS_WSS_0 */
|
||||||
|
0x17, 0x00, /* CGMS_WSS_1 */
|
||||||
|
0x18, 0x00, /* CGMS_WSS_2 */
|
||||||
|
0x19, 0x00, /* Teletext Ctl */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
static const unsigned char init_656_PAL[] =
|
||||||
|
{
|
||||||
|
0x00, 0x05, /* MR0, PAL BDGHI */
|
||||||
|
0x01, 0x00, /* MR1 */
|
||||||
|
0x02, 0x00, /* MR2 RTC control: bits 2 and 1 */
|
||||||
|
0x03, 0x00, /* MR3 */
|
||||||
|
0x04, 0x15, /* MR4, RGB OUTPUT */
|
||||||
|
0x05, 0x00, /* Reserved */
|
||||||
|
0x06, 0x00, /* Reserved */
|
||||||
|
0x07, TR0MODE_656, /* TM0 */
|
||||||
|
0x08, TR1CAPT, /* TM1 */
|
||||||
|
0x09, 0xcb, /* Fsc0 */
|
||||||
|
0x0a, 0x8a, /* Fsc1 */
|
||||||
|
0x0b, 0x09, /* Fsc2 */
|
||||||
|
0x0c, 0x2a, /* Fsc3 */
|
||||||
|
0x0d, 0x00, /* Subcarrier Phase */
|
||||||
|
0x0e, 0x00, /* Closed Capt. Ext 0 */
|
||||||
|
0x0f, 0x00, /* Closed Capt. Ext 1 */
|
||||||
|
0x10, 0x00, /* Closed Capt. 0 */
|
||||||
|
0x11, 0x00, /* Closed Capt. 1 */
|
||||||
|
0x12, 0x00, /* Pedestal Ctl 0 */
|
||||||
|
0x13, 0x00, /* Pedestal Ctl 1 */
|
||||||
|
0x14, 0x00, /* Pedestal Ctl 2 */
|
||||||
|
0x15, 0x00, /* Pedestal Ctl 3 */
|
||||||
|
0x16, 0x00, /* CGMS_WSS_0 */
|
||||||
|
0x17, 0x00, /* CGMS_WSS_1 */
|
||||||
|
0x18, 0x00, /* CGMS_WSS_2 */
|
||||||
|
0x19, 0x00, /* Teletext Ctl */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static unsigned char init_601_NTSC[] =
|
||||||
|
{
|
||||||
|
0x00, 0x00, /* MR0 */
|
||||||
|
0x01, 0x00, /* MR1 */
|
||||||
|
0x02, 0x08, /* MR2 RTC control: bits 2 and 1 */
|
||||||
|
0x03, 0x04, /* MR3 */
|
||||||
|
0x04, 0x0C, /* MR4 */
|
||||||
|
0x05, 0x00, /* Reserved */
|
||||||
|
0x06, 0x00, /* Reserved */
|
||||||
|
0x07, TR0MODE_601, /* TM0 */
|
||||||
|
0x08, TR1CAPT, /* TM1 */
|
||||||
|
0x09, 0x16, /* Fsc0 */
|
||||||
|
0x0a, 0x7c, /* Fsc1 */
|
||||||
|
0x0b, 0xf0, /* Fsc2 */
|
||||||
|
0x0c, 0x21, /* Fsc3 */
|
||||||
|
0x0d, 0x00, /* Subcarrier Phase */
|
||||||
|
0x0e, 0x00, /* Closed Capt. Ext 0 */
|
||||||
|
0x0f, 0x00, /* Closed Capt. Ext 1 */
|
||||||
|
0x10, 0x00, /* Closed Capt. 0 */
|
||||||
|
0x11, 0x00, /* Closed Capt. 1 */
|
||||||
|
0x12, 0x00, /* Pedestal Ctl 0 */
|
||||||
|
0x13, 0x00, /* Pedestal Ctl 1 */
|
||||||
|
0x14, 0x00, /* Pedestal Ctl 2 */
|
||||||
|
0x15, 0x00, /* Pedestal Ctl 3 */
|
||||||
|
0x16, 0x00, /* CGMS_WSS_0 */
|
||||||
|
0x17, 0x00, /* CGMS_WSS_1 */
|
||||||
|
0x18, 0x00, /* CGMS_WSS_2 */
|
||||||
|
0x19, 0x00, /* Teletext Ctl */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static unsigned char init_601_PAL[] =
|
||||||
|
{
|
||||||
|
0x00, 0x05, /* MR0, PAL BDGHI */
|
||||||
|
0x01, 0x00, /* MR1 */
|
||||||
|
0x02, 0x08, /* MR2 RTC control: bits 2 and 1 */
|
||||||
|
0x03, 0x04, /* MR3 */
|
||||||
|
0x04, 0x1C, /* MR4, RGB OUTPUT */
|
||||||
|
0x05, 0x00, /* Reserved */
|
||||||
|
0x06, 0x00, /* Reserved */
|
||||||
|
0x07, TR0MODE_601, /* TM0 */
|
||||||
|
0x08, TR1CAPT, /* TM1 */
|
||||||
|
0x09, 0xcb, /* Fsc0 */
|
||||||
|
0x0a, 0x8a, /* Fsc1 */
|
||||||
|
0x0b, 0x09, /* Fsc2 */
|
||||||
|
0x0c, 0x2a, /* Fsc3 */
|
||||||
|
0x0d, 0x00, /* Subcarrier Phase */
|
||||||
|
0x0e, 0x00, /* Closed Capt. Ext 0 */
|
||||||
|
0x0f, 0x00, /* Closed Capt. Ext 1 */
|
||||||
|
0x10, 0x00, /* Closed Capt. 0 */
|
||||||
|
0x11, 0x00, /* Closed Capt. 1 */
|
||||||
|
0x12, 0x00, /* Pedestal Ctl 0 */
|
||||||
|
0x13, 0x00, /* Pedestal Ctl 1 */
|
||||||
|
0x14, 0x00, /* Pedestal Ctl 2 */
|
||||||
|
0x15, 0x00, /* Pedestal Ctl 3 */
|
||||||
|
0x16, 0x00, /* CGMS_WSS_0 */
|
||||||
|
0x17, 0x00, /* CGMS_WSS_1 */
|
||||||
|
0x18, 0x00, /* CGMS_WSS_2 */
|
||||||
|
0x19, 0x00, /* Teletext Ctl */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static int write_regs(unsigned char* pdevdata, unsigned long datalen)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
while (i < datalen)
|
||||||
|
{
|
||||||
|
I2CWriteByte(I2C_ADV7179, pdevdata[i], pdevdata[i + 1]);
|
||||||
|
i += 2;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* adv7179 initialise routine.
|
||||||
|
*
|
||||||
|
* @param vdaccir: adv7179's working mode:0--VIDEO_MODE_CCIR656; 1--VIDEO_MODE_CCIR601
|
||||||
|
* @param vdanorm: adv7179's norm mode;
|
||||||
|
* @param vdamaster: adv7179's slave or master mode;
|
||||||
|
*
|
||||||
|
* @return value:0--success; -1--error.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
int init_vda(int vdaccir, int vdanorm, int vdamaster)
|
||||||
|
{
|
||||||
|
|
||||||
|
if ((vdaccir == VIDEO_MODE_CCIR656) && (vdanorm == VIDEO_NORM_PAL))
|
||||||
|
{
|
||||||
|
if (write_regs((unsigned char*)&init_656_PAL, sizeof(init_656_PAL)) != 0)
|
||||||
|
{
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ((vdaccir == VIDEO_MODE_CCIR656) && (vdanorm == VIDEO_NORM_NTSC))
|
||||||
|
{
|
||||||
|
if (write_regs((unsigned char*)&init_656_NTSC, sizeof(init_656_NTSC)) != 0)
|
||||||
|
{
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ((vdaccir == VIDEO_MODE_CCIR601) && (vdanorm == VIDEO_NORM_PAL))
|
||||||
|
{
|
||||||
|
if (vdamaster == VIDEO_MODE_MASTER)
|
||||||
|
{
|
||||||
|
init_601_PAL[15] |= VIDEO_MODE_MASTER;
|
||||||
|
}
|
||||||
|
else if (vdamaster == VIDEO_MODE_SLAVER)
|
||||||
|
{
|
||||||
|
init_601_PAL[15] &= ~VIDEO_MODE_MASTER;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (write_regs((unsigned char*)&init_601_PAL, sizeof(init_601_PAL)) != 0)
|
||||||
|
{
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ((vdaccir == VIDEO_MODE_CCIR601) && (vdanorm == VIDEO_NORM_NTSC))
|
||||||
|
{
|
||||||
|
if (vdamaster == VIDEO_MODE_MASTER)
|
||||||
|
{
|
||||||
|
init_601_NTSC[15] |= VIDEO_MODE_MASTER;
|
||||||
|
}
|
||||||
|
if (vdamaster == VIDEO_MODE_SLAVER)
|
||||||
|
{
|
||||||
|
init_601_NTSC[15] &= ~VIDEO_MODE_MASTER;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (write_regs((unsigned char*)&init_601_NTSC, sizeof(init_601_NTSC)) != 0)
|
||||||
|
{
|
||||||
|
goto err_out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (vdaccir == VIDEO_MODE_CCIR656)
|
||||||
|
{
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_656 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_656);
|
||||||
|
}
|
||||||
|
else if (vdaccir == VIDEO_MODE_CCIR601)
|
||||||
|
{
|
||||||
|
if (vdamaster == VIDEO_MODE_MASTER)
|
||||||
|
{
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST | VIDEO_MODE_MASTER));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | VIDEO_MODE_MASTER));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_601);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return (0);
|
||||||
|
|
||||||
|
err_out:
|
||||||
|
printk("err_out\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* adv7179 open routine.
|
||||||
|
* do nothing.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
int adv7179_open(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* adv7179 close routine.
|
||||||
|
* do nothing.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
int adv7179_close(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* adv7179 ioctl routine.
|
||||||
|
* @param inode: pointer of the node;
|
||||||
|
* @param file: pointer of the file;
|
||||||
|
*
|
||||||
|
* @param cmd: command from the app:
|
||||||
|
* ENCODER_SET_NORM(2):set adv7179's work mode.
|
||||||
|
*
|
||||||
|
* @param arg:arg from app layer.
|
||||||
|
*
|
||||||
|
* @return value:0-- set success; -1-- set error.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
static long adv7179_ioctl(struct file* file, unsigned int cmd, unsigned long arg)
|
||||||
|
{
|
||||||
|
|
||||||
|
switch (cmd)
|
||||||
|
{
|
||||||
|
|
||||||
|
case ENCODER_SET_NORM:
|
||||||
|
{
|
||||||
|
int iarg = (int) arg;
|
||||||
|
|
||||||
|
|
||||||
|
switch (iarg)
|
||||||
|
{
|
||||||
|
case VIDEO_MODE_656_PAL:
|
||||||
|
write_regs((unsigned char*)&init_656_PAL, sizeof(init_656_PAL));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_656 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_656);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case VIDEO_MODE_656_NTSC:
|
||||||
|
write_regs((unsigned char*)&init_656_NTSC, sizeof(init_656_NTSC));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_656 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_656);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case VIDEO_MODE_601_PAL_MASTER:
|
||||||
|
init_601_PAL[15] |= VIDEO_MODE_MASTER;
|
||||||
|
write_regs((unsigned char*)&init_601_PAL, sizeof(init_601_PAL));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST | VIDEO_MODE_MASTER));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | VIDEO_MODE_MASTER));
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
case VIDEO_MODE_601_NTSC_MASTER:
|
||||||
|
init_601_NTSC[15] |= VIDEO_MODE_MASTER;
|
||||||
|
write_regs((unsigned char*)&init_601_NTSC, sizeof(init_601_NTSC));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST | VIDEO_MODE_MASTER));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | VIDEO_MODE_MASTER));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case VIDEO_MODE_601_PAL_SLAVER:
|
||||||
|
init_601_PAL[15] &= ~VIDEO_MODE_MASTER;
|
||||||
|
write_regs((unsigned char*)&init_601_PAL, sizeof(init_601_PAL));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_601);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case VIDEO_MODE_601_NTSC_SLAVER:
|
||||||
|
init_601_NTSC[15] &= ~VIDEO_MODE_MASTER;
|
||||||
|
write_regs((unsigned char*)&init_601_NTSC, sizeof(init_601_NTSC));
|
||||||
|
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, (TR0MODE_601 | TR0RST));
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, TR0MODE_601);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The various file operations we support.
|
||||||
|
*/
|
||||||
|
|
||||||
|
static struct file_operations adv7179_fops =
|
||||||
|
{
|
||||||
|
.owner = THIS_MODULE,
|
||||||
|
.unlocked_ioctl = adv7179_ioctl,
|
||||||
|
.open = adv7179_open ,
|
||||||
|
.release = adv7179_close
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct miscdevice adv7179_dev =
|
||||||
|
{
|
||||||
|
MISC_DYNAMIC_MINOR,
|
||||||
|
"adv7179",
|
||||||
|
&adv7179_fops,
|
||||||
|
};
|
||||||
|
|
||||||
|
static int adv7179_device_init(void)
|
||||||
|
{
|
||||||
|
unsigned char regvalue1, regvalue2;
|
||||||
|
regvalue1 = I2CReadByte(I2C_ADV7179, 0x07);
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, 0xa5);
|
||||||
|
regvalue2 = I2CReadByte(I2C_ADV7179, 0x07);
|
||||||
|
if (regvalue2 != 0xa5)
|
||||||
|
{
|
||||||
|
printk("read adv7179 register is %x\n", regvalue2);
|
||||||
|
printk("check adv7179 error.\n");
|
||||||
|
return -EFAULT;
|
||||||
|
}
|
||||||
|
I2CWriteByte(I2C_ADV7179, 0x07, regvalue1);
|
||||||
|
if (norm_mode == VIDEO_NORM_NTSC)
|
||||||
|
{
|
||||||
|
if (init_vda(VIDEO_MODE_CCIR656, VIDEO_NORM_NTSC, VIDEO_MODE_MASTER) == 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return -EFAULT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (init_vda(VIDEO_MODE_CCIR656, VIDEO_NORM_PAL, VIDEO_MODE_MASTER) == 0)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return -EFAULT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//DECLARE_KCOM_GPIO_I2C();
|
||||||
|
static int __init adv7179_init(void)
|
||||||
|
{
|
||||||
|
int ret = 0;
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
ret = KCOM_GPIO_I2C_INIT();
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printk("GPIO I2C module is not load.\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
i2c_client_init();
|
||||||
|
|
||||||
|
ret = misc_register(&adv7179_dev);
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
//KCOM_GPIO_I2C_EXIT();
|
||||||
|
printk("could not register adv7179 devices. \n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if (adv7179_device_init() < 0)
|
||||||
|
{
|
||||||
|
misc_deregister(&adv7179_dev);
|
||||||
|
//KCOM_GPIO_I2C_EXIT();
|
||||||
|
printk("adv7179 driver init fail for device init error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
printk("adv7179 driver init successful!\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void __exit adv7179_exit(void)
|
||||||
|
{
|
||||||
|
i2c_client_exit();
|
||||||
|
misc_deregister(&adv7179_dev);
|
||||||
|
//KCOM_GPIO_I2C_EXIT();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
module_init(adv7179_init);
|
||||||
|
module_exit(adv7179_exit);
|
||||||
|
|
||||||
|
#ifdef MODULE
|
||||||
|
//#include <linux/compile.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
module_param(norm_mode, int, S_IRUGO);
|
||||||
|
|
||||||
|
//MODULE_INFO(build, UTS_VERSION);
|
||||||
|
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
MODULE_AUTHOR("hisilicon");
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
/* extdrv/include/adv7179.h for Linux .
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* This file defines ov9653 micro-definitions for user.
|
||||||
|
*
|
||||||
|
* History:
|
||||||
|
* 03-Apr-2006 Start of Hi3510 Digital Camera GPIO control support
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _ADV7179_H
|
||||||
|
#define _ADV7179_H
|
||||||
|
|
||||||
|
|
||||||
|
#define ENCODER_SET_NORM 0x02
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define VIDEO_MODE_656_PAL 0
|
||||||
|
#define VIDEO_MODE_656_NTSC 1
|
||||||
|
#define VIDEO_MODE_601_PAL_MASTER 2
|
||||||
|
#define VIDEO_MODE_601_NTSC_MASTER 3
|
||||||
|
#define VIDEO_MODE_601_PAL_SLAVER 4
|
||||||
|
#define VIDEO_MODE_601_NTSC_SLAVER 5
|
||||||
|
|
||||||
|
#define VIDEO_MODE_CCIR656 0
|
||||||
|
#define VIDEO_MODE_CCIR601 1
|
||||||
|
#define VIDEO_MODE_LCD 2
|
||||||
|
|
||||||
|
#define VIDEO_NORM_PAL 0
|
||||||
|
#define VIDEO_NORM_NTSC 1
|
||||||
|
#define VIDEO_NORM_SUPPORT 2
|
||||||
|
#define VIDEO_MODE_SECAM 2
|
||||||
|
#define VIDEO_MODE_AUTO 3
|
||||||
|
|
||||||
|
#define VIDEO_MODE_MASTER 1
|
||||||
|
#define VIDEO_MODE_SLAVER 0
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,21 @@
|
||||||
|
#include <linux/module.h>
|
||||||
|
#include <linux/vermagic.h>
|
||||||
|
#include <linux/compiler.h>
|
||||||
|
|
||||||
|
MODULE_INFO(vermagic, VERMAGIC_STRING);
|
||||||
|
|
||||||
|
struct module __this_module
|
||||||
|
__attribute__((section(".gnu.linkonce.this_module"))) = {
|
||||||
|
.name = KBUILD_MODNAME,
|
||||||
|
.init = init_module,
|
||||||
|
#ifdef CONFIG_MODULE_UNLOAD
|
||||||
|
.exit = cleanup_module,
|
||||||
|
#endif
|
||||||
|
.arch = MODULE_ARCH_INIT,
|
||||||
|
};
|
||||||
|
|
||||||
|
static const char __module_depends[]
|
||||||
|
__used
|
||||||
|
__attribute__((section(".modinfo"))) =
|
||||||
|
"depends=";
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
#ifndef _LINUX_CONFIG_H
|
||||||
|
#define _LINUX_CONFIG_H
|
||||||
|
|
||||||
|
#include <linux/autoconf.h>
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1,14 @@
|
||||||
|
|
||||||
|
#ifndef _GPIO_I2C_H
|
||||||
|
#define _GPIO_I2C_H
|
||||||
|
|
||||||
|
|
||||||
|
#define GPIO_I2C_READ 0x01
|
||||||
|
#define GPIO_I2C_WRITE 0x02
|
||||||
|
|
||||||
|
unsigned char gpio_i2c_read(unsigned char devaddress, unsigned char address);
|
||||||
|
void gpio_i2c_write(unsigned char devaddress, unsigned char address, unsigned char value);
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
kernel//home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/adv7179/adv_7179.ko
|
|
@ -0,0 +1,26 @@
|
||||||
|
/*
|
||||||
|
* include/video_def.h for Linux .
|
||||||
|
*
|
||||||
|
* This file defines video_def micro-definitions for user.
|
||||||
|
* History:
|
||||||
|
* 10-April-2006 create this file
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _VIDEO_DEF_H
|
||||||
|
#define _VIDEO_DEF_H
|
||||||
|
|
||||||
|
#define VIDEO_MODE_CCIR656 0
|
||||||
|
#define VIDEO_MODE_CCIR601 1
|
||||||
|
#define VIDEO_MODE_LCD 2
|
||||||
|
|
||||||
|
#define VIDEO_NORM_PAL 0
|
||||||
|
#define VIDEO_NORM_NTSC 1
|
||||||
|
#define VIDEO_NORM_SUPPORT 2
|
||||||
|
#define VIDEO_MODE_SECAM 2
|
||||||
|
#define VIDEO_MODE_AUTO 3
|
||||||
|
|
||||||
|
#define VIDEO_MODE_MASTER 1
|
||||||
|
#define VIDEO_MODE_SLAVER 0
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.ko := arm-hisiv300-linux-ld -EL -r -T /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/scripts/module-common.lds --build-id -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.ko /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o
|
|
@ -0,0 +1,345 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/.piris.mod.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(piris.mod)" -D"KBUILD_MODNAME=KBUILD_STR(piris)" -DMODULE -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o := \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/vermagic.h \
|
||||||
|
include/generated/utsrelease.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.mod.o):
|
|
@ -0,0 +1,440 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/.piris.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -DMODULE -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(piris)" -D"KBUILD_MODNAME=KBUILD_STR(piris)" -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o := \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/miscdevice.h \
|
||||||
|
include/linux/major.h \
|
||||||
|
include/linux/pm.h \
|
||||||
|
$(wildcard include/config/pm.h) \
|
||||||
|
$(wildcard include/config/pm/runtime.h) \
|
||||||
|
$(wildcard include/config/pm/clk.h) \
|
||||||
|
$(wildcard include/config/pm/generic/domains.h) \
|
||||||
|
include/linux/fcntl.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fcntl.h \
|
||||||
|
include/asm-generic/fcntl.h \
|
||||||
|
include/linux/delay.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/delay.h \
|
||||||
|
include/linux/proc_fs.h \
|
||||||
|
$(wildcard include/config/proc/fs.h) \
|
||||||
|
$(wildcard include/config/proc/devicetree.h) \
|
||||||
|
$(wildcard include/config/proc/kcore.h) \
|
||||||
|
include/linux/slab.h \
|
||||||
|
$(wildcard include/config/slab/debug.h) \
|
||||||
|
$(wildcard include/config/failslab.h) \
|
||||||
|
$(wildcard include/config/slub.h) \
|
||||||
|
$(wildcard include/config/slob.h) \
|
||||||
|
$(wildcard include/config/debug/slab.h) \
|
||||||
|
$(wildcard include/config/slab.h) \
|
||||||
|
include/linux/slub_def.h \
|
||||||
|
$(wildcard include/config/slub/stats.h) \
|
||||||
|
$(wildcard include/config/slub/debug.h) \
|
||||||
|
include/linux/kmemleak.h \
|
||||||
|
$(wildcard include/config/debug/kmemleak.h) \
|
||||||
|
include/linux/fs.h \
|
||||||
|
$(wildcard include/config/fs/posix/acl.h) \
|
||||||
|
$(wildcard include/config/security.h) \
|
||||||
|
$(wildcard include/config/quota.h) \
|
||||||
|
$(wildcard include/config/fsnotify.h) \
|
||||||
|
$(wildcard include/config/ima.h) \
|
||||||
|
$(wildcard include/config/epoll.h) \
|
||||||
|
$(wildcard include/config/debug/writecount.h) \
|
||||||
|
$(wildcard include/config/file/locking.h) \
|
||||||
|
$(wildcard include/config/auditsyscall.h) \
|
||||||
|
$(wildcard include/config/block.h) \
|
||||||
|
$(wildcard include/config/fs/xip.h) \
|
||||||
|
$(wildcard include/config/migration.h) \
|
||||||
|
include/linux/limits.h \
|
||||||
|
include/linux/ioctl.h \
|
||||||
|
arch/arm/include/generated/asm/ioctl.h \
|
||||||
|
include/asm-generic/ioctl.h \
|
||||||
|
include/linux/blk_types.h \
|
||||||
|
$(wildcard include/config/blk/dev/integrity.h) \
|
||||||
|
include/linux/kdev_t.h \
|
||||||
|
include/linux/dcache.h \
|
||||||
|
include/linux/rculist.h \
|
||||||
|
include/linux/rculist_bl.h \
|
||||||
|
include/linux/list_bl.h \
|
||||||
|
include/linux/bit_spinlock.h \
|
||||||
|
include/linux/path.h \
|
||||||
|
include/linux/radix-tree.h \
|
||||||
|
include/linux/prio_tree.h \
|
||||||
|
include/linux/pid.h \
|
||||||
|
include/linux/capability.h \
|
||||||
|
include/linux/semaphore.h \
|
||||||
|
include/linux/fiemap.h \
|
||||||
|
include/linux/shrinker.h \
|
||||||
|
include/linux/migrate_mode.h \
|
||||||
|
include/linux/quota.h \
|
||||||
|
$(wildcard include/config/quota/netlink/interface.h) \
|
||||||
|
include/linux/percpu_counter.h \
|
||||||
|
include/linux/dqblk_xfs.h \
|
||||||
|
include/linux/dqblk_v1.h \
|
||||||
|
include/linux/dqblk_v2.h \
|
||||||
|
include/linux/dqblk_qtree.h \
|
||||||
|
include/linux/nfs_fs_i.h \
|
||||||
|
include/linux/err.h \
|
||||||
|
include/linux/magic.h \
|
||||||
|
include/linux/hrtimer.h \
|
||||||
|
$(wildcard include/config/high/res/timers.h) \
|
||||||
|
$(wildcard include/config/timerfd.h) \
|
||||||
|
include/linux/timerqueue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/uaccess.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/unified.h \
|
||||||
|
$(wildcard include/config/arm/asm/unified.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/exec.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/switch_to.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_info.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_misc.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/io.h \
|
||||||
|
$(wildcard include/config/need/mach/io/h.h) \
|
||||||
|
$(wildcard include/config/pcmcia/soc/common.h) \
|
||||||
|
$(wildcard include/config/pci.h) \
|
||||||
|
$(wildcard include/config/isa.h) \
|
||||||
|
$(wildcard include/config/pccard.h) \
|
||||||
|
include/asm-generic/pci_iomap.h \
|
||||||
|
$(wildcard include/config/no/generic/pci/ioport/map.h) \
|
||||||
|
$(wildcard include/config/generic/pci/iomap.h) \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/io.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris_ext.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/release/hi3518e/include/hi_type.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o):
|
|
@ -0,0 +1,2 @@
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.ko
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/piris/piris.o
|
|
@ -0,0 +1,19 @@
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
obj-m := piris.o
|
||||||
|
hi_pwm-y += piris.o
|
||||||
|
|
||||||
|
EXTRA_CFLAGS += -I$(REL_INC)
|
||||||
|
EXTRA_CFLAGS += $(DRV_CFLAGS)
|
||||||
|
default:
|
||||||
|
$(CC) -g -Wall -o piris_test piris_test.c strfunc.c
|
||||||
|
@$(MAKE) -C $(LINUX_ROOT) M=$(PWD) modules
|
||||||
|
@rm -f *.o modules.* *.symvers *.mod.c
|
||||||
|
clean:
|
||||||
|
@make -C $(LINUX_ROOT) M=$(PWD) clean
|
||||||
|
@rm -f piris_test *.bak
|
||||||
|
|
|
@ -0,0 +1,419 @@
|
||||||
|
/* isp/piris.c
|
||||||
|
*
|
||||||
|
* Copyright (c) 2006 Hisilicon Co., Ltd.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program;
|
||||||
|
*
|
||||||
|
* History:
|
||||||
|
* 23-march-2011 create this file
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <linux/module.h>
|
||||||
|
#include <linux/errno.h>
|
||||||
|
#include <linux/miscdevice.h>
|
||||||
|
#include <linux/fcntl.h>
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/delay.h>
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/workqueue.h>
|
||||||
|
#include <linux/hrtimer.h>
|
||||||
|
|
||||||
|
#include <asm/uaccess.h>
|
||||||
|
#include <asm/system.h>
|
||||||
|
#include <asm/io.h>
|
||||||
|
|
||||||
|
#include "piris.h"
|
||||||
|
#include "piris_ext.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define PIRISI_ADRESS_BASE 0x20210000 // Piris use GPIO13
|
||||||
|
|
||||||
|
void __iomem* reg_pirisI_base_va = 0;
|
||||||
|
|
||||||
|
#define HI_IO_PIRISI_ADDRESS(x) (reg_pirisI_base_va + ((x)-(PIRISI_ADRESS_BASE)))
|
||||||
|
|
||||||
|
#define PIRIS_CFG_REG HI_IO_PIRISI_ADDRESS(PIRISI_ADRESS_BASE + 0x007C)
|
||||||
|
#define PIRIS_CTRL_REG HI_IO_PIRISI_ADDRESS(PIRISI_ADRESS_BASE + 0x0400)
|
||||||
|
|
||||||
|
#define PIRIS_WRITE_REG(Addr, Value) ((*(volatile unsigned int *)(Addr)) = (Value))
|
||||||
|
#define PIRIS_READ_REG(Addr) (*(volatile unsigned int *)(Addr))
|
||||||
|
|
||||||
|
|
||||||
|
#define MAX(a, b) (a > b? a : b)
|
||||||
|
#define MIN(a, b) (a < b? a : b)
|
||||||
|
#define MAX_MOTOR_PAHSE 4
|
||||||
|
#define MAX_STEPS 92
|
||||||
|
#define PIRIS_PPS 100
|
||||||
|
|
||||||
|
static const unsigned char motor_phase_tbl[MAX_MOTOR_PAHSE] = { 0x0, 0x1, 0x2, 0x3};
|
||||||
|
|
||||||
|
typedef struct hiPIRIS_DEV
|
||||||
|
{
|
||||||
|
int src_pos;
|
||||||
|
int dest_pos;
|
||||||
|
unsigned int pps;
|
||||||
|
int phase;
|
||||||
|
const unsigned char* phase_tbl;
|
||||||
|
struct semaphore sem;
|
||||||
|
struct timer_list timer;
|
||||||
|
} PIRIS_DEV;
|
||||||
|
|
||||||
|
static PIRIS_DEV* p_piris_dev;
|
||||||
|
|
||||||
|
DECLARE_COMPLETION(piris_comp);
|
||||||
|
|
||||||
|
|
||||||
|
int piris_gpio_update(int* pPirisPos)
|
||||||
|
{
|
||||||
|
p_piris_dev->dest_pos = *pPirisPos;
|
||||||
|
|
||||||
|
p_piris_dev->pps = PIRIS_PPS;
|
||||||
|
p_piris_dev->pps = MAX(MIN(p_piris_dev->pps, HZ), 1);
|
||||||
|
p_piris_dev->timer.expires = jiffies + HZ / p_piris_dev->pps;
|
||||||
|
|
||||||
|
/* whether piris timer already at the kerbel timer pending list */
|
||||||
|
if (p_piris_dev->timer.entry.next != NULL)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
add_timer(&p_piris_dev->timer);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* first go to the full open iris step, set the full open as origin */
|
||||||
|
int piris_origin_set(PIRIS_DATA_S* pstPirisData)
|
||||||
|
{
|
||||||
|
int piris_pos;
|
||||||
|
|
||||||
|
piris_pos = pstPirisData->CurPos;
|
||||||
|
|
||||||
|
piris_gpio_update(&piris_pos);
|
||||||
|
|
||||||
|
// wait for piris origin done
|
||||||
|
init_completion(&piris_comp);
|
||||||
|
wait_for_completion(&piris_comp);
|
||||||
|
|
||||||
|
if (pstPirisData->ZeroIsMax == 1)
|
||||||
|
{
|
||||||
|
p_piris_dev->src_pos = 0;
|
||||||
|
p_piris_dev->dest_pos = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
p_piris_dev->src_pos = pstPirisData->TotalStep - 1;
|
||||||
|
p_piris_dev->dest_pos = pstPirisData->TotalStep - 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* go to the full close iris step */
|
||||||
|
int piris_close_set(PIRIS_DATA_S* pstPirisData)
|
||||||
|
{
|
||||||
|
int piris_pos;
|
||||||
|
|
||||||
|
piris_pos = pstPirisData->CurPos;
|
||||||
|
|
||||||
|
piris_gpio_update(&piris_pos);
|
||||||
|
|
||||||
|
// wait for piris origin done
|
||||||
|
init_completion(&piris_comp);
|
||||||
|
wait_for_completion(&piris_comp);
|
||||||
|
|
||||||
|
if (pstPirisData->ZeroIsMax == 1)
|
||||||
|
{
|
||||||
|
p_piris_dev->src_pos = pstPirisData->TotalStep - 1;
|
||||||
|
p_piris_dev->dest_pos = pstPirisData->TotalStep - 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
p_piris_dev->src_pos = 0;
|
||||||
|
p_piris_dev->dest_pos = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* file operation */
|
||||||
|
|
||||||
|
int piris_open(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
file->private_data = p_piris_dev;
|
||||||
|
|
||||||
|
return 0 ;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int piris_close(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
static int PIRIS_DRV_Disable(void)
|
||||||
|
{
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CTRL_REG, 0x1F);
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CFG_REG, 0x10);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int PIRIS_DRV_Write(unsigned char bits)
|
||||||
|
{
|
||||||
|
switch (bits)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CTRL_REG, 0x1F);
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CFG_REG , 0x15);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CTRL_REG, 0x1F);
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CFG_REG , 0x16);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CTRL_REG, 0x1F);
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CFG_REG , 0x1A);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CTRL_REG, 0x1F);
|
||||||
|
PIRIS_WRITE_REG(PIRIS_CFG_REG , 0x19);
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static long piris_ioctl(struct file* file, unsigned int cmd, unsigned long arg)
|
||||||
|
{
|
||||||
|
int __user* pPirisPos;
|
||||||
|
PIRIS_DATA_S __user* argp;
|
||||||
|
PIRIS_STATUS_E __user* pPirisStatus;
|
||||||
|
PIRIS_DEV* pstPirisDev = (PIRIS_DEV*) file->private_data;
|
||||||
|
|
||||||
|
int err = 0;
|
||||||
|
|
||||||
|
if (_IOC_TYPE(cmd) != PIRIS_IOC_MAGIC)
|
||||||
|
{
|
||||||
|
return -ENOTTY;
|
||||||
|
}
|
||||||
|
if (_IOC_NR(cmd) > PIRIS_IOC_MAXNR)
|
||||||
|
{
|
||||||
|
return -ENOTTY;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_IOC_DIR(cmd) & _IOC_READ)
|
||||||
|
{
|
||||||
|
err = !access_ok(VERIFY_WRITE, (void __user*)arg, _IOC_SIZE(cmd));
|
||||||
|
}
|
||||||
|
else if (_IOC_DIR(cmd) & _IOC_WRITE)
|
||||||
|
{
|
||||||
|
err = !access_ok(VERIFY_READ, (void __user*)arg, _IOC_SIZE(cmd));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (err)
|
||||||
|
{
|
||||||
|
return -EFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
|
// lock pstPirisDev
|
||||||
|
if (down_interruptible(&pstPirisDev->sem))
|
||||||
|
{
|
||||||
|
return -ERESTARTSYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (cmd)
|
||||||
|
{
|
||||||
|
case PIRIS_SET_ACT_ARGS:
|
||||||
|
pPirisPos = (int __user*)arg;
|
||||||
|
piris_gpio_update(pPirisPos);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case PIRIS_SET_ORGIN:
|
||||||
|
argp = (PIRIS_DATA_S __user*)arg;
|
||||||
|
piris_origin_set(argp);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case PIRIS_SET_CLOSE:
|
||||||
|
argp = (PIRIS_DATA_S __user*)arg;
|
||||||
|
piris_close_set(argp);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case PIRIS_GET_STATUS:
|
||||||
|
pPirisStatus = (PIRIS_STATUS_E __user*)arg;
|
||||||
|
|
||||||
|
if (pstPirisDev->dest_pos != pstPirisDev->src_pos)
|
||||||
|
{
|
||||||
|
*pPirisStatus = PIRIS_BUSY;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pPirisStatus = PIRIS_IDLE;
|
||||||
|
//PIRIS_DRV_Disable();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
default: /* redundant, as cmd was checked against MAXNR */
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// unlock pstPirisDev
|
||||||
|
up(&pstPirisDev->sem);
|
||||||
|
|
||||||
|
return 0 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static struct file_operations piris_fops =
|
||||||
|
{
|
||||||
|
.owner = THIS_MODULE,
|
||||||
|
.unlocked_ioctl = piris_ioctl ,
|
||||||
|
.open = piris_open ,
|
||||||
|
.release = piris_close ,
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct miscdevice gstPirisDev =
|
||||||
|
{
|
||||||
|
.minor = MISC_DYNAMIC_MINOR,
|
||||||
|
.name = "piris" ,
|
||||||
|
.fops = &piris_fops,
|
||||||
|
};
|
||||||
|
|
||||||
|
void piris_timer_cb(unsigned long arg)
|
||||||
|
{
|
||||||
|
int sign = 1;
|
||||||
|
unsigned char bits;
|
||||||
|
|
||||||
|
PIRIS_DEV* pstPirisDev = (PIRIS_DEV*)arg;
|
||||||
|
|
||||||
|
if (pstPirisDev->src_pos == pstPirisDev->dest_pos)
|
||||||
|
{
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
sign = (pstPirisDev->dest_pos - pstPirisDev->src_pos < 0) ? -1 : 1;
|
||||||
|
pstPirisDev->src_pos += sign;
|
||||||
|
|
||||||
|
// close iris: 0->1->2->3->0; open iris: 3->2->1->0->3
|
||||||
|
pstPirisDev->phase = (pstPirisDev->phase + MAX_MOTOR_PAHSE + sign) % MAX_MOTOR_PAHSE;
|
||||||
|
bits = pstPirisDev->phase_tbl[pstPirisDev->phase];
|
||||||
|
|
||||||
|
PIRIS_DRV_Write(bits);
|
||||||
|
|
||||||
|
if (pstPirisDev->dest_pos == pstPirisDev->src_pos)
|
||||||
|
{
|
||||||
|
complete(&piris_comp);
|
||||||
|
}
|
||||||
|
|
||||||
|
pstPirisDev->timer.expires = jiffies + HZ / pstPirisDev->pps;
|
||||||
|
add_timer(&pstPirisDev->timer);
|
||||||
|
|
||||||
|
//printk("%s, pos :%d @ pps:%d\n", __FUNCTION__, pstPirisDev->src_pos, pstPirisDev->pps);
|
||||||
|
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int hi_piris_isp_register(void)
|
||||||
|
{
|
||||||
|
ISP_PIRIS_CALLBACK_S stPirisCb = {0};
|
||||||
|
|
||||||
|
stPirisCb.pfn_piris_gpio_update = (HI_S32 (*)(HI_S32))piris_gpio_update;
|
||||||
|
if (CKFN_ISP_RegisterPirisCallBack())
|
||||||
|
{
|
||||||
|
CALL_ISP_RegisterPirisCallBack(0, &stPirisCb);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printk("register piris_gpio_write_callback to isp failed, hi_piris init is failed!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* module init and exit */
|
||||||
|
static int __init piris_init(void)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
p_piris_dev = kmalloc(sizeof(PIRIS_DEV), GFP_KERNEL);
|
||||||
|
|
||||||
|
if (!p_piris_dev)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
memset(p_piris_dev, 0x0, sizeof(PIRIS_DEV));
|
||||||
|
|
||||||
|
sema_init(&p_piris_dev->sem, 1);
|
||||||
|
init_completion(&piris_comp);
|
||||||
|
|
||||||
|
// init timer
|
||||||
|
init_timer(&p_piris_dev->timer);
|
||||||
|
p_piris_dev->timer.function = piris_timer_cb;
|
||||||
|
p_piris_dev->timer.data = (unsigned long)p_piris_dev;
|
||||||
|
p_piris_dev->timer.expires = jiffies + HZ; /* one second */
|
||||||
|
|
||||||
|
p_piris_dev->phase_tbl = motor_phase_tbl;
|
||||||
|
|
||||||
|
reg_pirisI_base_va = ioremap_nocache(PIRISI_ADRESS_BASE, 0x10000);
|
||||||
|
ret = misc_register(&gstPirisDev);
|
||||||
|
|
||||||
|
hi_piris_isp_register();
|
||||||
|
|
||||||
|
if (ret != 0)
|
||||||
|
{
|
||||||
|
printk("register piris device failed with %#x!\n", ret);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void __exit piris_exit(void)
|
||||||
|
{
|
||||||
|
del_timer(&p_piris_dev->timer);
|
||||||
|
kfree(p_piris_dev);
|
||||||
|
|
||||||
|
misc_deregister(&gstPirisDev);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
module_init(piris_init);
|
||||||
|
module_exit(piris_exit);
|
||||||
|
|
||||||
|
MODULE_DESCRIPTION("piris driver");
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
MODULE_AUTHOR("hisilicon");
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
#ifndef __HI_PIRIS_H__
|
||||||
|
#define __HI_PIRIS_H__
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#include <linux/ioctl.h> /* needed for the _IOW etc stuff used later */
|
||||||
|
|
||||||
|
|
||||||
|
typedef enum hiPIRIS_STATUS_E
|
||||||
|
{
|
||||||
|
PIRIS_IDLE = 0,
|
||||||
|
PIRIS_BUSY,
|
||||||
|
|
||||||
|
PIRIS_BUTT,
|
||||||
|
} PIRIS_STATUS_E;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct hiPIRIS_DATA_S
|
||||||
|
{
|
||||||
|
unsigned char ZeroIsMax;
|
||||||
|
unsigned int TotalStep;
|
||||||
|
int CurPos;
|
||||||
|
} PIRIS_DATA_S;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define PIRIS_IOC_MAGIC 'p'
|
||||||
|
|
||||||
|
#define PIRIS_SET_ACT_ARGS _IOW(PIRIS_IOC_MAGIC, 1, int)
|
||||||
|
#define PIRIS_SET_ORGIN _IOW(PIRIS_IOC_MAGIC, 2, int)
|
||||||
|
#define PIRIS_SET_CLOSE _IOW(PIRIS_IOC_MAGIC, 3, int)
|
||||||
|
#define PIRIS_GET_STATUS _IOR(PIRIS_IOC_MAGIC, 5, int)
|
||||||
|
|
||||||
|
#define PIRIS_IOC_MAXNR 5
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* __HI_PIRIS_H__ */
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,51 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : piris_ext.h
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2015/01/28
|
||||||
|
Description :
|
||||||
|
History :
|
||||||
|
1.Date : 2015/01/28
|
||||||
|
Author : h00191408
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
#ifndef __PIRIS_EXT_H__
|
||||||
|
#define __PIRIS_EXT_H__
|
||||||
|
|
||||||
|
#include "hi_type.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* End of #ifdef __cplusplus */
|
||||||
|
|
||||||
|
typedef struct hiISP_PIRIS_CALLBACK_S
|
||||||
|
{
|
||||||
|
HI_S32 (*pfn_piris_gpio_update)(HI_S32 s32Pos);
|
||||||
|
} ISP_PIRIS_CALLBACK_S;
|
||||||
|
|
||||||
|
typedef struct hiISP_PIRIS_EXPORT_FUNC_S
|
||||||
|
{
|
||||||
|
HI_S32 (*pfnISPRegisterPirisCallBack) (HI_S32 IspDev, ISP_PIRIS_CALLBACK_S* pstPirisCb);
|
||||||
|
} ISP_PIRIS_EXPORT_FUNC_S;
|
||||||
|
|
||||||
|
extern ISP_PIRIS_EXPORT_FUNC_S g_stIspPirisExpFunc;
|
||||||
|
|
||||||
|
#define CKFN_ISP_RegisterPirisCallBack()\
|
||||||
|
(NULL != g_stIspPirisExpFunc.pfnISPRegisterPirisCallBack)
|
||||||
|
#define CALL_ISP_RegisterPirisCallBack(IspDev,pstPirisCb)\
|
||||||
|
g_stIspPirisExpFunc.pfnISPRegisterPirisCallBack(IspDev,pstPirisCb)
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* End of #ifdef __cplusplus */
|
||||||
|
|
||||||
|
#endif
|
Binary file not shown.
|
@ -0,0 +1,133 @@
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "strfunc.h"
|
||||||
|
#include "piris.h"
|
||||||
|
|
||||||
|
|
||||||
|
int main(int argc , char* argv[])
|
||||||
|
{
|
||||||
|
int fd = -1;
|
||||||
|
int ret = 0;
|
||||||
|
unsigned int piris_pos;
|
||||||
|
PIRIS_STATUS_E sta;
|
||||||
|
int step = 0;
|
||||||
|
int toclose = 0;
|
||||||
|
int i = 0;
|
||||||
|
unsigned int TestSample = 0;
|
||||||
|
|
||||||
|
if (argc < 2)
|
||||||
|
{
|
||||||
|
printf("usage: %s \n <cmd(a: action, o: origin, s: status, t: test IRIS sample)> \n <pos> . \n sample: %s a 92\n", argv[0], argv[0]);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd = open("/dev/piris", 0);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open piris error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (*argv[1] == 'a')
|
||||||
|
{
|
||||||
|
if (StrToNumber(argv[2], (unsigned int*)&piris_pos))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
ret = ioctl(fd, PIRIS_SET_ACT_ARGS, &piris_pos);
|
||||||
|
}
|
||||||
|
else if (*argv[1] == 'o')
|
||||||
|
{
|
||||||
|
ret = ioctl(fd, PIRIS_SET_ORGIN, &piris_pos);
|
||||||
|
}
|
||||||
|
else if (*argv[1] == 's')
|
||||||
|
{
|
||||||
|
ret = ioctl(fd, PIRIS_GET_STATUS, &sta);
|
||||||
|
|
||||||
|
if (sta == PIRIS_BUSY)
|
||||||
|
{
|
||||||
|
printf("piris running!!!\n");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("piris idle!!\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (*argv[1] == 't')
|
||||||
|
{
|
||||||
|
if (StrToNumber(argv[2], (unsigned int*)&TestSample))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
switch (TestSample)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
i = 0;
|
||||||
|
step = 0;
|
||||||
|
toclose = 0;
|
||||||
|
while (i < 10000)
|
||||||
|
{
|
||||||
|
ioctl(fd, PIRIS_GET_STATUS, &sta);
|
||||||
|
if (sta != PIRIS_BUSY)
|
||||||
|
{
|
||||||
|
if (toclose == 1)
|
||||||
|
{
|
||||||
|
step = 92;
|
||||||
|
toclose = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
step = 0;
|
||||||
|
toclose = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
piris_pos = step;
|
||||||
|
ioctl(fd, PIRIS_SET_ACT_ARGS, &piris_pos);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
step = 0;
|
||||||
|
toclose = 0;
|
||||||
|
while (step != 92)
|
||||||
|
{
|
||||||
|
ioctl(fd, PIRIS_GET_STATUS, &sta);
|
||||||
|
if (sta != PIRIS_BUSY)
|
||||||
|
{
|
||||||
|
if (toclose == 1)
|
||||||
|
{
|
||||||
|
step -= 19;
|
||||||
|
toclose = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
step += 20;
|
||||||
|
toclose = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
piris_pos = step;
|
||||||
|
ioctl(fd, PIRIS_SET_ACT_ARGS, &piris_pos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
|
@ -0,0 +1,174 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : strfunc.c
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2005/7/27
|
||||||
|
Last Modified :
|
||||||
|
Description : String functions
|
||||||
|
Function List :
|
||||||
|
History :
|
||||||
|
1.Date : 2005/7/27
|
||||||
|
Author : T41030
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include "strfunc.h"
|
||||||
|
|
||||||
|
static int atoul(char* str, unsigned int* pulValue);
|
||||||
|
static int atoulx(char* str, unsigned int* pulValue);
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : StrToNumber
|
||||||
|
Description : 10/16 进制字符串转换为无符号数字。
|
||||||
|
Input args : IN CHAR *str
|
||||||
|
10进制字符串, 不接受符号
|
||||||
|
16进制字符串, 不包括前缀0x. 如ABCDE
|
||||||
|
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
int StrToNumber(char* str , unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
/*判断是否16进制的字符串*/
|
||||||
|
if ( *str == '0' && (*(str + 1) == 'x' || *(str + 1) == 'X') )
|
||||||
|
{
|
||||||
|
if (*(str + 2) == '\0')
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return atoulx(str + 2, pulValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return atoul(str, pulValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : atoul
|
||||||
|
Description : 10进制字符串转换为无符号数字。
|
||||||
|
Input args : IN CHAR *str 10进制字符串
|
||||||
|
不接受符号
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
static int atoul(char* str, unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
unsigned int ulResult = 0;
|
||||||
|
|
||||||
|
while (*str)
|
||||||
|
{
|
||||||
|
unsigned char ch = toupper(*str);
|
||||||
|
|
||||||
|
if (isdigit(ch))
|
||||||
|
{
|
||||||
|
/*最大支持到0xFFFFFFFF(4294967295),
|
||||||
|
X * 10 + (*str)-48 <= 4294967295
|
||||||
|
所以, X = 429496729 */
|
||||||
|
if ((ulResult < 429496729) || ((ulResult == 429496729) && (*str < '6')))
|
||||||
|
{
|
||||||
|
ulResult = ulResult * 10 + (*str) - 48;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : atoulx
|
||||||
|
Description : 16进制字符串转换为无符号数字。输入的16进制字符串不包括前缀0x
|
||||||
|
Input args : IN CHAR *str 16进制字符串, 不包括前缀0x. 如ABCDE
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : toupper
|
||||||
|
isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
#define ASC2NUM(ch) (ch - '0')
|
||||||
|
#define HEXASC2NUM(ch) (ch - 'A' + 10)
|
||||||
|
|
||||||
|
int atoulx(char* str, unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
unsigned int ulResult = 0;
|
||||||
|
unsigned char ch;
|
||||||
|
|
||||||
|
while (*str)
|
||||||
|
{
|
||||||
|
ch = toupper(*str);
|
||||||
|
if (isdigit(ch) || ((ch >= 'A') && (ch <= 'F' )))
|
||||||
|
{
|
||||||
|
if (ulResult < 0x10000000)
|
||||||
|
{
|
||||||
|
ulResult = (ulResult << 4) + ((ch <= '9') ? (ASC2NUM(ch)) : (HEXASC2NUM(ch)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : strfunc.h
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2005/7/27
|
||||||
|
Last Modified :
|
||||||
|
Description : strfunc.c header file
|
||||||
|
Function List :
|
||||||
|
History :
|
||||||
|
1.Date : 2005/7/27
|
||||||
|
Author : T41030
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#ifndef __STRFUNC_H__
|
||||||
|
#define __STRFUNC_H__
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#define STRFMT_ADDR32 "%#010lX"
|
||||||
|
#define STRFMT_ADDR32_2 "0x%08lX"
|
||||||
|
|
||||||
|
extern int StrToNumber(char* str , unsigned int* ulValue);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* __STRFUNC_H__ */
|
|
@ -0,0 +1 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.ko := arm-hisiv300-linux-ld -EL -r -T /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/scripts/module-common.lds --build-id -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.ko /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o
|
|
@ -0,0 +1,345 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/.pwm.mod.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(pwm.mod)" -D"KBUILD_MODNAME=KBUILD_STR(pwm)" -DMODULE -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o := \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/vermagic.h \
|
||||||
|
include/generated/utsrelease.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.mod.o):
|
|
@ -0,0 +1,445 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/.pwm.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -DMODULE -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(pwm)" -D"KBUILD_MODNAME=KBUILD_STR(pwm)" -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o := \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/fcntl.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fcntl.h \
|
||||||
|
include/asm-generic/fcntl.h \
|
||||||
|
include/linux/delay.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/delay.h \
|
||||||
|
include/linux/proc_fs.h \
|
||||||
|
$(wildcard include/config/proc/fs.h) \
|
||||||
|
$(wildcard include/config/proc/devicetree.h) \
|
||||||
|
$(wildcard include/config/proc/kcore.h) \
|
||||||
|
include/linux/slab.h \
|
||||||
|
$(wildcard include/config/slab/debug.h) \
|
||||||
|
$(wildcard include/config/failslab.h) \
|
||||||
|
$(wildcard include/config/slub.h) \
|
||||||
|
$(wildcard include/config/slob.h) \
|
||||||
|
$(wildcard include/config/debug/slab.h) \
|
||||||
|
$(wildcard include/config/slab.h) \
|
||||||
|
include/linux/slub_def.h \
|
||||||
|
$(wildcard include/config/slub/stats.h) \
|
||||||
|
$(wildcard include/config/slub/debug.h) \
|
||||||
|
include/linux/kmemleak.h \
|
||||||
|
$(wildcard include/config/debug/kmemleak.h) \
|
||||||
|
include/linux/fs.h \
|
||||||
|
$(wildcard include/config/fs/posix/acl.h) \
|
||||||
|
$(wildcard include/config/security.h) \
|
||||||
|
$(wildcard include/config/quota.h) \
|
||||||
|
$(wildcard include/config/fsnotify.h) \
|
||||||
|
$(wildcard include/config/ima.h) \
|
||||||
|
$(wildcard include/config/epoll.h) \
|
||||||
|
$(wildcard include/config/debug/writecount.h) \
|
||||||
|
$(wildcard include/config/file/locking.h) \
|
||||||
|
$(wildcard include/config/auditsyscall.h) \
|
||||||
|
$(wildcard include/config/block.h) \
|
||||||
|
$(wildcard include/config/fs/xip.h) \
|
||||||
|
$(wildcard include/config/migration.h) \
|
||||||
|
include/linux/limits.h \
|
||||||
|
include/linux/ioctl.h \
|
||||||
|
arch/arm/include/generated/asm/ioctl.h \
|
||||||
|
include/asm-generic/ioctl.h \
|
||||||
|
include/linux/blk_types.h \
|
||||||
|
$(wildcard include/config/blk/dev/integrity.h) \
|
||||||
|
include/linux/kdev_t.h \
|
||||||
|
include/linux/dcache.h \
|
||||||
|
include/linux/rculist.h \
|
||||||
|
include/linux/rculist_bl.h \
|
||||||
|
include/linux/list_bl.h \
|
||||||
|
include/linux/bit_spinlock.h \
|
||||||
|
include/linux/path.h \
|
||||||
|
include/linux/radix-tree.h \
|
||||||
|
include/linux/prio_tree.h \
|
||||||
|
include/linux/pid.h \
|
||||||
|
include/linux/capability.h \
|
||||||
|
include/linux/semaphore.h \
|
||||||
|
include/linux/fiemap.h \
|
||||||
|
include/linux/shrinker.h \
|
||||||
|
include/linux/migrate_mode.h \
|
||||||
|
include/linux/quota.h \
|
||||||
|
$(wildcard include/config/quota/netlink/interface.h) \
|
||||||
|
include/linux/percpu_counter.h \
|
||||||
|
include/linux/dqblk_xfs.h \
|
||||||
|
include/linux/dqblk_v1.h \
|
||||||
|
include/linux/dqblk_v2.h \
|
||||||
|
include/linux/dqblk_qtree.h \
|
||||||
|
include/linux/nfs_fs_i.h \
|
||||||
|
include/linux/err.h \
|
||||||
|
include/linux/magic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/uaccess.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/unified.h \
|
||||||
|
$(wildcard include/config/arm/asm/unified.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/exec.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/switch_to.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_info.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/system_misc.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/io.h \
|
||||||
|
$(wildcard include/config/need/mach/io/h.h) \
|
||||||
|
$(wildcard include/config/pcmcia/soc/common.h) \
|
||||||
|
$(wildcard include/config/pci.h) \
|
||||||
|
$(wildcard include/config/isa.h) \
|
||||||
|
$(wildcard include/config/pccard.h) \
|
||||||
|
include/asm-generic/pci_iomap.h \
|
||||||
|
$(wildcard include/config/no/generic/pci/ioport/map.h) \
|
||||||
|
$(wildcard include/config/generic/pci/iomap.h) \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/io.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/release/hi3518e/include/himedia.h \
|
||||||
|
include/linux/major.h \
|
||||||
|
include/linux/device.h \
|
||||||
|
$(wildcard include/config/debug/devres.h) \
|
||||||
|
$(wildcard include/config/devtmpfs.h) \
|
||||||
|
$(wildcard include/config/sysfs/deprecated.h) \
|
||||||
|
include/linux/ioport.h \
|
||||||
|
include/linux/klist.h \
|
||||||
|
include/linux/pm.h \
|
||||||
|
$(wildcard include/config/pm.h) \
|
||||||
|
$(wildcard include/config/pm/runtime.h) \
|
||||||
|
$(wildcard include/config/pm/clk.h) \
|
||||||
|
$(wildcard include/config/pm/generic/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/device.h \
|
||||||
|
$(wildcard include/config/dmabounce.h) \
|
||||||
|
$(wildcard include/config/iommu/api.h) \
|
||||||
|
$(wildcard include/config/arch/omap.h) \
|
||||||
|
include/linux/pm_wakeup.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o):
|
|
@ -0,0 +1,2 @@
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.ko
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/pwm/pwm.o
|
|
@ -0,0 +1,20 @@
|
||||||
|
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
obj-m := pwm.o
|
||||||
|
hi_pwm-y += pwm.o
|
||||||
|
|
||||||
|
EXTRA_CFLAGS += -I$(REL_INC)
|
||||||
|
EXTRA_CFLAGS += $(DRV_CFLAGS)
|
||||||
|
default:
|
||||||
|
$(CC) -g -Wall -o pwm_write pwm_write.c strfunc.c
|
||||||
|
$(CC) -g -Wall -o pwm_test pwm_test.c strfunc.c
|
||||||
|
@$(MAKE) -C $(LINUX_ROOT) M=$(PWD) modules
|
||||||
|
@rm -f *.o modules.* *.symvers *.mod.c
|
||||||
|
clean:
|
||||||
|
@make -C $(LINUX_ROOT) M=$(PWD) clean
|
||||||
|
@rm -f pwm_write pwm_test *.bak
|
||||||
|
|
|
@ -0,0 +1,441 @@
|
||||||
|
/* extdrv/interface/pwm.c
|
||||||
|
*
|
||||||
|
* Copyright (c) 2006 Hisilicon Co., Ltd.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program;
|
||||||
|
*
|
||||||
|
* History:
|
||||||
|
* 23-march-2011 create this file
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <linux/module.h>
|
||||||
|
#include <linux/errno.h>
|
||||||
|
#ifndef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
#include <linux/miscdevice.h>
|
||||||
|
#endif
|
||||||
|
#include <linux/fcntl.h>
|
||||||
|
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/delay.h>
|
||||||
|
#include <linux/proc_fs.h>
|
||||||
|
#include <linux/workqueue.h>
|
||||||
|
|
||||||
|
#include <asm/uaccess.h>
|
||||||
|
#include <asm/system.h>
|
||||||
|
#include <asm/io.h>
|
||||||
|
|
||||||
|
#include "pwm.h"
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
#include "himedia.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#define PWMI_ADRESS_BASE 0x20130000
|
||||||
|
|
||||||
|
void __iomem* reg_pwmI_base_va = 0;
|
||||||
|
|
||||||
|
|
||||||
|
#define HI_IO_PWMI_ADDRESS(x) (reg_pwmI_base_va + ((x)-(PWMI_ADRESS_BASE)))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//PWMI
|
||||||
|
#define PWM0_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0000)
|
||||||
|
#define PWM0_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0004)
|
||||||
|
#define PWM0_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0008)
|
||||||
|
#define PWM0_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x000C)
|
||||||
|
#define PWM0_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0010)
|
||||||
|
#define PWM0_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0014)
|
||||||
|
#define PWM0_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0018)
|
||||||
|
|
||||||
|
#define PWM1_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0020)
|
||||||
|
#define PWM1_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0024)
|
||||||
|
#define PWM1_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0028)
|
||||||
|
#define PWM1_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x002C)
|
||||||
|
#define PWM1_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0030)
|
||||||
|
#define PWM1_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0034)
|
||||||
|
#define PWM1_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0038)
|
||||||
|
|
||||||
|
#define PWM2_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0040)
|
||||||
|
#define PWM2_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0044)
|
||||||
|
#define PWM2_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0048)
|
||||||
|
#define PWM2_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x004C)
|
||||||
|
#define PWM2_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0050)
|
||||||
|
#define PWM2_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0054)
|
||||||
|
#define PWM2_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0058)
|
||||||
|
|
||||||
|
#define PWM3_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0060)
|
||||||
|
#define PWM3_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0064)
|
||||||
|
#define PWM3_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0068)
|
||||||
|
#define PWM3_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x006C)
|
||||||
|
#define PWM3_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0070)
|
||||||
|
#define PWM3_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0074)
|
||||||
|
#define PWM3_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x0078)
|
||||||
|
|
||||||
|
#define PWM4_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1000)
|
||||||
|
#define PWM4_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1004)
|
||||||
|
#define PWM4_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1008)
|
||||||
|
#define PWM4_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x100C)
|
||||||
|
#define PWM4_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1010)
|
||||||
|
#define PWM4_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1014)
|
||||||
|
#define PWM4_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1018)
|
||||||
|
|
||||||
|
#define PWM5_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1020)
|
||||||
|
#define PWM5_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1024)
|
||||||
|
#define PWM5_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1028)
|
||||||
|
#define PWM5_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x102C)
|
||||||
|
#define PWM5_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1030)
|
||||||
|
#define PWM5_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1034)
|
||||||
|
#define PWM5_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1038)
|
||||||
|
|
||||||
|
#define PWM6_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1040)
|
||||||
|
#define PWM6_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1044)
|
||||||
|
#define PWM6_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1048)
|
||||||
|
#define PWM6_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x104C)
|
||||||
|
#define PWM6_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1050)
|
||||||
|
#define PWM6_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1054)
|
||||||
|
#define PWM6_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1058)
|
||||||
|
|
||||||
|
#define PWM7_CFG_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1060)
|
||||||
|
#define PWM7_CFG_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1064)
|
||||||
|
#define PWM7_CFG_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1068)
|
||||||
|
#define PWM7_CTRL_REG HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x106C)
|
||||||
|
#define PWM7_STATE_REG0 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1070)
|
||||||
|
#define PWM7_STATE_REG1 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1074)
|
||||||
|
#define PWM7_STATE_REG2 HI_IO_PWMI_ADDRESS(PWMI_ADRESS_BASE + 0x1078)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define PWM_WRITE_REG(Addr, Value) ((*(volatile unsigned int *)(Addr)) = (Value))
|
||||||
|
#define PWM_READ_REG(Addr) (*(volatile unsigned int *)(Addr))
|
||||||
|
|
||||||
|
//PWM
|
||||||
|
#define PWM_NUM_MAX 0x08
|
||||||
|
#define PWM_ENABLE 0x01
|
||||||
|
#define PWM_DISABLE 0x00
|
||||||
|
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
#define DEV_NAME "pwm"
|
||||||
|
static struct himedia_device s_stPwmDevice;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static int PWM_DRV_Disable(unsigned char pwm_num)
|
||||||
|
{
|
||||||
|
if (pwm_num >= PWM_NUM_MAX)
|
||||||
|
{
|
||||||
|
printk("The pwm number is big than the max value!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
switch (pwm_num)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
PWM_WRITE_REG(PWM0_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
PWM_WRITE_REG(PWM1_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
PWM_WRITE_REG(PWM2_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
PWM_WRITE_REG(PWM3_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
PWM_WRITE_REG(PWM4_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
PWM_WRITE_REG(PWM5_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
PWM_WRITE_REG(PWM6_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
PWM_WRITE_REG(PWM7_CTRL_REG, PWM_DISABLE);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int PWM_DRV_Write(unsigned char pwm_num, unsigned short duty, unsigned short period, unsigned char enable)
|
||||||
|
{
|
||||||
|
if (pwm_num >= PWM_NUM_MAX)
|
||||||
|
{
|
||||||
|
printk("The pwm number is big than the max value!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if (enable)
|
||||||
|
{
|
||||||
|
|
||||||
|
switch (pwm_num)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
PWM_WRITE_REG(PWM0_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM0_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI0 state %x\n",PWM_READ_REG(PWM0_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
PWM_WRITE_REG(PWM1_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM1_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM1_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM1_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM1_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI1 state %x\n",PWM_READ_REG(PWM1_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
PWM_WRITE_REG(PWM2_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM2_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM2_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM2_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM2_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI2 state %x\n",PWM_READ_REG(PWM2_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
PWM_WRITE_REG(PWM3_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM3_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM3_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM3_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM3_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI3 state %x\n",PWM_READ_REG(PWM3_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 4:
|
||||||
|
PWM_WRITE_REG(PWM4_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM4_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM4_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM4_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM4_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI4 state %x\n",PWM_READ_REG(PWM4_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 5:
|
||||||
|
PWM_WRITE_REG(PWM5_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM5_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM5_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM5_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM5_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI5 state %x\n",PWM_READ_REG(PWM5_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 6:
|
||||||
|
PWM_WRITE_REG(PWM6_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM6_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM6_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM6_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM6_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI6 state %x\n",PWM_READ_REG(PWM6_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 7:
|
||||||
|
PWM_WRITE_REG(PWM7_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM7_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM7_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM7_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM7_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMI7 state %x\n",PWM_READ_REG(PWM7_STATE_REG));
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
PWM_WRITE_REG(PWM0_CTRL_REG, PWM_DISABLE);
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG0, period);
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG1, duty);
|
||||||
|
PWM_WRITE_REG(PWM0_CFG_REG2, 10); //pwm output number
|
||||||
|
|
||||||
|
PWM_WRITE_REG(PWM0_CTRL_REG, (1 << 2 | PWM_ENABLE)); // keep the pwm always output;
|
||||||
|
//printk("The PWMII0 state %x\n",PWM_READ_REG(PWM0_STATE_REG));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
PWM_DRV_Disable(pwm_num);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* file operation */
|
||||||
|
|
||||||
|
int PWM_Open(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
return 0 ;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int PWM_Close(struct inode* inode, struct file* file)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static long PWM_Ioctl(struct file* file, unsigned int cmd, unsigned long arg)
|
||||||
|
{
|
||||||
|
PWM_DATA_S __user* argp = (PWM_DATA_S __user*)arg;
|
||||||
|
|
||||||
|
unsigned char PwmNum;
|
||||||
|
unsigned int Duty;
|
||||||
|
unsigned int Period;
|
||||||
|
unsigned char enable;
|
||||||
|
|
||||||
|
switch (cmd)
|
||||||
|
{
|
||||||
|
case PWM_CMD_WRITE:
|
||||||
|
{
|
||||||
|
PwmNum = argp->pwm_num;
|
||||||
|
Duty = argp->duty;
|
||||||
|
Period = argp->period;
|
||||||
|
enable = argp->enable;
|
||||||
|
|
||||||
|
PWM_DRV_Write(PwmNum, Duty, Period, enable);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case PWM_CMD_READ:
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
printk("invalid ioctl command!\n");
|
||||||
|
return -ENOIOCTLCMD;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
static int PWM_freeze(struct himedia_device* pdev)
|
||||||
|
{
|
||||||
|
printk(KERN_ALERT "%s %d\n", __FUNCTION__, __LINE__);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int PWM_restore(struct himedia_device* pdev)
|
||||||
|
{
|
||||||
|
printk(KERN_ALERT "%s %d\n", __FUNCTION__, __LINE__);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static struct file_operations pwm_fops =
|
||||||
|
{
|
||||||
|
.owner = THIS_MODULE,
|
||||||
|
.unlocked_ioctl = PWM_Ioctl ,
|
||||||
|
.open = PWM_Open ,
|
||||||
|
.release = PWM_Close ,
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
struct himedia_ops stPwmDrvOps =
|
||||||
|
{
|
||||||
|
.pm_freeze = PWM_freeze,
|
||||||
|
.pm_restore = PWM_restore
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
static struct miscdevice pwm_dev =
|
||||||
|
{
|
||||||
|
.minor = MISC_DYNAMIC_MINOR,
|
||||||
|
.name = "pwm" ,
|
||||||
|
.fops = &pwm_fops,
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* module init and exit */
|
||||||
|
|
||||||
|
static int __init pwm_init(void)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
reg_pwmI_base_va = (void __iomem*)IO_ADDRESS(PWMI_ADRESS_BASE);
|
||||||
|
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
snprintf(s_stPwmDevice.devfs_name, sizeof(s_stPwmDevice.devfs_name), DEV_NAME);
|
||||||
|
|
||||||
|
s_stPwmDevice.minor = HIMEDIA_DYNAMIC_MINOR;
|
||||||
|
s_stPwmDevice.fops = &pwm_fops;
|
||||||
|
s_stPwmDevice.drvops = &stPwmDrvOps;
|
||||||
|
s_stPwmDevice.owner = THIS_MODULE;
|
||||||
|
|
||||||
|
ret = himedia_register(&s_stPwmDevice);
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
printk("register i2c device failed with %#x!\n", ret);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
ret = misc_register(&pwm_dev);
|
||||||
|
if (ret != 0)
|
||||||
|
{
|
||||||
|
printk("register i2c device failed with %#x!\n", ret);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void __exit pwm_exit(void)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < PWM_NUM_MAX; i++)
|
||||||
|
{
|
||||||
|
PWM_DRV_Disable(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
reg_pwmI_base_va = NULL;
|
||||||
|
|
||||||
|
#ifdef CONFIG_HISI_SNAPSHOT_BOOT
|
||||||
|
himedia_unregister(&s_stPwmDevice);
|
||||||
|
#else
|
||||||
|
misc_deregister(&pwm_dev);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
module_init(pwm_init);
|
||||||
|
module_exit(pwm_exit);
|
||||||
|
|
||||||
|
MODULE_DESCRIPTION("PWM Driver");
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
MODULE_AUTHOR("Hisilicon");
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
#ifndef __HI_PWM_H__
|
||||||
|
#define __HI_PWM_H__
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct hiPWM_DATA_S
|
||||||
|
{
|
||||||
|
unsigned char pwm_num; //0:PWM0,1:PWM1,2:PWM2,3:PWMII0,4:PWMII1,5:PWMII2
|
||||||
|
unsigned int duty;
|
||||||
|
unsigned int period;
|
||||||
|
unsigned char enable;
|
||||||
|
|
||||||
|
} PWM_DATA_S;
|
||||||
|
|
||||||
|
#define PWM_CMD_WRITE 0x01
|
||||||
|
#define PWM_CMD_READ 0x03
|
||||||
|
|
||||||
|
|
||||||
|
int PWM_DRV_Write(unsigned char pwm_num, unsigned short duty, unsigned short period, unsigned char enable);
|
||||||
|
//unsigned int PWM_DRV_Read(unsigned int reg_addr);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* __HI_PWM_H__ */
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,90 @@
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "strfunc.h"
|
||||||
|
#include "pwm.h"
|
||||||
|
|
||||||
|
|
||||||
|
int main(int argc , char* argv[])
|
||||||
|
{
|
||||||
|
int fd = -1;
|
||||||
|
int ret = 0;
|
||||||
|
int i = 0;
|
||||||
|
unsigned int PwmDirector;
|
||||||
|
unsigned int Period;
|
||||||
|
PWM_DATA_S stPwmData;
|
||||||
|
|
||||||
|
if (argc < 3)
|
||||||
|
{
|
||||||
|
printf("usage: %s <Director> <Period> sample: %s 0x56 0x0 0x28\n", argv[0], argv[0]);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd = open("/dev/pwm", 0);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open pwm error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[1], &PwmDirector))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[2], &Period))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("PWM_Director:0x%4x; Period:0x%4x.\n", PwmDirector, Period);
|
||||||
|
stPwmData.pwm_num = 0;
|
||||||
|
stPwmData.period = 1000;
|
||||||
|
stPwmData.enable = 1;
|
||||||
|
|
||||||
|
if (PwmDirector == 0)
|
||||||
|
{
|
||||||
|
stPwmData.duty = Period;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
stPwmData.duty = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
//for(i = 0;i < Period;i++)
|
||||||
|
while (i < 10)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
if(PwmDirector == 0)
|
||||||
|
{
|
||||||
|
stPwmData.duty--;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
stPwmData.duty++;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
stPwmData.duty = 420;
|
||||||
|
ret = ioctl(fd, PWM_CMD_WRITE, &stPwmData);
|
||||||
|
printf("ret :%d\n", ret);
|
||||||
|
usleep(66000);
|
||||||
|
stPwmData.duty = 610;
|
||||||
|
ret = ioctl(fd, PWM_CMD_WRITE, &stPwmData);
|
||||||
|
printf("ret :%d\n", ret);
|
||||||
|
usleep(66000);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
//printf("device_addr:0x%2x; reg_addr:0x%2x; reg_value:0x%2x.\n", device_addr, reg_addr, reg_value);
|
||||||
|
close(fd);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
Binary file not shown.
|
@ -0,0 +1,79 @@
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "strfunc.h"
|
||||||
|
#include "pwm.h"
|
||||||
|
|
||||||
|
|
||||||
|
int main(int argc , char* argv[])
|
||||||
|
{
|
||||||
|
int fd = -1;
|
||||||
|
int ret = 0;
|
||||||
|
|
||||||
|
unsigned int PwmNum;
|
||||||
|
unsigned int Duty;
|
||||||
|
unsigned int Period;
|
||||||
|
unsigned int enable;
|
||||||
|
|
||||||
|
PWM_DATA_S stPwmData;
|
||||||
|
|
||||||
|
|
||||||
|
if (argc < 5)
|
||||||
|
{
|
||||||
|
printf("usage: %s <PwmNum> <Duty> <Period> <enable>. sample: %s 0x56 0x0 0x28\n", argv[0], argv[0]);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd = open("/dev/pwm", 0);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
printf("Open pwm error!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[1], &PwmNum))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[2], &Duty))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[3], &Period))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (StrToNumber(argv[4], &enable))
|
||||||
|
{
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("PWM_NUM:0x%4x; Duty:0x%4x; Period:0x%4x;enable:0x%4x.\n", PwmNum, Duty, Period, enable);
|
||||||
|
|
||||||
|
stPwmData.pwm_num = PwmNum;
|
||||||
|
stPwmData.duty = Duty;
|
||||||
|
stPwmData.period = Period;
|
||||||
|
stPwmData.enable = enable;
|
||||||
|
|
||||||
|
ret = ioctl(fd, PWM_CMD_WRITE, &stPwmData);
|
||||||
|
printf("ret :%d\n", ret);
|
||||||
|
|
||||||
|
//printf("device_addr:0x%2x; reg_addr:0x%2x; reg_value:0x%2x.\n", device_addr, reg_addr, reg_value);
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
|
@ -0,0 +1,172 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : strfunc.c
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2005/7/27
|
||||||
|
Last Modified :
|
||||||
|
Description : String functions
|
||||||
|
Function List :
|
||||||
|
History :
|
||||||
|
1.Date : 2005/7/27
|
||||||
|
Author : T41030
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
#include "strfunc.h"
|
||||||
|
|
||||||
|
static int atoul(char* str, unsigned int* pulValue);
|
||||||
|
static int atoulx(char* str, unsigned int* pulValue);
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : StrToNumber
|
||||||
|
Description : 10/16 进制字符串转换为无符号数字。
|
||||||
|
Input args : IN CHAR *str
|
||||||
|
10进制字符串, 不接受符号
|
||||||
|
16进制字符串, 不包括前缀0x. 如ABCDE
|
||||||
|
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
int StrToNumber(char* str , unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
/*判断是否16进制的字符串*/
|
||||||
|
if ( *str == '0' && (*(str + 1) == 'x' || *(str + 1) == 'X') )
|
||||||
|
{
|
||||||
|
if (*(str + 2) == '\0')
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return atoulx(str + 2, pulValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return atoul(str, pulValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : atoul
|
||||||
|
Description : 10进制字符串转换为无符号数字。
|
||||||
|
Input args : IN CHAR *str 10进制字符串
|
||||||
|
不接受符号
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
static int atoul(char* str, unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
unsigned int ulResult = 0;
|
||||||
|
|
||||||
|
while (*str)
|
||||||
|
{
|
||||||
|
if (isdigit((int)*str))
|
||||||
|
{
|
||||||
|
/*最大支持到0xFFFFFFFF(4294967295),
|
||||||
|
X * 10 + (*str)-48 <= 4294967295
|
||||||
|
所以, X = 429496729 */
|
||||||
|
if ((ulResult < 429496729) || ((ulResult == 429496729) && (*str < '6')))
|
||||||
|
{
|
||||||
|
ulResult = ulResult * 10 + (*str) - 48;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
Prototype : atoulx
|
||||||
|
Description : 16进制字符串转换为无符号数字。输入的16进制字符串不包括前缀0x
|
||||||
|
Input args : IN CHAR *str 16进制字符串, 不包括前缀0x. 如ABCDE
|
||||||
|
Output args : U32* pulValue, 转换后的数字
|
||||||
|
Return value : HI_RET HI_SUCCESS 转换成功
|
||||||
|
HI_FAILURE 转换失败
|
||||||
|
Calls : toupper
|
||||||
|
isdigit
|
||||||
|
|
||||||
|
Called By :
|
||||||
|
|
||||||
|
History :
|
||||||
|
1.Date : 2005年7月10日
|
||||||
|
Author : t41030
|
||||||
|
Modification : Created function
|
||||||
|
*****************************************************************************/
|
||||||
|
#define ASC2NUM(ch) (ch - '0')
|
||||||
|
#define HEXASC2NUM(ch) (ch - 'A' + 10)
|
||||||
|
|
||||||
|
int atoulx(char* str, unsigned int* pulValue)
|
||||||
|
{
|
||||||
|
unsigned int ulResult = 0;
|
||||||
|
unsigned char ch;
|
||||||
|
|
||||||
|
while (*str)
|
||||||
|
{
|
||||||
|
ch = toupper(*str);
|
||||||
|
if (isdigit(ch) || ((ch >= 'A') && (ch <= 'F' )))
|
||||||
|
{
|
||||||
|
if (ulResult < 0x10000000)
|
||||||
|
{
|
||||||
|
ulResult = (ulResult << 4) + ((ch <= '9') ? (ASC2NUM(ch)) : (HEXASC2NUM(ch)));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
str++;
|
||||||
|
}
|
||||||
|
|
||||||
|
*pulValue = ulResult;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : strfunc.h
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2005/7/27
|
||||||
|
Last Modified :
|
||||||
|
Description : strfunc.c header file
|
||||||
|
Function List :
|
||||||
|
History :
|
||||||
|
1.Date : 2005/7/27
|
||||||
|
Author : T41030
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
#ifndef __STRFUNC_H__
|
||||||
|
#define __STRFUNC_H__
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#define STRFMT_ADDR32 "%#010lX"
|
||||||
|
#define STRFMT_ADDR32_2 "0x%08lX"
|
||||||
|
|
||||||
|
extern int StrToNumber(char* str , unsigned int* ulValue);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* __STRFUNC_H__ */
|
|
@ -0,0 +1 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.ko := arm-hisiv300-linux-ld -EL -r -T /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/scripts/module-common.lds --build-id -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.ko /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o
|
|
@ -0,0 +1,345 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/.sensor_i2c.mod.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(sensor_i2c.mod)" -D"KBUILD_MODNAME=KBUILD_STR(sensor_i2c)" -DMODULE -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o := \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/vermagic.h \
|
||||||
|
include/generated/utsrelease.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.mod.o):
|
|
@ -0,0 +1,504 @@
|
||||||
|
cmd_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o := arm-hisiv300-linux-gcc -Wp,-MD,/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/.sensor_i2c.o.d -nostdinc -isystem /opt/hisi-linux/x86-arm/arm-hisiv300-linux/bin/../lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include -I/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include -Iarch/arm/include/generated -Iinclude -include /home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/include/linux/kconfig.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-hi3518ev200/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -marm -fno-dwarf2-cfi-asm -fno-aggressive-loop-optimizations -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -I/home/pub/temp/platform_ipc/mpp/release/hi3518e/include -DMODULE -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(sensor_i2c)" -D"KBUILD_MODNAME=KBUILD_STR(sensor_i2c)" -c -o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.c
|
||||||
|
|
||||||
|
source_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o := /home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.c
|
||||||
|
|
||||||
|
deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o := \
|
||||||
|
include/linux/init.h \
|
||||||
|
$(wildcard include/config/modules.h) \
|
||||||
|
$(wildcard include/config/hotplug.h) \
|
||||||
|
include/linux/compiler.h \
|
||||||
|
$(wildcard include/config/sparse/rcu/pointer.h) \
|
||||||
|
$(wildcard include/config/trace/branch/profiling.h) \
|
||||||
|
$(wildcard include/config/profile/all/branches.h) \
|
||||||
|
$(wildcard include/config/enable/must/check.h) \
|
||||||
|
$(wildcard include/config/enable/warn/deprecated.h) \
|
||||||
|
include/linux/compiler-gcc.h \
|
||||||
|
$(wildcard include/config/arch/supports/optimized/inlining.h) \
|
||||||
|
$(wildcard include/config/optimize/inlining.h) \
|
||||||
|
include/linux/compiler-gcc4.h \
|
||||||
|
include/linux/types.h \
|
||||||
|
$(wildcard include/config/uid16.h) \
|
||||||
|
$(wildcard include/config/lbdaf.h) \
|
||||||
|
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/phys/addr/t/64bit.h) \
|
||||||
|
$(wildcard include/config/64bit.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/types.h \
|
||||||
|
include/asm-generic/int-ll64.h \
|
||||||
|
arch/arm/include/generated/asm/bitsperlong.h \
|
||||||
|
include/asm-generic/bitsperlong.h \
|
||||||
|
include/linux/posix_types.h \
|
||||||
|
include/linux/stddef.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/posix_types.h \
|
||||||
|
include/asm-generic/posix_types.h \
|
||||||
|
include/linux/module.h \
|
||||||
|
$(wildcard include/config/sysfs.h) \
|
||||||
|
$(wildcard include/config/unused/symbols.h) \
|
||||||
|
$(wildcard include/config/generic/bug.h) \
|
||||||
|
$(wildcard include/config/kallsyms.h) \
|
||||||
|
$(wildcard include/config/smp.h) \
|
||||||
|
$(wildcard include/config/tracepoints.h) \
|
||||||
|
$(wildcard include/config/tracing.h) \
|
||||||
|
$(wildcard include/config/event/tracing.h) \
|
||||||
|
$(wildcard include/config/ftrace/mcount/record.h) \
|
||||||
|
$(wildcard include/config/module/unload.h) \
|
||||||
|
$(wildcard include/config/constructors.h) \
|
||||||
|
$(wildcard include/config/debug/set/module/ronx.h) \
|
||||||
|
include/linux/list.h \
|
||||||
|
$(wildcard include/config/debug/list.h) \
|
||||||
|
include/linux/poison.h \
|
||||||
|
$(wildcard include/config/illegal/pointer/value.h) \
|
||||||
|
include/linux/const.h \
|
||||||
|
include/linux/stat.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/stat.h \
|
||||||
|
include/linux/time.h \
|
||||||
|
$(wildcard include/config/arch/uses/gettimeoffset.h) \
|
||||||
|
include/linux/cache.h \
|
||||||
|
$(wildcard include/config/arch/has/cache/line/size.h) \
|
||||||
|
include/linux/kernel.h \
|
||||||
|
$(wildcard include/config/preempt/voluntary.h) \
|
||||||
|
$(wildcard include/config/debug/atomic/sleep.h) \
|
||||||
|
$(wildcard include/config/prove/locking.h) \
|
||||||
|
$(wildcard include/config/ring/buffer.h) \
|
||||||
|
$(wildcard include/config/numa.h) \
|
||||||
|
$(wildcard include/config/compaction.h) \
|
||||||
|
include/linux/sysinfo.h \
|
||||||
|
/opt/hisi-linux/x86-arm/arm-hisiv300-linux/lib/gcc/arm-hisiv300-linux-uclibcgnueabi/4.8.3/include/stdarg.h \
|
||||||
|
include/linux/linkage.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/linkage.h \
|
||||||
|
include/linux/bitops.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bitops.h \
|
||||||
|
include/linux/irqflags.h \
|
||||||
|
$(wildcard include/config/trace/irqflags.h) \
|
||||||
|
$(wildcard include/config/irqsoff/tracer.h) \
|
||||||
|
$(wildcard include/config/preempt/tracer.h) \
|
||||||
|
$(wildcard include/config/trace/irqflags/support.h) \
|
||||||
|
include/linux/typecheck.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/irqflags.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ptrace.h \
|
||||||
|
$(wildcard include/config/cpu/endian/be8.h) \
|
||||||
|
$(wildcard include/config/arm/thumb.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hwcap.h \
|
||||||
|
include/asm-generic/bitops/non-atomic.h \
|
||||||
|
include/asm-generic/bitops/fls64.h \
|
||||||
|
include/asm-generic/bitops/sched.h \
|
||||||
|
include/asm-generic/bitops/hweight.h \
|
||||||
|
include/asm-generic/bitops/arch_hweight.h \
|
||||||
|
include/asm-generic/bitops/const_hweight.h \
|
||||||
|
include/asm-generic/bitops/lock.h \
|
||||||
|
include/asm-generic/bitops/le.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/byteorder.h \
|
||||||
|
include/linux/byteorder/little_endian.h \
|
||||||
|
include/linux/swab.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/swab.h \
|
||||||
|
include/linux/byteorder/generic.h \
|
||||||
|
include/asm-generic/bitops/ext2-atomic-setbit.h \
|
||||||
|
include/linux/log2.h \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u32.h) \
|
||||||
|
$(wildcard include/config/arch/has/ilog2/u64.h) \
|
||||||
|
include/linux/printk.h \
|
||||||
|
$(wildcard include/config/printk.h) \
|
||||||
|
$(wildcard include/config/dynamic/debug.h) \
|
||||||
|
include/linux/dynamic_debug.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/div64.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/compiler.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/bug.h \
|
||||||
|
$(wildcard include/config/bug.h) \
|
||||||
|
$(wildcard include/config/thumb2/kernel.h) \
|
||||||
|
$(wildcard include/config/debug/bugverbose.h) \
|
||||||
|
$(wildcard include/config/arm/lpae.h) \
|
||||||
|
include/asm-generic/bug.h \
|
||||||
|
$(wildcard include/config/generic/bug/relative/pointers.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cache.h \
|
||||||
|
$(wildcard include/config/arm/l1/cache/shift.h) \
|
||||||
|
$(wildcard include/config/aeabi.h) \
|
||||||
|
include/linux/seqlock.h \
|
||||||
|
include/linux/spinlock.h \
|
||||||
|
$(wildcard include/config/debug/spinlock.h) \
|
||||||
|
$(wildcard include/config/generic/lockbreak.h) \
|
||||||
|
$(wildcard include/config/preempt.h) \
|
||||||
|
$(wildcard include/config/debug/lock/alloc.h) \
|
||||||
|
include/linux/preempt.h \
|
||||||
|
$(wildcard include/config/debug/preempt.h) \
|
||||||
|
$(wildcard include/config/preempt/count.h) \
|
||||||
|
$(wildcard include/config/preempt/notifiers.h) \
|
||||||
|
include/linux/thread_info.h \
|
||||||
|
$(wildcard include/config/compat.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/thread_info.h \
|
||||||
|
$(wildcard include/config/arm/thumbee.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/fpstate.h \
|
||||||
|
$(wildcard include/config/vfpv3.h) \
|
||||||
|
$(wildcard include/config/iwmmxt.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/domain.h \
|
||||||
|
$(wildcard include/config/io/36.h) \
|
||||||
|
$(wildcard include/config/cpu/use/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/barrier.h \
|
||||||
|
$(wildcard include/config/cpu/32v6k.h) \
|
||||||
|
$(wildcard include/config/cpu/xsc3.h) \
|
||||||
|
$(wildcard include/config/cpu/fa526.h) \
|
||||||
|
$(wildcard include/config/arch/has/barriers.h) \
|
||||||
|
$(wildcard include/config/arm/dma/mem/bufferable.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/outercache.h \
|
||||||
|
$(wildcard include/config/outer/cache/sync.h) \
|
||||||
|
$(wildcard include/config/outer/cache.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/memory.h \
|
||||||
|
$(wildcard include/config/need/mach/memory/h.h) \
|
||||||
|
$(wildcard include/config/mmu.h) \
|
||||||
|
$(wildcard include/config/page/offset.h) \
|
||||||
|
$(wildcard include/config/highmem.h) \
|
||||||
|
$(wildcard include/config/dram/size.h) \
|
||||||
|
$(wildcard include/config/dram/base.h) \
|
||||||
|
$(wildcard include/config/have/tcm.h) \
|
||||||
|
$(wildcard include/config/arm/patch/phys/virt.h) \
|
||||||
|
$(wildcard include/config/phys/offset.h) \
|
||||||
|
$(wildcard include/config/hisi/snapshot/boot.h) \
|
||||||
|
arch/arm/include/generated/asm/sizes.h \
|
||||||
|
include/asm-generic/sizes.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/memory.h \
|
||||||
|
include/asm-generic/memory_model.h \
|
||||||
|
$(wildcard include/config/flatmem.h) \
|
||||||
|
$(wildcard include/config/discontigmem.h) \
|
||||||
|
$(wildcard include/config/sparsemem/vmemmap.h) \
|
||||||
|
$(wildcard include/config/sparsemem.h) \
|
||||||
|
include/linux/stringify.h \
|
||||||
|
include/linux/bottom_half.h \
|
||||||
|
include/linux/spinlock_types.h \
|
||||||
|
include/linux/spinlock_types_up.h \
|
||||||
|
include/linux/lockdep.h \
|
||||||
|
$(wildcard include/config/lockdep.h) \
|
||||||
|
$(wildcard include/config/lock/stat.h) \
|
||||||
|
$(wildcard include/config/prove/rcu.h) \
|
||||||
|
include/linux/rwlock_types.h \
|
||||||
|
include/linux/spinlock_up.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/processor.h \
|
||||||
|
$(wildcard include/config/have/hw/breakpoint.h) \
|
||||||
|
$(wildcard include/config/arm/errata/754327.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/hw_breakpoint.h \
|
||||||
|
include/linux/rwlock.h \
|
||||||
|
include/linux/spinlock_api_up.h \
|
||||||
|
include/linux/atomic.h \
|
||||||
|
$(wildcard include/config/arch/has/atomic/or.h) \
|
||||||
|
$(wildcard include/config/generic/atomic64.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/atomic.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/cmpxchg.h \
|
||||||
|
$(wildcard include/config/cpu/sa1100.h) \
|
||||||
|
$(wildcard include/config/cpu/sa110.h) \
|
||||||
|
$(wildcard include/config/cpu/v6.h) \
|
||||||
|
include/asm-generic/cmpxchg-local.h \
|
||||||
|
include/asm-generic/cmpxchg.h \
|
||||||
|
include/asm-generic/atomic-long.h \
|
||||||
|
include/asm-generic/atomic64.h \
|
||||||
|
include/linux/math64.h \
|
||||||
|
include/linux/kmod.h \
|
||||||
|
include/linux/gfp.h \
|
||||||
|
$(wildcard include/config/kmemcheck.h) \
|
||||||
|
$(wildcard include/config/zone/dma.h) \
|
||||||
|
$(wildcard include/config/zone/dma32.h) \
|
||||||
|
$(wildcard include/config/pm/sleep.h) \
|
||||||
|
include/linux/mmzone.h \
|
||||||
|
$(wildcard include/config/force/max/zoneorder.h) \
|
||||||
|
$(wildcard include/config/memory/hotplug.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node/map.h) \
|
||||||
|
$(wildcard include/config/flat/node/mem/map.h) \
|
||||||
|
$(wildcard include/config/cgroup/mem/res/ctlr.h) \
|
||||||
|
$(wildcard include/config/no/bootmem.h) \
|
||||||
|
$(wildcard include/config/have/memory/present.h) \
|
||||||
|
$(wildcard include/config/have/memoryless/nodes.h) \
|
||||||
|
$(wildcard include/config/need/node/memmap/size.h) \
|
||||||
|
$(wildcard include/config/have/memblock/node.h) \
|
||||||
|
$(wildcard include/config/need/multiple/nodes.h) \
|
||||||
|
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
|
||||||
|
$(wildcard include/config/sparsemem/extreme.h) \
|
||||||
|
$(wildcard include/config/have/arch/pfn/valid.h) \
|
||||||
|
$(wildcard include/config/nodes/span/other/nodes.h) \
|
||||||
|
$(wildcard include/config/holes/in/zone.h) \
|
||||||
|
$(wildcard include/config/arch/has/holes/memorymodel.h) \
|
||||||
|
include/linux/wait.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/current.h \
|
||||||
|
include/linux/threads.h \
|
||||||
|
$(wildcard include/config/nr/cpus.h) \
|
||||||
|
$(wildcard include/config/base/small.h) \
|
||||||
|
include/linux/numa.h \
|
||||||
|
$(wildcard include/config/nodes/shift.h) \
|
||||||
|
include/linux/nodemask.h \
|
||||||
|
include/linux/bitmap.h \
|
||||||
|
include/linux/string.h \
|
||||||
|
$(wildcard include/config/binary/printf.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/string.h \
|
||||||
|
include/linux/pageblock-flags.h \
|
||||||
|
$(wildcard include/config/hugetlb/page.h) \
|
||||||
|
$(wildcard include/config/hugetlb/page/size/variable.h) \
|
||||||
|
include/generated/bounds.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/page.h \
|
||||||
|
$(wildcard include/config/cpu/copy/v3.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wt.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v4wb.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/feroceon.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/fa.h) \
|
||||||
|
$(wildcard include/config/cpu/xscale.h) \
|
||||||
|
$(wildcard include/config/cpu/copy/v6.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/glue.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/pgtable-2level-types.h \
|
||||||
|
include/asm-generic/getorder.h \
|
||||||
|
include/linux/memory_hotplug.h \
|
||||||
|
$(wildcard include/config/memory/hotremove.h) \
|
||||||
|
$(wildcard include/config/have/arch/nodedata/extension.h) \
|
||||||
|
include/linux/notifier.h \
|
||||||
|
include/linux/errno.h \
|
||||||
|
arch/arm/include/generated/asm/errno.h \
|
||||||
|
include/asm-generic/errno.h \
|
||||||
|
include/asm-generic/errno-base.h \
|
||||||
|
include/linux/mutex.h \
|
||||||
|
$(wildcard include/config/debug/mutexes.h) \
|
||||||
|
$(wildcard include/config/have/arch/mutex/cpu/relax.h) \
|
||||||
|
include/linux/mutex-debug.h \
|
||||||
|
include/linux/rwsem.h \
|
||||||
|
$(wildcard include/config/rwsem/generic/spinlock.h) \
|
||||||
|
include/linux/rwsem-spinlock.h \
|
||||||
|
include/linux/srcu.h \
|
||||||
|
include/linux/rcupdate.h \
|
||||||
|
$(wildcard include/config/rcu/torture/test.h) \
|
||||||
|
$(wildcard include/config/tree/rcu.h) \
|
||||||
|
$(wildcard include/config/tree/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/rcu/trace.h) \
|
||||||
|
$(wildcard include/config/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/rcu.h) \
|
||||||
|
$(wildcard include/config/tiny/preempt/rcu.h) \
|
||||||
|
$(wildcard include/config/debug/objects/rcu/head.h) \
|
||||||
|
$(wildcard include/config/hotplug/cpu.h) \
|
||||||
|
$(wildcard include/config/preempt/rt.h) \
|
||||||
|
include/linux/cpumask.h \
|
||||||
|
$(wildcard include/config/cpumask/offstack.h) \
|
||||||
|
$(wildcard include/config/debug/per/cpu/maps.h) \
|
||||||
|
$(wildcard include/config/disable/obsolete/cpumask/functions.h) \
|
||||||
|
include/linux/bug.h \
|
||||||
|
include/linux/completion.h \
|
||||||
|
include/linux/debugobjects.h \
|
||||||
|
$(wildcard include/config/debug/objects.h) \
|
||||||
|
$(wildcard include/config/debug/objects/free.h) \
|
||||||
|
include/linux/rcutiny.h \
|
||||||
|
include/linux/topology.h \
|
||||||
|
$(wildcard include/config/sched/smt.h) \
|
||||||
|
$(wildcard include/config/sched/mc.h) \
|
||||||
|
$(wildcard include/config/sched/book.h) \
|
||||||
|
$(wildcard include/config/use/percpu/numa/node/id.h) \
|
||||||
|
include/linux/smp.h \
|
||||||
|
$(wildcard include/config/use/generic/smp/helpers.h) \
|
||||||
|
include/linux/percpu.h \
|
||||||
|
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
|
||||||
|
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
|
||||||
|
$(wildcard include/config/have/setup/per/cpu/area.h) \
|
||||||
|
include/linux/pfn.h \
|
||||||
|
arch/arm/include/generated/asm/percpu.h \
|
||||||
|
include/asm-generic/percpu.h \
|
||||||
|
include/linux/percpu-defs.h \
|
||||||
|
$(wildcard include/config/debug/force/weak/per/cpu.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/topology.h \
|
||||||
|
$(wildcard include/config/arm/cpu/topology.h) \
|
||||||
|
include/asm-generic/topology.h \
|
||||||
|
include/linux/mmdebug.h \
|
||||||
|
$(wildcard include/config/debug/vm.h) \
|
||||||
|
$(wildcard include/config/debug/virtual.h) \
|
||||||
|
include/linux/workqueue.h \
|
||||||
|
$(wildcard include/config/debug/objects/work.h) \
|
||||||
|
$(wildcard include/config/freezer.h) \
|
||||||
|
include/linux/timer.h \
|
||||||
|
$(wildcard include/config/timer/stats.h) \
|
||||||
|
$(wildcard include/config/debug/objects/timers.h) \
|
||||||
|
include/linux/ktime.h \
|
||||||
|
$(wildcard include/config/ktime/scalar.h) \
|
||||||
|
include/linux/jiffies.h \
|
||||||
|
include/linux/timex.h \
|
||||||
|
include/linux/param.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/param.h \
|
||||||
|
$(wildcard include/config/hz.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/timex.h \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/timex.h \
|
||||||
|
include/linux/sysctl.h \
|
||||||
|
$(wildcard include/config/sysctl.h) \
|
||||||
|
include/linux/rbtree.h \
|
||||||
|
include/linux/elf.h \
|
||||||
|
include/linux/elf-em.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/elf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/user.h \
|
||||||
|
include/linux/kobject.h \
|
||||||
|
include/linux/sysfs.h \
|
||||||
|
include/linux/kobject_ns.h \
|
||||||
|
include/linux/kref.h \
|
||||||
|
include/linux/moduleparam.h \
|
||||||
|
$(wildcard include/config/alpha.h) \
|
||||||
|
$(wildcard include/config/ia64.h) \
|
||||||
|
$(wildcard include/config/ppc64.h) \
|
||||||
|
include/linux/tracepoint.h \
|
||||||
|
include/linux/static_key.h \
|
||||||
|
include/linux/jump_label.h \
|
||||||
|
$(wildcard include/config/jump/label.h) \
|
||||||
|
include/linux/export.h \
|
||||||
|
$(wildcard include/config/symbol/prefix.h) \
|
||||||
|
$(wildcard include/config/modversions.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/module.h \
|
||||||
|
$(wildcard include/config/arm/unwind.h) \
|
||||||
|
include/linux/slab.h \
|
||||||
|
$(wildcard include/config/slab/debug.h) \
|
||||||
|
$(wildcard include/config/failslab.h) \
|
||||||
|
$(wildcard include/config/slub.h) \
|
||||||
|
$(wildcard include/config/slob.h) \
|
||||||
|
$(wildcard include/config/debug/slab.h) \
|
||||||
|
$(wildcard include/config/slab.h) \
|
||||||
|
include/linux/slub_def.h \
|
||||||
|
$(wildcard include/config/slub/stats.h) \
|
||||||
|
$(wildcard include/config/slub/debug.h) \
|
||||||
|
include/linux/kmemleak.h \
|
||||||
|
$(wildcard include/config/debug/kmemleak.h) \
|
||||||
|
include/linux/io.h \
|
||||||
|
$(wildcard include/config/has/ioport.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/io.h \
|
||||||
|
$(wildcard include/config/need/mach/io/h.h) \
|
||||||
|
$(wildcard include/config/pcmcia/soc/common.h) \
|
||||||
|
$(wildcard include/config/pci.h) \
|
||||||
|
$(wildcard include/config/isa.h) \
|
||||||
|
$(wildcard include/config/pccard.h) \
|
||||||
|
include/asm-generic/pci_iomap.h \
|
||||||
|
$(wildcard include/config/no/generic/pci/ioport/map.h) \
|
||||||
|
$(wildcard include/config/generic/pci/iomap.h) \
|
||||||
|
arch/arm/mach-hi3518ev200/include/mach/io.h \
|
||||||
|
include/linux/i2c.h \
|
||||||
|
$(wildcard include/config/i2c.h) \
|
||||||
|
$(wildcard include/config/i2c/boardinfo.h) \
|
||||||
|
include/linux/mod_devicetable.h \
|
||||||
|
include/linux/device.h \
|
||||||
|
$(wildcard include/config/debug/devres.h) \
|
||||||
|
$(wildcard include/config/devtmpfs.h) \
|
||||||
|
$(wildcard include/config/sysfs/deprecated.h) \
|
||||||
|
include/linux/ioport.h \
|
||||||
|
include/linux/klist.h \
|
||||||
|
include/linux/pm.h \
|
||||||
|
$(wildcard include/config/pm.h) \
|
||||||
|
$(wildcard include/config/pm/runtime.h) \
|
||||||
|
$(wildcard include/config/pm/clk.h) \
|
||||||
|
$(wildcard include/config/pm/generic/domains.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/device.h \
|
||||||
|
$(wildcard include/config/dmabounce.h) \
|
||||||
|
$(wildcard include/config/iommu/api.h) \
|
||||||
|
$(wildcard include/config/arch/omap.h) \
|
||||||
|
include/linux/pm_wakeup.h \
|
||||||
|
include/linux/sched.h \
|
||||||
|
$(wildcard include/config/sched/debug.h) \
|
||||||
|
$(wildcard include/config/no/hz.h) \
|
||||||
|
$(wildcard include/config/lockup/detector.h) \
|
||||||
|
$(wildcard include/config/detect/hung/task.h) \
|
||||||
|
$(wildcard include/config/core/dump/default/elf/headers.h) \
|
||||||
|
$(wildcard include/config/sched/autogroup.h) \
|
||||||
|
$(wildcard include/config/virt/cpu/accounting.h) \
|
||||||
|
$(wildcard include/config/bsd/process/acct.h) \
|
||||||
|
$(wildcard include/config/taskstats.h) \
|
||||||
|
$(wildcard include/config/audit.h) \
|
||||||
|
$(wildcard include/config/cgroups.h) \
|
||||||
|
$(wildcard include/config/inotify/user.h) \
|
||||||
|
$(wildcard include/config/fanotify.h) \
|
||||||
|
$(wildcard include/config/epoll.h) \
|
||||||
|
$(wildcard include/config/posix/mqueue.h) \
|
||||||
|
$(wildcard include/config/keys.h) \
|
||||||
|
$(wildcard include/config/perf/events.h) \
|
||||||
|
$(wildcard include/config/schedstats.h) \
|
||||||
|
$(wildcard include/config/task/delay/acct.h) \
|
||||||
|
$(wildcard include/config/fair/group/sched.h) \
|
||||||
|
$(wildcard include/config/rt/group/sched.h) \
|
||||||
|
$(wildcard include/config/cgroup/sched.h) \
|
||||||
|
$(wildcard include/config/blk/dev/io/trace.h) \
|
||||||
|
$(wildcard include/config/rcu/boost.h) \
|
||||||
|
$(wildcard include/config/compat/brk.h) \
|
||||||
|
$(wildcard include/config/generic/hardirqs.h) \
|
||||||
|
$(wildcard include/config/cc/stackprotector.h) \
|
||||||
|
$(wildcard include/config/sysvipc.h) \
|
||||||
|
$(wildcard include/config/auditsyscall.h) \
|
||||||
|
$(wildcard include/config/rt/mutexes.h) \
|
||||||
|
$(wildcard include/config/block.h) \
|
||||||
|
$(wildcard include/config/task/xacct.h) \
|
||||||
|
$(wildcard include/config/cpusets.h) \
|
||||||
|
$(wildcard include/config/futex.h) \
|
||||||
|
$(wildcard include/config/fault/injection.h) \
|
||||||
|
$(wildcard include/config/latencytop.h) \
|
||||||
|
$(wildcard include/config/function/graph/tracer.h) \
|
||||||
|
$(wildcard include/config/have/unstable/sched/clock.h) \
|
||||||
|
$(wildcard include/config/irq/time/accounting.h) \
|
||||||
|
$(wildcard include/config/proc/fs.h) \
|
||||||
|
$(wildcard include/config/cfs/bandwidth.h) \
|
||||||
|
$(wildcard include/config/stack/growsup.h) \
|
||||||
|
$(wildcard include/config/debug/stack/usage.h) \
|
||||||
|
$(wildcard include/config/mm/owner.h) \
|
||||||
|
include/linux/capability.h \
|
||||||
|
include/linux/mm_types.h \
|
||||||
|
$(wildcard include/config/split/ptlock/cpus.h) \
|
||||||
|
$(wildcard include/config/have/cmpxchg/double.h) \
|
||||||
|
$(wildcard include/config/have/aligned/struct/page.h) \
|
||||||
|
$(wildcard include/config/want/page/debug/flags.h) \
|
||||||
|
$(wildcard include/config/aio.h) \
|
||||||
|
$(wildcard include/config/mmu/notifier.h) \
|
||||||
|
$(wildcard include/config/transparent/hugepage.h) \
|
||||||
|
include/linux/auxvec.h \
|
||||||
|
arch/arm/include/generated/asm/auxvec.h \
|
||||||
|
include/asm-generic/auxvec.h \
|
||||||
|
include/linux/prio_tree.h \
|
||||||
|
include/linux/page-debug-flags.h \
|
||||||
|
$(wildcard include/config/page/poisoning.h) \
|
||||||
|
$(wildcard include/config/page/guard.h) \
|
||||||
|
$(wildcard include/config/page/debug/something/else.h) \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/mmu.h \
|
||||||
|
$(wildcard include/config/cpu/has/asid.h) \
|
||||||
|
arch/arm/include/generated/asm/cputime.h \
|
||||||
|
include/asm-generic/cputime.h \
|
||||||
|
include/linux/sem.h \
|
||||||
|
include/linux/ipc.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/ipcbuf.h \
|
||||||
|
include/asm-generic/ipcbuf.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/sembuf.h \
|
||||||
|
include/linux/signal.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/signal.h \
|
||||||
|
include/asm-generic/signal-defs.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/sigcontext.h \
|
||||||
|
arch/arm/include/generated/asm/siginfo.h \
|
||||||
|
include/asm-generic/siginfo.h \
|
||||||
|
include/linux/pid.h \
|
||||||
|
include/linux/proportions.h \
|
||||||
|
include/linux/percpu_counter.h \
|
||||||
|
include/linux/seccomp.h \
|
||||||
|
$(wildcard include/config/seccomp.h) \
|
||||||
|
include/linux/rculist.h \
|
||||||
|
include/linux/rtmutex.h \
|
||||||
|
$(wildcard include/config/debug/rt/mutexes.h) \
|
||||||
|
include/linux/plist.h \
|
||||||
|
$(wildcard include/config/debug/pi/list.h) \
|
||||||
|
include/linux/resource.h \
|
||||||
|
arch/arm/include/generated/asm/resource.h \
|
||||||
|
include/asm-generic/resource.h \
|
||||||
|
include/linux/hrtimer.h \
|
||||||
|
$(wildcard include/config/high/res/timers.h) \
|
||||||
|
$(wildcard include/config/timerfd.h) \
|
||||||
|
include/linux/timerqueue.h \
|
||||||
|
include/linux/task_io_accounting.h \
|
||||||
|
$(wildcard include/config/task/io/accounting.h) \
|
||||||
|
include/linux/latencytop.h \
|
||||||
|
include/linux/cred.h \
|
||||||
|
$(wildcard include/config/debug/credentials.h) \
|
||||||
|
$(wildcard include/config/security.h) \
|
||||||
|
$(wildcard include/config/user/ns.h) \
|
||||||
|
include/linux/key.h \
|
||||||
|
include/linux/selinux.h \
|
||||||
|
$(wildcard include/config/security/selinux.h) \
|
||||||
|
include/linux/llist.h \
|
||||||
|
$(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \
|
||||||
|
include/linux/aio.h \
|
||||||
|
include/linux/aio_abi.h \
|
||||||
|
include/linux/uio.h \
|
||||||
|
include/linux/of.h \
|
||||||
|
$(wildcard include/config/sparc.h) \
|
||||||
|
$(wildcard include/config/of/dynamic.h) \
|
||||||
|
$(wildcard include/config/of.h) \
|
||||||
|
include/linux/delay.h \
|
||||||
|
/home/pub/osdrv/hi3518e/hi3518eV200_OSDRV_V1.0.1.0.B010_20150822-133543/opensource/kernel/linux-3.4.y/arch/arm/include/asm/delay.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/isp_ext.h \
|
||||||
|
/home/pub/temp/platform_ipc/mpp/release/hi3518e/include/hi_type.h \
|
||||||
|
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o: $(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o)
|
||||||
|
|
||||||
|
$(deps_/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o):
|
|
@ -0,0 +1,2 @@
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.ko
|
||||||
|
/home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.o
|
|
@ -0,0 +1,15 @@
|
||||||
|
ifeq ($(PARAM_FILE), )
|
||||||
|
PARAM_FILE:=../../Makefile.param
|
||||||
|
include $(PARAM_FILE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
obj-m := sensor_i2c.o
|
||||||
|
hi_sensor_i2c-y := sensor_i2c.o
|
||||||
|
|
||||||
|
EXTRA_CFLAGS += -I$(REL_INC)
|
||||||
|
EXTRA_CFLAGS += $(DRV_CFLAGS)
|
||||||
|
all:
|
||||||
|
make -C $(LINUX_ROOT) M=$(PWD) modules
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@make -C $(LINUX_ROOT) M=$(PWD) clean
|
|
@ -0,0 +1,62 @@
|
||||||
|
/******************************************************************************
|
||||||
|
|
||||||
|
Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd.
|
||||||
|
|
||||||
|
******************************************************************************
|
||||||
|
File Name : isp_ext.h
|
||||||
|
Version : Initial Draft
|
||||||
|
Author : Hisilicon multimedia software group
|
||||||
|
Created : 2013/07/17
|
||||||
|
Description :
|
||||||
|
History :
|
||||||
|
1.Date : 2013/07/17
|
||||||
|
Author : n00168968
|
||||||
|
Modification: Created file
|
||||||
|
|
||||||
|
******************************************************************************/
|
||||||
|
#ifndef __ISP_EXT_H__
|
||||||
|
#define __ISP_EXT_H__
|
||||||
|
|
||||||
|
#include "hi_type.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
#endif /* End of #ifdef __cplusplus */
|
||||||
|
|
||||||
|
typedef enum hiISP_BUS_TYPE_E
|
||||||
|
{
|
||||||
|
ISP_BUS_TYPE_I2C = 0,
|
||||||
|
ISP_BUS_TYPE_SSP,
|
||||||
|
|
||||||
|
ISP_BUS_TYPE_BUTT,
|
||||||
|
} ISP_BUS_TYPE_E;
|
||||||
|
|
||||||
|
typedef struct hiISP_BUS_CALLBACK_S
|
||||||
|
{
|
||||||
|
HI_S32 (*pfnISPWriteI2CData) (HI_U8 u8DevAddr, HI_U32 u32RegAddr,
|
||||||
|
HI_U32 u32RegAddrByteNum, HI_U32 u32Data, HI_U32 u32DataByteNum);
|
||||||
|
HI_S32 (*pfnISPWriteSSPData) (HI_U32 u32DevAddr, HI_U32 u32DevAddrByteNum,
|
||||||
|
HI_U32 u32RegAddr, HI_U32 u32RegAddrByteNum, HI_U32 u32Data, HI_U32 u32DataByteNum);
|
||||||
|
} ISP_BUS_CALLBACK_S;
|
||||||
|
|
||||||
|
typedef struct hiISP_EXPORT_FUNC_S
|
||||||
|
{
|
||||||
|
HI_S32 (*pfnISPRegisterBusCallBack) (HI_S32 IspDev, ISP_BUS_TYPE_E enType, ISP_BUS_CALLBACK_S* pstBusCb);
|
||||||
|
} ISP_EXPORT_FUNC_S;
|
||||||
|
|
||||||
|
extern ISP_EXPORT_FUNC_S g_stIspExpFunc;
|
||||||
|
|
||||||
|
#define CKFN_ISP_RegisterBusCallBack()\
|
||||||
|
(NULL != g_stIspExpFunc.pfnISPRegisterBusCallBack)
|
||||||
|
#define CALL_ISP_RegisterBusCallBack(IspDev,enType,pstBusCb)\
|
||||||
|
g_stIspExpFunc.pfnISPRegisterBusCallBack(IspDev,enType,pstBusCb)
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
#if __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* End of #ifdef __cplusplus */
|
||||||
|
|
||||||
|
#endif
|
|
@ -0,0 +1 @@
|
||||||
|
kernel//home/pub/temp/platform_ipc/mpp/extdrv/hi3518e/sensor_i2c/sensor_i2c.ko
|
|
@ -0,0 +1,149 @@
|
||||||
|
#include <linux/init.h>
|
||||||
|
#include <linux/module.h>
|
||||||
|
#include <linux/slab.h>
|
||||||
|
#include <linux/string.h>
|
||||||
|
#include <linux/io.h>
|
||||||
|
#include <linux/i2c.h>
|
||||||
|
|
||||||
|
#include <linux/delay.h>
|
||||||
|
#include "isp_ext.h"
|
||||||
|
|
||||||
|
static struct i2c_board_info hi_info =
|
||||||
|
{
|
||||||
|
I2C_BOARD_INFO("sensor_i2c", 0x6c),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct i2c_client* sensor_client;
|
||||||
|
|
||||||
|
int hi_i2c_read(unsigned char dev_addr, unsigned int reg_addr,
|
||||||
|
unsigned int reg_addr_num, unsigned int data_byte_num);
|
||||||
|
|
||||||
|
int hi_sensor_i2c_write(unsigned char dev_addr,
|
||||||
|
unsigned int reg_addr, unsigned int reg_addr_num,
|
||||||
|
unsigned int data, unsigned int data_byte_num)
|
||||||
|
{
|
||||||
|
unsigned char tmp_buf[8];
|
||||||
|
int ret = 0;
|
||||||
|
int idx = 0;
|
||||||
|
struct i2c_client* client = sensor_client;
|
||||||
|
|
||||||
|
sensor_client->addr = dev_addr;
|
||||||
|
|
||||||
|
/* reg_addr config */
|
||||||
|
tmp_buf[idx++] = reg_addr;
|
||||||
|
if (reg_addr_num == 2)
|
||||||
|
{
|
||||||
|
client->flags |= I2C_M_16BIT_REG;
|
||||||
|
tmp_buf[idx++] = (reg_addr >> 8);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
client->flags &= ~I2C_M_16BIT_REG;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* data config */
|
||||||
|
tmp_buf[idx++] = data;
|
||||||
|
if (data_byte_num == 2)
|
||||||
|
{
|
||||||
|
client->flags |= I2C_M_16BIT_DATA;
|
||||||
|
tmp_buf[idx++] = data >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
client->flags &= ~I2C_M_16BIT_DATA;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = i2c_master_send(client, tmp_buf, idx);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
int hi_i2c_read(unsigned char dev_addr, unsigned int reg_addr,
|
||||||
|
unsigned int reg_addr_num, unsigned int data_byte_num)
|
||||||
|
{
|
||||||
|
unsigned char tmp_buf[8];
|
||||||
|
int ret = 0;
|
||||||
|
int ret_data = 0xFF;
|
||||||
|
int idx = 0;
|
||||||
|
struct i2c_client* client = sensor_client;
|
||||||
|
|
||||||
|
sensor_client->addr = dev_addr;
|
||||||
|
|
||||||
|
/* reg_addr config */
|
||||||
|
tmp_buf[idx++] = reg_addr;
|
||||||
|
if (reg_addr_num == 2)
|
||||||
|
{
|
||||||
|
client->flags |= I2C_M_16BIT_REG;
|
||||||
|
tmp_buf[idx++] = reg_addr >> 8;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
client->flags &= ~I2C_M_16BIT_REG;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* data config */
|
||||||
|
if (data_byte_num == 2)
|
||||||
|
{
|
||||||
|
client->flags |= I2C_M_16BIT_DATA;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
client->flags &= ~I2C_M_16BIT_DATA;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = i2c_master_recv(client, tmp_buf, idx);
|
||||||
|
if (ret >= 0)
|
||||||
|
{
|
||||||
|
if (data_byte_num == 2)
|
||||||
|
{
|
||||||
|
ret_data = tmp_buf[0] | (tmp_buf[1] << 8);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ret_data = tmp_buf[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret_data;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int hi_dev_isp_register(void)
|
||||||
|
{
|
||||||
|
ISP_BUS_CALLBACK_S stBusCb = {0};
|
||||||
|
|
||||||
|
stBusCb.pfnISPWriteI2CData = hi_sensor_i2c_write;
|
||||||
|
if (CKFN_ISP_RegisterBusCallBack())
|
||||||
|
{
|
||||||
|
CALL_ISP_RegisterBusCallBack(0, ISP_BUS_TYPE_I2C, &stBusCb);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printk("register i2c_write_callback to isp failed, hi_i2c init is failed!\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int hi_dev_init(void)
|
||||||
|
{
|
||||||
|
struct i2c_adapter* i2c_adap;
|
||||||
|
|
||||||
|
// use i2c0
|
||||||
|
i2c_adap = i2c_get_adapter(0);
|
||||||
|
sensor_client = i2c_new_device(i2c_adap, &hi_info);
|
||||||
|
|
||||||
|
i2c_put_adapter(i2c_adap);
|
||||||
|
hi_dev_isp_register();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void hi_dev_exit(void)
|
||||||
|
{
|
||||||
|
i2c_unregister_device(sensor_client);
|
||||||
|
}
|
||||||
|
|
||||||
|
module_init(hi_dev_init);
|
||||||
|
module_exit(hi_dev_exit);
|
||||||
|
MODULE_LICENSE("GPL");
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue