Add OV2640 camera support to test the SAMA5 ISI peripheral

This commit is contained in:
Gregory Nutt
2013-12-09 10:51:22 -06:00
parent 227cddccfa
commit 4d07c15932
17 changed files with 2380 additions and 12 deletions
+117
View File
@@ -0,0 +1,117 @@
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
config VIDEO_OV2640
bool "OV2640 camera chip"
default n
select I2C
if VIDEO_OV2640
config OV2640_MULTIPLE
bool "Multiple OV2640 devices"
default n
---help---
Build in support for multiple on-board OV2640 devices
config OV2640_I2CADDR
hex "I2C address (7-bit)"
default 0x21
---help---
OV2640 I2C address in 7-bit format
config OV2640_FREQUENCY
int "I2C frequency"
default 400000
---help---
OV2640 I2C frequency
choice
prompt "Color format"
default OV2640_RGB565_COLORFMT
config OV2640_RGB565_COLORFMT
bool "RGB565"
config OV2640_YUV422_COLORFMT
bool "YUV422"
endchoice
config OV2640_JPEG
bool "JPEG output format"
default n
---help---
Select JPEG output format
choice
prompt "JPEG resolution"
default OV2640_JPEG_SVGA_RESOLUTION
depends on OV2640_JPEG
config OV2640_JPEG_QCIF_RESOLUTION
bool "QCIF (176x144)"
config OV2640_JPEG_QVGA_RESOLUTION
bool "QVGA (320x240)"
config OV2640_JPEG_CIF_RESOLUTION
bool "CIF (352x288)"
config OV2640_JPEG_VGA_RESOLUTION
bool "VGA (640x480)"
config OV2640_JPEG_SVGA_RESOLUTION
bool "SVGA (800x600)"
config OV2640_JPEG_XVGA_RESOLUTION
bool "XVGA (1024x768)"
config OV2640_JPEG_SXVGA_RESOLUTION
bool "SXVGA (1280x1024)"
config OV2640_JPEG_UXGA_RESOLUTION
bool "UXVGA (1600x1200)"
endchoice
choice
prompt "Output resolution"
default OV2640_SVGA_RESOLUTION
depends on !OV2640_JPEG
config OV2640_QCIF_RESOLUTION
bool "QCIF (176x144)"
config OV2640_QVGA_RESOLUTION
bool "QVGA (320x240)"
config OV2640_CIF_RESOLUTION
bool "CIF (352x288)"
config OV2640_VGA_RESOLUTION
bool "VGA (640x480)"
config OV2640_SVGA_RESOLUTION
bool "SVGA (800x600)"
config OV2640_XVGA_RESOLUTION
bool "XVGA (1024x768)"
config OV2640_SXGA_RESOLUTION
bool "SXVGA (1280x1024)"
config OV2640_UXGA_RESOLUTION
bool "UXVGA (1600x1200)"
endchoice
config OV2640_REGDEBUG
bool "Register level debug output"
default n
depends on DEBUG
---help---
Enable details, register level debug output.
endif
+56
View File
@@ -0,0 +1,56 @@
############################################################################
# drivers/ov2640/Make.defs
#
# Copyright (C) 2013 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
# 3. Neither the name NuttX nor the names of its contributors may be
# used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
############################################################################
# Include video drivers
ifeq ($(CONFIG_VIDEO_DEVICES),y)
# These video drivers depend on I2C support
ifeq ($(CONFIG_I2C),y)
ifeq ($(CONFIG_VIDEO_OV2640),y)
CSRCS += ov2640.c
endif
endif
# Include video driver build support
DEPPATH += --dep-path video
VPATH += :video
CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)video}
endif
File diff suppressed because it is too large Load Diff