Add android-4 sysroot and use project's default.properties to get the right target.
Note that for now, android-4 contains the same things than android-3. Another patch will add OpenGL ES headers and libraries to it.
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
#
|
||||
|
||||
$(call assert-defined, _application_mk)
|
||||
$(call ndk_log,Parsing $(_application_mk))
|
||||
|
||||
$(call clear-vars, $(NDK_APP_VARS))
|
||||
|
||||
@@ -31,32 +32,63 @@ include $(_application_mk)
|
||||
|
||||
$(call check-required-vars,$(NDK_APP_VARS_REQUIRED),$(_application_mk))
|
||||
|
||||
_dir := $(patsubst %/,%,$(dir $(_application_mk)))
|
||||
_name := $(notdir $(_dir))
|
||||
_map := NDK_APP.$(_name)
|
||||
|
||||
# strip the 'lib' prefix in front of APP_MODULES modules
|
||||
APP_MODULES := $(call strip-lib-prefix,$(APP_MODULES))
|
||||
|
||||
# check that APP_OPTIM, if defined, is either 'release' or 'debug'
|
||||
APP_OPTIM := $(strip $(APP_OPTIM))
|
||||
$(if $(filter-out release debug,$(APP_OPTIM)),\
|
||||
$(call __ndk_info, The APP_OPTIM defined in $(_application_mk) must only be 'release' or 'debug')\
|
||||
$(call __ndk_error,Aborting)\
|
||||
)
|
||||
|
||||
_dir := $(patsubst %/,%,$(dir $(_application_mk)))
|
||||
_name := $(notdir $(_dir))
|
||||
_app := NDK_APP.$(_name)
|
||||
ifndef APP_OPTIM
|
||||
$(call ndk_log, Defaulted to APP_OPTIM=release)
|
||||
APP_OPTIM := release
|
||||
endif
|
||||
|
||||
$(if $(strip $(APP.$(_app).defined)),\
|
||||
$(call __ndk_info,Weird, the application $(_name) is already defined by $(APP.$(_app).defined))\
|
||||
# check whether APP_PLATFORM is defined. If not, look for default.properties in
|
||||
# the $(APP_PROJECT_PATH) and extract the value with awk's help. If nothing is here,
|
||||
# revert to the default value (i.e. "android-3").
|
||||
#
|
||||
# NOTE: APP_PLATFORM is an experimental feature for now.
|
||||
#
|
||||
APP_PLATFORM := $(strip $(APP_PLATFORM))
|
||||
ifndef APP_PLATFORM
|
||||
_local_props := $(strip $(wildcard $(APP_PROJECT_PATH)/default.properties))
|
||||
ifdef _local_props
|
||||
APP_PLATFORM := $(strip $(shell awk -f $(BUILD_SYSTEM)/extract-platform.awk < $(_local_props)))
|
||||
$(call ndk_log, Found APP_PLATFORM=$(APP_PLATFORM) in $(_local_props))
|
||||
else
|
||||
APP_PLATFORM := android-3
|
||||
$(call ndk_log, Defaulted to APP_PLATFORM=$(APP_PLATFORM))
|
||||
endif
|
||||
endif
|
||||
|
||||
_bad_platform := $(strip $(filter-out $(NDK_ALL_PLATFORMS),$(APP_PLATFORM)))
|
||||
ifdef _bad_platform
|
||||
$(call __ndk_info,Application $(_name) targets platform '$(_bad_platform)')
|
||||
$(call __ndk_info,which is not supported by this release of the Android NDK)
|
||||
$(call __ndk_error,Aborting...)
|
||||
endif
|
||||
|
||||
$(if $(call get,$(_map),defined),\
|
||||
$(call __ndk_info,Weird, the application $(_name) is already defined by $(call get,$(_map),defined))\
|
||||
$(call __ndk_error,Aborting)\
|
||||
)
|
||||
|
||||
APP.$(_app).defined := $(_application_mk)
|
||||
$(call set,$(_map),defined,$(_application_mk))
|
||||
|
||||
# Record all app-specific variable definitions
|
||||
$(foreach __name,$(NDK_APP_VARS),\
|
||||
$(eval $(_app).$(__name) := $($(__name)))\
|
||||
$(call set,$(_map),$(__name),$($(__name)))\
|
||||
)
|
||||
|
||||
# Record the Application.mk for debugging
|
||||
$(_app).Application.mk := $(_application_mk)
|
||||
$(call set,$(_map),Application.mk,$(_application_mk))
|
||||
|
||||
NDK_ALL_APPS += $(_name)
|
||||
|
||||
33
ndk/build/core/add-platform.mk
Normal file
33
ndk/build/core/add-platform.mk
Normal file
@@ -0,0 +1,33 @@
|
||||
# Copyright (C) 2009 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
$(call assert-defined,_platform NDK_PLATFORMS_ROOT)
|
||||
|
||||
# For each platform, determine the corresponding supported ABIs
|
||||
# And record them in NDK_PLATFORM_$(platform)_ABIS
|
||||
#
|
||||
_abis := $(strip $(notdir $(wildcard $(NDK_PLATFORMS_ROOT)/$(_platform)/arch-*)))
|
||||
_abis := $(_abis:arch-%=%)
|
||||
|
||||
$(call ndk_log,PLATFORM $(_platform) supports: $(_abis))
|
||||
|
||||
NDK_PLATFORM_$(_platform)_ABIS := $(_abis)
|
||||
|
||||
# Record the sysroots for each supported ABI
|
||||
#
|
||||
$(foreach _abi,$(_abis),\
|
||||
$(eval NDK_PLATFORM_$(_platform)_$(_abi)_SYSROOT := $(NDK_PLATFORMS_ROOT)/$(_platform)/arch-$(_abi))\
|
||||
$(call ndk_log, ABI $(_abi) sysroot is: $(NDK_PLATFORM_$(_platform)_$(_abi)_SYSROOT))\
|
||||
)
|
||||
@@ -261,7 +261,8 @@ all-subdir-makefiles = $(call all-makefiles-under,$(call my-dir))
|
||||
NDK_APP_VARS_REQUIRED := APP_MODULES APP_PROJECT_PATH
|
||||
|
||||
# the list of variables that *may* be defined in Application.mk files
|
||||
NDK_APP_VARS_OPTIONAL := APP_OPTIM APP_CPPFLAGS APP_CFLAGS APP_CXXFLAGS
|
||||
NDK_APP_VARS_OPTIONAL := APP_OPTIM APP_CPPFLAGS APP_CFLAGS APP_CXXFLAGS \
|
||||
APP_PLATFORM
|
||||
|
||||
# the list of all variables that may appear in an Application.mk file
|
||||
NDK_APP_VARS := $(NDK_APP_VARS_REQUIRED) $(NDK_APP_VARS_OPTIONAL)
|
||||
|
||||
43
ndk/build/core/extract-platform.awk
Normal file
43
ndk/build/core/extract-platform.awk
Normal file
@@ -0,0 +1,43 @@
|
||||
# Copyright (C) 2009 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
# A nawk/gawk script used to extract the application's platform name from
|
||||
# its default.properties file. It is called from build/core/add-application.mk
|
||||
#
|
||||
|
||||
# we look for a line that looks like one of:
|
||||
# target=android-<api>
|
||||
# target=<vendor>:<name>:<api>
|
||||
#
|
||||
# <api> is a number, but can also be "Donut" for the first form,
|
||||
# as a special case.
|
||||
#
|
||||
BEGIN {
|
||||
android_regex="android-[0-9A-Za-z_-]+"
|
||||
vendor_regex=":[0-9]+\\s*$"
|
||||
API=unknown
|
||||
}
|
||||
|
||||
/^target\s*=\s*.*/ {
|
||||
if (match($0,android_regex)) {
|
||||
API=substr($0,RSTART,RLENGTH)
|
||||
}
|
||||
else if (match($0,vendor_regex)) {
|
||||
API="android-" substr($0,RSTART+1,RLENGTH)
|
||||
}
|
||||
}
|
||||
|
||||
END {
|
||||
printf("%s", API)
|
||||
}
|
||||
@@ -95,6 +95,25 @@ $(foreach tc,$(NDK_ALL_TOOLCHAINS),\
|
||||
$(call ndk_log, $(space)$(space)$(tc): $(NDK_TOOLCHAIN.$(tc).abis))\
|
||||
)
|
||||
|
||||
# ====================================================================
|
||||
#
|
||||
# Read all platform-specific configuration files.
|
||||
#
|
||||
# Each platform must be located in build/platforms/android-<apilevel>
|
||||
# where <apilevel> corresponds to an API level number, with:
|
||||
# 3 -> Android 1.5
|
||||
# 4 -> next platform release
|
||||
#
|
||||
# ====================================================================
|
||||
|
||||
NDK_PLATFORMS_ROOT := $(BUILD_SYSTEM)/../platforms
|
||||
NDK_ALL_PLATFORMS := $(strip $(notdir $(wildcard $(NDK_PLATFORMS_ROOT)/android-*)))
|
||||
$(info NDK_ALL_PLATFORMS=$(NDK_ALL_PLATFORMS))
|
||||
|
||||
$(foreach _platform,$(NDK_ALL_PLATFORMS),\
|
||||
$(eval include $(BUILD_SYSTEM)/add-platform.mk)\
|
||||
)
|
||||
|
||||
# ====================================================================
|
||||
#
|
||||
# Read all application configuration files
|
||||
@@ -103,30 +122,7 @@ $(foreach tc,$(NDK_ALL_TOOLCHAINS),\
|
||||
# located in apps/<name> where <name> is a liberal name that doesn't
|
||||
# contain any space in it, used to uniquely identify the
|
||||
#
|
||||
# Each one of these files should define the following required
|
||||
# variables:
|
||||
#
|
||||
# APP_MODULES the list of modules needed by this application
|
||||
#
|
||||
# APP_PROJECT_PATH
|
||||
# path to the Java project root directory where the
|
||||
# generated binaries will be copied to. The NDK will
|
||||
# place them in appropriate locations so they are
|
||||
# properly picked by aapt, the Android Packager tool,
|
||||
# when generating your applications.
|
||||
#
|
||||
# As well as the following *optional* variables:
|
||||
#
|
||||
# APP_OPTIM either 'release' or 'debug'
|
||||
#
|
||||
# APP_CPPFLAGS extra flags passed when building C and C++ sources
|
||||
# of application modules
|
||||
#
|
||||
# APP_CFLAGS extra flags passed when building C sources of
|
||||
# application's modules (not C++ ones)
|
||||
#
|
||||
# APP_CXXFLAGS extra flags passed when building C++ sources of
|
||||
# application's modules (not C ones)
|
||||
# See docs/ANDROID-MK.TXT for their specification.
|
||||
#
|
||||
# ====================================================================
|
||||
|
||||
@@ -236,26 +232,10 @@ ALL_INSTALLED_MODULES :=
|
||||
# the first rule
|
||||
all: installed_modules host_libraries host_executables
|
||||
|
||||
# ====================================================================
|
||||
#
|
||||
# For each platform/abi combo supported by the application, we should
|
||||
# setup the toolchain and parse all module definitions files again
|
||||
# to build the right dependency tree.
|
||||
#
|
||||
# All this work is performed by build/core/setup-toolchain.mk
|
||||
#
|
||||
# ====================================================================
|
||||
|
||||
|
||||
# XXX: For now, only support one platform and one target ABI with
|
||||
# only one toolchain.
|
||||
#
|
||||
TARGET_PLATFORM := android-3
|
||||
TARGET_ARCH_ABI := arm
|
||||
TARGET_ARCH := arm
|
||||
TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
|
||||
|
||||
include build/core/setup-toolchain.mk
|
||||
$(foreach _app,$(NDK_APPS),\
|
||||
$(eval include $(BUILD_SYSTEM)/setup-app.mk)\
|
||||
)
|
||||
|
||||
# ====================================================================
|
||||
#
|
||||
|
||||
@@ -13,12 +13,20 @@
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
# this file is included repeatedly from build/core/setup-toolchain.mk
|
||||
# this file is included repeatedly from build/core/main.mk
|
||||
# and is used to prepare for app-specific build rules.
|
||||
#
|
||||
|
||||
$(call assert-defined,_app)
|
||||
|
||||
_map := NDK_APP.$(_app)
|
||||
|
||||
# which platform/abi/toolchain are we going to use?
|
||||
TARGET_PLATFORM := $(call get,$(_map),APP_PLATFORM)
|
||||
TARGET_ARCH_ABI := arm
|
||||
TARGET_ARCH := arm
|
||||
TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
|
||||
|
||||
# the location of generated files for this app
|
||||
HOST_OUT := $(NDK_APP_OUT)/$(_app)/$(HOST_TAG)
|
||||
HOST_OBJS := $(HOST_OUT)/objs
|
||||
@@ -35,34 +43,23 @@ TARGET_GDB_SETUP := $(TARGET_OUT)/setup.gdb
|
||||
# Restore the APP_XXX variables just for this pass as NDK_APP_XXX
|
||||
#
|
||||
NDK_APP_NAME := $(_app)
|
||||
NDK_APP_APPLICATION_MK := $(NDK_APP.$(_app).Application.mk)
|
||||
NDK_APP_APPLICATION_MK := $(call get,$(_map),Application.mk)
|
||||
|
||||
$(foreach __name,$(NDK_APP_VARS),\
|
||||
$(eval NDK_$(__name) := $(NDK_APP.$(_app).$(__name)))\
|
||||
$(eval NDK_$(__name) := $(call get,$(_map),$(__name)))\
|
||||
)
|
||||
|
||||
# set release/debug build flags
|
||||
#
|
||||
ifeq ($(NDK_APP_OPTIM),debug)
|
||||
NDK_APP_CPPFLAGS := -O0 -g $(NDK_APP_CPPFLAGS)
|
||||
NDK_APP_CFLAGS := -O0 -g $(NDK_APP_CFLAGS)
|
||||
else
|
||||
NDK_APP_CPPFLAGS := -O2 -DNDEBUG -g $(NDK_APP_CPPFLAGS)
|
||||
NDK_APP_CFLAGS := -O2 -DNDEBUG -g $(NDK_APP_CFLAGS)
|
||||
endif
|
||||
|
||||
# compute NDK_APP_DEST as the destination directory for the generated files
|
||||
NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ABI_SUBDIR)
|
||||
|
||||
# make the application depend on the modules it requires
|
||||
.PHONY: ndk-app-$(_app)
|
||||
ndk-app-$(_app): $(NDK_APP_MODULES)
|
||||
all: ndk-app-$(_app)
|
||||
|
||||
# free the dictionary of LOCAL_MODULE definitions
|
||||
$(call modules-clear)
|
||||
|
||||
# now parse all Android.mk build files
|
||||
#
|
||||
# this will include stuff like build/core/static-library.mk and others
|
||||
# for each module to be defined.
|
||||
#
|
||||
include sources/*/Android.mk
|
||||
include $(BUILD_SYSTEM)/setup-toolchain.mk
|
||||
|
||||
@@ -39,7 +39,11 @@ TARGET_PREBUILT_SHARED_LIBRARIES := $(TARGET_PREBUILT_SHARED_LIBRARIES:%=$(SYSRO
|
||||
# now call the toolchain-specific setup script
|
||||
include $(NDK_TOOLCHAIN.$(TARGET_TOOLCHAIN).setup)
|
||||
|
||||
# For each app, compute intermediate directories and parse module sources
|
||||
$(foreach _app,$(NDK_APPS),\
|
||||
$(eval include $(BUILD_SYSTEM)/setup-app.mk)\
|
||||
)
|
||||
# compute NDK_APP_DEST as the destination directory for the generated files
|
||||
NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ABI_SUBDIR)
|
||||
|
||||
# free the dictionary of LOCAL_MODULE definitions
|
||||
$(call modules-clear)
|
||||
|
||||
# now parse all Android.mk build files
|
||||
include sources/*/Android.mk
|
||||
|
||||
1
ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
Symbolic link
1
ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../common/include/alloca.h
|
||||
1
ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
Symbolic link
1
ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../common/include/android/log.h
|
||||
217
ndk/build/platforms/android-4/arch-arm/usr/include/arm/fenv.h
Normal file
217
ndk/build/platforms/android-4/arch-arm/usr/include/arm/fenv.h
Normal file
@@ -0,0 +1,217 @@
|
||||
/*-
|
||||
* Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
|
||||
* All rights reserved.
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
||||
*
|
||||
* $FreeBSD: src/lib/msun/arm/fenv.h,v 1.5 2005/03/16 19:03:45 das Exp $
|
||||
*/
|
||||
|
||||
#ifndef _FENV_H_
|
||||
#define _FENV_H_
|
||||
|
||||
#include <sys/_types.h>
|
||||
|
||||
typedef __uint32_t fenv_t;
|
||||
typedef __uint32_t fexcept_t;
|
||||
|
||||
/* Exception flags */
|
||||
#define FE_INVALID 0x0001
|
||||
#define FE_DIVBYZERO 0x0002
|
||||
#define FE_OVERFLOW 0x0004
|
||||
#define FE_UNDERFLOW 0x0008
|
||||
#define FE_INEXACT 0x0010
|
||||
#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | \
|
||||
FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
|
||||
|
||||
/* Rounding modes */
|
||||
#define FE_TONEAREST 0x0000
|
||||
#define FE_TOWARDZERO 0x0001
|
||||
#define FE_UPWARD 0x0002
|
||||
#define FE_DOWNWARD 0x0003
|
||||
#define _ROUND_MASK (FE_TONEAREST | FE_DOWNWARD | \
|
||||
FE_UPWARD | FE_TOWARDZERO)
|
||||
__BEGIN_DECLS
|
||||
|
||||
/* Default floating-point environment */
|
||||
extern const fenv_t __fe_dfl_env;
|
||||
#define FE_DFL_ENV (&__fe_dfl_env)
|
||||
|
||||
/* We need to be able to map status flag positions to mask flag positions */
|
||||
#define _FPUSW_SHIFT 16
|
||||
#define _ENABLE_MASK (FE_ALL_EXCEPT << _FPUSW_SHIFT)
|
||||
|
||||
#ifdef ARM_HARD_FLOAT
|
||||
#define __rfs(__fpsr) __asm __volatile("rfs %0" : "=r" (*(__fpsr)))
|
||||
#define __wfs(__fpsr) __asm __volatile("wfs %0" : : "r" (__fpsr))
|
||||
#else
|
||||
#define __rfs(__fpsr)
|
||||
#define __wfs(__fpsr)
|
||||
#endif
|
||||
|
||||
static __inline int
|
||||
feclearexcept(int __excepts)
|
||||
{
|
||||
fexcept_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
__fpsr &= ~__excepts;
|
||||
__wfs(__fpsr);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
||||
{
|
||||
fexcept_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
*__flagp = __fpsr & __excepts;
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fesetexceptflag(const fexcept_t *__flagp, int __excepts)
|
||||
{
|
||||
fexcept_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
__fpsr &= ~__excepts;
|
||||
__fpsr |= *__flagp & __excepts;
|
||||
__wfs(__fpsr);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
feraiseexcept(int __excepts)
|
||||
{
|
||||
fexcept_t __ex = __excepts;
|
||||
|
||||
fesetexceptflag(&__ex, __excepts); /* XXX */
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fetestexcept(int __excepts)
|
||||
{
|
||||
fexcept_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
return (__fpsr & __excepts);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fegetround(void)
|
||||
{
|
||||
|
||||
/*
|
||||
* Apparently, the rounding mode is specified as part of the
|
||||
* instruction format on ARM, so the dynamic rounding mode is
|
||||
* indeterminate. Some FPUs may differ.
|
||||
*/
|
||||
return (-1);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fesetround(int __round)
|
||||
{
|
||||
|
||||
return (-1);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fegetenv(fenv_t *__envp)
|
||||
{
|
||||
|
||||
__rfs(__envp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
feholdexcept(fenv_t *__envp)
|
||||
{
|
||||
fenv_t __env;
|
||||
|
||||
__rfs(&__env);
|
||||
*__envp = __env;
|
||||
__env &= ~(FE_ALL_EXCEPT | _ENABLE_MASK);
|
||||
__wfs(__env);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fesetenv(const fenv_t *__envp)
|
||||
{
|
||||
|
||||
__wfs(*__envp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
feupdateenv(const fenv_t *__envp)
|
||||
{
|
||||
fexcept_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
__wfs(*__envp);
|
||||
feraiseexcept(__fpsr & FE_ALL_EXCEPT);
|
||||
return (0);
|
||||
}
|
||||
|
||||
#if __BSD_VISIBLE
|
||||
|
||||
static __inline int
|
||||
feenableexcept(int __mask)
|
||||
{
|
||||
fenv_t __old_fpsr, __new_fpsr;
|
||||
|
||||
__rfs(&__old_fpsr);
|
||||
__new_fpsr = __old_fpsr | (__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT;
|
||||
__wfs(__new_fpsr);
|
||||
return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fedisableexcept(int __mask)
|
||||
{
|
||||
fenv_t __old_fpsr, __new_fpsr;
|
||||
|
||||
__rfs(&__old_fpsr);
|
||||
__new_fpsr = __old_fpsr & ~((__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT);
|
||||
__wfs(__new_fpsr);
|
||||
return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
fegetexcept(void)
|
||||
{
|
||||
fenv_t __fpsr;
|
||||
|
||||
__rfs(&__fpsr);
|
||||
return ((__fpsr & _ENABLE_MASK) >> _FPUSW_SHIFT);
|
||||
}
|
||||
|
||||
#endif /* __BSD_VISIBLE */
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* !_FENV_H_ */
|
||||
1
ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
Symbolic link
1
ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../common/include/arpa/inet.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/arpa/nameser.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/4level-fixup.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/audit_dir_write.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/__ffs.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/atomic.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/ffz.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/find.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/fls.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/fls64.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/le.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../../common/include/asm-generic/bitops/non-atomic.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/bug.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/cputime.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/emergency-restart.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/errno-base.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/errno.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/fcntl.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/futex.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/ioctl.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/ipc.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/local.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/memory_model.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/mman.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/mutex-xchg.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/percpu.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/pgtable-nopud.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/pgtable.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/poll.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/resource.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/sections.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/siginfo.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/signal.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/tlb.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/topology.h
|
||||
@@ -0,0 +1 @@
|
||||
../../../../common/include/asm-generic/xor.h
|
||||
@@ -0,0 +1,42 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ARM_A_OUT_H__
|
||||
#define __ARM_A_OUT_H__
|
||||
|
||||
#include <linux/personality.h>
|
||||
#include <asm/types.h>
|
||||
|
||||
struct exec
|
||||
{
|
||||
__u32 a_info;
|
||||
__u32 a_text;
|
||||
__u32 a_data;
|
||||
__u32 a_bss;
|
||||
__u32 a_syms;
|
||||
__u32 a_entry;
|
||||
__u32 a_trsize;
|
||||
__u32 a_drsize;
|
||||
};
|
||||
|
||||
#define N_TXTADDR(a) (0x00008000)
|
||||
|
||||
#define N_TRSIZE(a) ((a).a_trsize)
|
||||
#define N_DRSIZE(a) ((a).a_drsize)
|
||||
#define N_SYMSIZE(a) ((a).a_syms)
|
||||
|
||||
#define M_ARM 103
|
||||
|
||||
#ifndef LIBRARY_START_TEXT
|
||||
#define LIBRARY_START_TEXT (0x00c00000)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,27 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_PERSEUS2_H
|
||||
#define __ASM_ARCH_OMAP_PERSEUS2_H
|
||||
|
||||
#include <asm/arch/fpga.h>
|
||||
|
||||
#ifndef OMAP_SDRAM_DEVICE
|
||||
#define OMAP_SDRAM_DEVICE D256M_1X16_4B
|
||||
#endif
|
||||
|
||||
#define MAXIRQNUM IH_BOARD_BASE
|
||||
#define MAXFIQNUM MAXIRQNUM
|
||||
#define MAXSWINUM MAXIRQNUM
|
||||
|
||||
#define NR_IRQS (MAXIRQNUM + 1)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,163 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _OMAP_BOARD_H
|
||||
#define _OMAP_BOARD_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#include <asm/arch/gpio-switch.h>
|
||||
|
||||
#define OMAP_TAG_CLOCK 0x4f01
|
||||
#define OMAP_TAG_MMC 0x4f02
|
||||
#define OMAP_TAG_SERIAL_CONSOLE 0x4f03
|
||||
#define OMAP_TAG_USB 0x4f04
|
||||
#define OMAP_TAG_LCD 0x4f05
|
||||
#define OMAP_TAG_GPIO_SWITCH 0x4f06
|
||||
#define OMAP_TAG_UART 0x4f07
|
||||
#define OMAP_TAG_FBMEM 0x4f08
|
||||
#define OMAP_TAG_STI_CONSOLE 0x4f09
|
||||
#define OMAP_TAG_CAMERA_SENSOR 0x4f0a
|
||||
#define OMAP_TAG_BT 0x4f0b
|
||||
|
||||
#define OMAP_TAG_BOOT_REASON 0x4f80
|
||||
#define OMAP_TAG_FLASH_PART 0x4f81
|
||||
#define OMAP_TAG_VERSION_STR 0x4f82
|
||||
|
||||
struct omap_clock_config {
|
||||
|
||||
u8 system_clock_type;
|
||||
};
|
||||
|
||||
struct omap_mmc_conf {
|
||||
unsigned enabled:1;
|
||||
|
||||
unsigned nomux:1;
|
||||
|
||||
unsigned cover:1;
|
||||
|
||||
unsigned wire4:1;
|
||||
s16 power_pin;
|
||||
s16 switch_pin;
|
||||
s16 wp_pin;
|
||||
};
|
||||
|
||||
struct omap_mmc_config {
|
||||
struct omap_mmc_conf mmc[2];
|
||||
};
|
||||
|
||||
struct omap_serial_console_config {
|
||||
u8 console_uart;
|
||||
u32 console_speed;
|
||||
};
|
||||
|
||||
struct omap_sti_console_config {
|
||||
unsigned enable:1;
|
||||
u8 channel;
|
||||
};
|
||||
|
||||
struct omap_camera_sensor_config {
|
||||
u16 reset_gpio;
|
||||
int (*power_on)(void * data);
|
||||
int (*power_off)(void * data);
|
||||
};
|
||||
|
||||
struct omap_usb_config {
|
||||
|
||||
unsigned register_host:1;
|
||||
unsigned register_dev:1;
|
||||
u8 otg;
|
||||
|
||||
u8 hmc_mode;
|
||||
|
||||
u8 rwc;
|
||||
|
||||
u8 pins[3];
|
||||
};
|
||||
|
||||
struct omap_lcd_config {
|
||||
char panel_name[16];
|
||||
char ctrl_name[16];
|
||||
s16 nreset_gpio;
|
||||
u8 data_lines;
|
||||
};
|
||||
|
||||
struct device;
|
||||
struct fb_info;
|
||||
struct omap_backlight_config {
|
||||
int default_intensity;
|
||||
int (*set_power)(struct device *dev, int state);
|
||||
int (*check_fb)(struct fb_info *fb);
|
||||
};
|
||||
|
||||
struct omap_fbmem_config {
|
||||
u32 start;
|
||||
u32 size;
|
||||
};
|
||||
|
||||
struct omap_pwm_led_platform_data {
|
||||
const char *name;
|
||||
int intensity_timer;
|
||||
int blink_timer;
|
||||
void (*set_power)(struct omap_pwm_led_platform_data *self, int on_off);
|
||||
};
|
||||
|
||||
struct omap_gpio_switch_config {
|
||||
char name[12];
|
||||
u16 gpio;
|
||||
int flags:4;
|
||||
int type:4;
|
||||
int key_code:24;
|
||||
};
|
||||
|
||||
struct omap_uart_config {
|
||||
|
||||
unsigned int enabled_uarts;
|
||||
};
|
||||
|
||||
struct omap_flash_part_config {
|
||||
char part_table[0];
|
||||
};
|
||||
|
||||
struct omap_boot_reason_config {
|
||||
char reason_str[12];
|
||||
};
|
||||
|
||||
struct omap_version_config {
|
||||
char component[12];
|
||||
char version[12];
|
||||
};
|
||||
|
||||
struct omap_board_config_entry {
|
||||
u16 tag;
|
||||
u16 len;
|
||||
u8 data[0];
|
||||
};
|
||||
|
||||
struct omap_board_config_kernel {
|
||||
u16 tag;
|
||||
const void *data;
|
||||
};
|
||||
|
||||
struct omap_bluetooth_config {
|
||||
u8 chip_type;
|
||||
u8 bt_uart;
|
||||
u8 bd_addr[6];
|
||||
u8 bt_sysclk;
|
||||
int bt_wakeup_gpio;
|
||||
int host_wakeup_gpio;
|
||||
int reset_gpio;
|
||||
};
|
||||
|
||||
#define omap_get_config(tag, type) ((const type *) __omap_get_config((tag), sizeof(type), 0))
|
||||
#define omap_get_nr_config(tag, type, nr) ((const type *) __omap_get_config((tag), sizeof(type), (nr)))
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,57 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_CPU_H
|
||||
#define __ASM_ARCH_OMAP_CPU_H
|
||||
|
||||
#define omap2_cpu_rev() ((system_rev >> 8) & 0x0f)
|
||||
|
||||
#undef MULTI_OMAP1
|
||||
#undef MULTI_OMAP2
|
||||
#undef OMAP_NAME
|
||||
|
||||
#define GET_OMAP_CLASS (system_rev & 0xff)
|
||||
|
||||
#define IS_OMAP_CLASS(class, id) static inline int is_omap ##class (void) { return (GET_OMAP_CLASS == (id)) ? 1 : 0; }
|
||||
|
||||
#define GET_OMAP_SUBCLASS ((system_rev >> 20) & 0x0fff)
|
||||
|
||||
#define IS_OMAP_SUBCLASS(subclass, id) static inline int is_omap ##subclass (void) { return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; }
|
||||
|
||||
#define cpu_is_omap7xx() 0
|
||||
#define cpu_is_omap15xx() 0
|
||||
#define cpu_is_omap16xx() 0
|
||||
#define cpu_is_omap24xx() 0
|
||||
#define cpu_is_omap242x() 0
|
||||
#define cpu_is_omap243x() 0
|
||||
#ifdef MULTI_OMAP1
|
||||
#else
|
||||
#endif
|
||||
#define GET_OMAP_TYPE ((system_rev >> 16) & 0xffff)
|
||||
#define IS_OMAP_TYPE(type, id) static inline int is_omap ##type (void) { return (GET_OMAP_TYPE == (id)) ? 1 : 0; }
|
||||
#define cpu_is_omap310() 0
|
||||
#define cpu_is_omap730() 0
|
||||
#define cpu_is_omap1510() 0
|
||||
#define cpu_is_omap1610() 0
|
||||
#define cpu_is_omap5912() 0
|
||||
#define cpu_is_omap1611() 0
|
||||
#define cpu_is_omap1621() 0
|
||||
#define cpu_is_omap1710() 0
|
||||
#define cpu_is_omap2420() 0
|
||||
#define cpu_is_omap2422() 0
|
||||
#define cpu_is_omap2423() 0
|
||||
#define cpu_is_omap2430() 0
|
||||
#ifdef MULTI_OMAP1
|
||||
#else
|
||||
#endif
|
||||
#define cpu_class_is_omap1() (cpu_is_omap730() || cpu_is_omap15xx() || cpu_is_omap16xx())
|
||||
#define cpu_class_is_omap2() cpu_is_omap24xx()
|
||||
#endif
|
||||
@@ -0,0 +1,318 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_DMA_H
|
||||
#define __ASM_ARCH_DMA_H
|
||||
|
||||
#define OMAP_DMA_BASE (0xfffed800)
|
||||
#define OMAP_DMA_GCR (OMAP_DMA_BASE + 0x400)
|
||||
#define OMAP_DMA_GSCR (OMAP_DMA_BASE + 0x404)
|
||||
#define OMAP_DMA_GRST (OMAP_DMA_BASE + 0x408)
|
||||
#define OMAP_DMA_HW_ID (OMAP_DMA_BASE + 0x442)
|
||||
#define OMAP_DMA_PCH2_ID (OMAP_DMA_BASE + 0x444)
|
||||
#define OMAP_DMA_PCH0_ID (OMAP_DMA_BASE + 0x446)
|
||||
#define OMAP_DMA_PCH1_ID (OMAP_DMA_BASE + 0x448)
|
||||
#define OMAP_DMA_PCHG_ID (OMAP_DMA_BASE + 0x44a)
|
||||
#define OMAP_DMA_PCHD_ID (OMAP_DMA_BASE + 0x44c)
|
||||
#define OMAP_DMA_CAPS_0_U (OMAP_DMA_BASE + 0x44e)
|
||||
#define OMAP_DMA_CAPS_0_L (OMAP_DMA_BASE + 0x450)
|
||||
#define OMAP_DMA_CAPS_1_U (OMAP_DMA_BASE + 0x452)
|
||||
#define OMAP_DMA_CAPS_1_L (OMAP_DMA_BASE + 0x454)
|
||||
#define OMAP_DMA_CAPS_2 (OMAP_DMA_BASE + 0x456)
|
||||
#define OMAP_DMA_CAPS_3 (OMAP_DMA_BASE + 0x458)
|
||||
#define OMAP_DMA_CAPS_4 (OMAP_DMA_BASE + 0x45a)
|
||||
#define OMAP_DMA_PCH2_SR (OMAP_DMA_BASE + 0x460)
|
||||
#define OMAP_DMA_PCH0_SR (OMAP_DMA_BASE + 0x480)
|
||||
#define OMAP_DMA_PCH1_SR (OMAP_DMA_BASE + 0x482)
|
||||
#define OMAP_DMA_PCHD_SR (OMAP_DMA_BASE + 0x4c0)
|
||||
|
||||
#define OMAP24XX_DMA_BASE (L4_24XX_BASE + 0x56000)
|
||||
#define OMAP_DMA4_REVISION (OMAP24XX_DMA_BASE + 0x00)
|
||||
#define OMAP_DMA4_GCR_REG (OMAP24XX_DMA_BASE + 0x78)
|
||||
#define OMAP_DMA4_IRQSTATUS_L0 (OMAP24XX_DMA_BASE + 0x08)
|
||||
#define OMAP_DMA4_IRQSTATUS_L1 (OMAP24XX_DMA_BASE + 0x0c)
|
||||
#define OMAP_DMA4_IRQSTATUS_L2 (OMAP24XX_DMA_BASE + 0x10)
|
||||
#define OMAP_DMA4_IRQSTATUS_L3 (OMAP24XX_DMA_BASE + 0x14)
|
||||
#define OMAP_DMA4_IRQENABLE_L0 (OMAP24XX_DMA_BASE + 0x18)
|
||||
#define OMAP_DMA4_IRQENABLE_L1 (OMAP24XX_DMA_BASE + 0x1c)
|
||||
#define OMAP_DMA4_IRQENABLE_L2 (OMAP24XX_DMA_BASE + 0x20)
|
||||
#define OMAP_DMA4_IRQENABLE_L3 (OMAP24XX_DMA_BASE + 0x24)
|
||||
#define OMAP_DMA4_SYSSTATUS (OMAP24XX_DMA_BASE + 0x28)
|
||||
#define OMAP_DMA4_CAPS_0 (OMAP24XX_DMA_BASE + 0x64)
|
||||
#define OMAP_DMA4_CAPS_2 (OMAP24XX_DMA_BASE + 0x6c)
|
||||
#define OMAP_DMA4_CAPS_3 (OMAP24XX_DMA_BASE + 0x70)
|
||||
#define OMAP_DMA4_CAPS_4 (OMAP24XX_DMA_BASE + 0x74)
|
||||
|
||||
#define OMAP_LOGICAL_DMA_CH_COUNT 32
|
||||
|
||||
#define OMAP_DMA_CCR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x80)
|
||||
#define OMAP_DMA_CLNK_CTRL_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x84)
|
||||
#define OMAP_DMA_CICR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x88)
|
||||
#define OMAP_DMA_CSR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x8c)
|
||||
#define OMAP_DMA_CSDP_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x90)
|
||||
#define OMAP_DMA_CEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x94)
|
||||
#define OMAP_DMA_CFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x98)
|
||||
#define OMAP_DMA_CSEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa4)
|
||||
#define OMAP_DMA_CSFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa8)
|
||||
#define OMAP_DMA_CDEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xac)
|
||||
#define OMAP_DMA_CDFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb0)
|
||||
#define OMAP_DMA_CSAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb4)
|
||||
#define OMAP_DMA_CDAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb8)
|
||||
|
||||
#define OMAP1_DMA_CSSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x08)
|
||||
#define OMAP1_DMA_CSSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0a)
|
||||
#define OMAP1_DMA_CDSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0c)
|
||||
#define OMAP1_DMA_CDSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0e)
|
||||
#define OMAP1_DMA_COLOR_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x20)
|
||||
#define OMAP1_DMA_CCR2_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x24)
|
||||
#define OMAP1_DMA_COLOR_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x22)
|
||||
#define OMAP1_DMA_LCH_CTRL_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x2a)
|
||||
|
||||
#define OMAP2_DMA_CSSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x9c)
|
||||
#define OMAP2_DMA_CDSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa0)
|
||||
#define OMAP2_DMA_CCEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xbc)
|
||||
#define OMAP2_DMA_CCFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc0)
|
||||
#define OMAP2_DMA_COLOR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc4)
|
||||
|
||||
#define OMAP_DMA_NO_DEVICE 0
|
||||
#define OMAP_DMA_MCSI1_TX 1
|
||||
#define OMAP_DMA_MCSI1_RX 2
|
||||
#define OMAP_DMA_I2C_RX 3
|
||||
#define OMAP_DMA_I2C_TX 4
|
||||
#define OMAP_DMA_EXT_NDMA_REQ 5
|
||||
#define OMAP_DMA_EXT_NDMA_REQ2 6
|
||||
#define OMAP_DMA_UWIRE_TX 7
|
||||
#define OMAP_DMA_MCBSP1_TX 8
|
||||
#define OMAP_DMA_MCBSP1_RX 9
|
||||
#define OMAP_DMA_MCBSP3_TX 10
|
||||
#define OMAP_DMA_MCBSP3_RX 11
|
||||
#define OMAP_DMA_UART1_TX 12
|
||||
#define OMAP_DMA_UART1_RX 13
|
||||
#define OMAP_DMA_UART2_TX 14
|
||||
#define OMAP_DMA_UART2_RX 15
|
||||
#define OMAP_DMA_MCBSP2_TX 16
|
||||
#define OMAP_DMA_MCBSP2_RX 17
|
||||
#define OMAP_DMA_UART3_TX 18
|
||||
#define OMAP_DMA_UART3_RX 19
|
||||
#define OMAP_DMA_CAMERA_IF_RX 20
|
||||
#define OMAP_DMA_MMC_TX 21
|
||||
#define OMAP_DMA_MMC_RX 22
|
||||
#define OMAP_DMA_NAND 23
|
||||
#define OMAP_DMA_IRQ_LCD_LINE 24
|
||||
#define OMAP_DMA_MEMORY_STICK 25
|
||||
#define OMAP_DMA_USB_W2FC_RX0 26
|
||||
#define OMAP_DMA_USB_W2FC_RX1 27
|
||||
#define OMAP_DMA_USB_W2FC_RX2 28
|
||||
#define OMAP_DMA_USB_W2FC_TX0 29
|
||||
#define OMAP_DMA_USB_W2FC_TX1 30
|
||||
#define OMAP_DMA_USB_W2FC_TX2 31
|
||||
|
||||
#define OMAP_DMA_CRYPTO_DES_IN 32
|
||||
#define OMAP_DMA_SPI_TX 33
|
||||
#define OMAP_DMA_SPI_RX 34
|
||||
#define OMAP_DMA_CRYPTO_HASH 35
|
||||
#define OMAP_DMA_CCP_ATTN 36
|
||||
#define OMAP_DMA_CCP_FIFO_NOT_EMPTY 37
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_0 38
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_0 39
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_1 40
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_1 41
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_2 42
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_2 43
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_3 44
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_3 45
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_4 46
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_4 47
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_5 48
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_5 49
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_6 50
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_6 51
|
||||
#define OMAP_DMA_CMT_APE_TX_CHAN_7 52
|
||||
#define OMAP_DMA_CMT_APE_RV_CHAN_7 53
|
||||
#define OMAP_DMA_MMC2_TX 54
|
||||
#define OMAP_DMA_MMC2_RX 55
|
||||
#define OMAP_DMA_CRYPTO_DES_OUT 56
|
||||
|
||||
#define OMAP24XX_DMA_NO_DEVICE 0
|
||||
#define OMAP24XX_DMA_XTI_DMA 1
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ0 2
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ1 3
|
||||
#define OMAP24XX_DMA_GPMC 4
|
||||
#define OMAP24XX_DMA_GFX 5
|
||||
#define OMAP24XX_DMA_DSS 6
|
||||
#define OMAP24XX_DMA_VLYNQ_TX 7
|
||||
#define OMAP24XX_DMA_CWT 8
|
||||
#define OMAP24XX_DMA_AES_TX 9
|
||||
#define OMAP24XX_DMA_AES_RX 10
|
||||
#define OMAP24XX_DMA_DES_TX 11
|
||||
#define OMAP24XX_DMA_DES_RX 12
|
||||
#define OMAP24XX_DMA_SHA1MD5_RX 13
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ2 14
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ3 15
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ4 16
|
||||
#define OMAP24XX_DMA_EAC_AC_RD 17
|
||||
#define OMAP24XX_DMA_EAC_AC_WR 18
|
||||
#define OMAP24XX_DMA_EAC_MD_UL_RD 19
|
||||
#define OMAP24XX_DMA_EAC_MD_UL_WR 20
|
||||
#define OMAP24XX_DMA_EAC_MD_DL_RD 21
|
||||
#define OMAP24XX_DMA_EAC_MD_DL_WR 22
|
||||
#define OMAP24XX_DMA_EAC_BT_UL_RD 23
|
||||
#define OMAP24XX_DMA_EAC_BT_UL_WR 24
|
||||
#define OMAP24XX_DMA_EAC_BT_DL_RD 25
|
||||
#define OMAP24XX_DMA_EAC_BT_DL_WR 26
|
||||
#define OMAP24XX_DMA_I2C1_TX 27
|
||||
#define OMAP24XX_DMA_I2C1_RX 28
|
||||
#define OMAP24XX_DMA_I2C2_TX 29
|
||||
#define OMAP24XX_DMA_I2C2_RX 30
|
||||
#define OMAP24XX_DMA_MCBSP1_TX 31
|
||||
#define OMAP24XX_DMA_MCBSP1_RX 32
|
||||
#define OMAP24XX_DMA_MCBSP2_TX 33
|
||||
#define OMAP24XX_DMA_MCBSP2_RX 34
|
||||
#define OMAP24XX_DMA_SPI1_TX0 35
|
||||
#define OMAP24XX_DMA_SPI1_RX0 36
|
||||
#define OMAP24XX_DMA_SPI1_TX1 37
|
||||
#define OMAP24XX_DMA_SPI1_RX1 38
|
||||
#define OMAP24XX_DMA_SPI1_TX2 39
|
||||
#define OMAP24XX_DMA_SPI1_RX2 40
|
||||
#define OMAP24XX_DMA_SPI1_TX3 41
|
||||
#define OMAP24XX_DMA_SPI1_RX3 42
|
||||
#define OMAP24XX_DMA_SPI2_TX0 43
|
||||
#define OMAP24XX_DMA_SPI2_RX0 44
|
||||
#define OMAP24XX_DMA_SPI2_TX1 45
|
||||
#define OMAP24XX_DMA_SPI2_RX1 46
|
||||
|
||||
#define OMAP24XX_DMA_UART1_TX 49
|
||||
#define OMAP24XX_DMA_UART1_RX 50
|
||||
#define OMAP24XX_DMA_UART2_TX 51
|
||||
#define OMAP24XX_DMA_UART2_RX 52
|
||||
#define OMAP24XX_DMA_UART3_TX 53
|
||||
#define OMAP24XX_DMA_UART3_RX 54
|
||||
#define OMAP24XX_DMA_USB_W2FC_TX0 55
|
||||
#define OMAP24XX_DMA_USB_W2FC_RX0 56
|
||||
#define OMAP24XX_DMA_USB_W2FC_TX1 57
|
||||
#define OMAP24XX_DMA_USB_W2FC_RX1 58
|
||||
#define OMAP24XX_DMA_USB_W2FC_TX2 59
|
||||
#define OMAP24XX_DMA_USB_W2FC_RX2 60
|
||||
#define OMAP24XX_DMA_MMC1_TX 61
|
||||
#define OMAP24XX_DMA_MMC1_RX 62
|
||||
#define OMAP24XX_DMA_MS 63
|
||||
#define OMAP24XX_DMA_EXT_DMAREQ5 64
|
||||
|
||||
#define OMAP1510_DMA_LCD_BASE (0xfffedb00)
|
||||
#define OMAP1510_DMA_LCD_CTRL (OMAP1510_DMA_LCD_BASE + 0x00)
|
||||
#define OMAP1510_DMA_LCD_TOP_F1_L (OMAP1510_DMA_LCD_BASE + 0x02)
|
||||
#define OMAP1510_DMA_LCD_TOP_F1_U (OMAP1510_DMA_LCD_BASE + 0x04)
|
||||
#define OMAP1510_DMA_LCD_BOT_F1_L (OMAP1510_DMA_LCD_BASE + 0x06)
|
||||
#define OMAP1510_DMA_LCD_BOT_F1_U (OMAP1510_DMA_LCD_BASE + 0x08)
|
||||
|
||||
#define OMAP1610_DMA_LCD_BASE (0xfffee300)
|
||||
#define OMAP1610_DMA_LCD_CSDP (OMAP1610_DMA_LCD_BASE + 0xc0)
|
||||
#define OMAP1610_DMA_LCD_CCR (OMAP1610_DMA_LCD_BASE + 0xc2)
|
||||
#define OMAP1610_DMA_LCD_CTRL (OMAP1610_DMA_LCD_BASE + 0xc4)
|
||||
#define OMAP1610_DMA_LCD_TOP_B1_L (OMAP1610_DMA_LCD_BASE + 0xc8)
|
||||
#define OMAP1610_DMA_LCD_TOP_B1_U (OMAP1610_DMA_LCD_BASE + 0xca)
|
||||
#define OMAP1610_DMA_LCD_BOT_B1_L (OMAP1610_DMA_LCD_BASE + 0xcc)
|
||||
#define OMAP1610_DMA_LCD_BOT_B1_U (OMAP1610_DMA_LCD_BASE + 0xce)
|
||||
#define OMAP1610_DMA_LCD_TOP_B2_L (OMAP1610_DMA_LCD_BASE + 0xd0)
|
||||
#define OMAP1610_DMA_LCD_TOP_B2_U (OMAP1610_DMA_LCD_BASE + 0xd2)
|
||||
#define OMAP1610_DMA_LCD_BOT_B2_L (OMAP1610_DMA_LCD_BASE + 0xd4)
|
||||
#define OMAP1610_DMA_LCD_BOT_B2_U (OMAP1610_DMA_LCD_BASE + 0xd6)
|
||||
#define OMAP1610_DMA_LCD_SRC_EI_B1 (OMAP1610_DMA_LCD_BASE + 0xd8)
|
||||
#define OMAP1610_DMA_LCD_SRC_FI_B1_L (OMAP1610_DMA_LCD_BASE + 0xda)
|
||||
#define OMAP1610_DMA_LCD_SRC_EN_B1 (OMAP1610_DMA_LCD_BASE + 0xe0)
|
||||
#define OMAP1610_DMA_LCD_SRC_FN_B1 (OMAP1610_DMA_LCD_BASE + 0xe4)
|
||||
#define OMAP1610_DMA_LCD_LCH_CTRL (OMAP1610_DMA_LCD_BASE + 0xea)
|
||||
#define OMAP1610_DMA_LCD_SRC_FI_B1_U (OMAP1610_DMA_LCD_BASE + 0xf4)
|
||||
|
||||
#define OMAP1_DMA_TOUT_IRQ (1 << 0)
|
||||
#define OMAP_DMA_DROP_IRQ (1 << 1)
|
||||
#define OMAP_DMA_HALF_IRQ (1 << 2)
|
||||
#define OMAP_DMA_FRAME_IRQ (1 << 3)
|
||||
#define OMAP_DMA_LAST_IRQ (1 << 4)
|
||||
#define OMAP_DMA_BLOCK_IRQ (1 << 5)
|
||||
#define OMAP1_DMA_SYNC_IRQ (1 << 6)
|
||||
#define OMAP2_DMA_PKT_IRQ (1 << 7)
|
||||
#define OMAP2_DMA_TRANS_ERR_IRQ (1 << 8)
|
||||
#define OMAP2_DMA_SECURE_ERR_IRQ (1 << 9)
|
||||
#define OMAP2_DMA_SUPERVISOR_ERR_IRQ (1 << 10)
|
||||
#define OMAP2_DMA_MISALIGNED_ERR_IRQ (1 << 11)
|
||||
|
||||
#define OMAP_DMA_DATA_TYPE_S8 0x00
|
||||
#define OMAP_DMA_DATA_TYPE_S16 0x01
|
||||
#define OMAP_DMA_DATA_TYPE_S32 0x02
|
||||
|
||||
#define OMAP_DMA_SYNC_ELEMENT 0x00
|
||||
#define OMAP_DMA_SYNC_FRAME 0x01
|
||||
#define OMAP_DMA_SYNC_BLOCK 0x02
|
||||
|
||||
#define OMAP_DMA_PORT_EMIFF 0x00
|
||||
#define OMAP_DMA_PORT_EMIFS 0x01
|
||||
#define OMAP_DMA_PORT_OCP_T1 0x02
|
||||
#define OMAP_DMA_PORT_TIPB 0x03
|
||||
#define OMAP_DMA_PORT_OCP_T2 0x04
|
||||
#define OMAP_DMA_PORT_MPUI 0x05
|
||||
|
||||
#define OMAP_DMA_AMODE_CONSTANT 0x00
|
||||
#define OMAP_DMA_AMODE_POST_INC 0x01
|
||||
#define OMAP_DMA_AMODE_SINGLE_IDX 0x02
|
||||
#define OMAP_DMA_AMODE_DOUBLE_IDX 0x03
|
||||
|
||||
enum {
|
||||
OMAP_LCD_DMA_B1_TOP,
|
||||
OMAP_LCD_DMA_B1_BOTTOM,
|
||||
OMAP_LCD_DMA_B2_TOP,
|
||||
OMAP_LCD_DMA_B2_BOTTOM
|
||||
};
|
||||
|
||||
enum omap_dma_burst_mode {
|
||||
OMAP_DMA_DATA_BURST_DIS = 0,
|
||||
OMAP_DMA_DATA_BURST_4,
|
||||
OMAP_DMA_DATA_BURST_8,
|
||||
OMAP_DMA_DATA_BURST_16,
|
||||
};
|
||||
|
||||
enum omap_dma_color_mode {
|
||||
OMAP_DMA_COLOR_DIS = 0,
|
||||
OMAP_DMA_CONSTANT_FILL,
|
||||
OMAP_DMA_TRANSPARENT_COPY
|
||||
};
|
||||
|
||||
enum omap_dma_write_mode {
|
||||
OMAP_DMA_WRITE_NON_POSTED = 0,
|
||||
OMAP_DMA_WRITE_POSTED,
|
||||
OMAP_DMA_WRITE_LAST_NON_POSTED
|
||||
};
|
||||
|
||||
struct omap_dma_channel_params {
|
||||
int data_type;
|
||||
int elem_count;
|
||||
int frame_count;
|
||||
|
||||
int src_port;
|
||||
int src_amode;
|
||||
unsigned long src_start;
|
||||
int src_ei;
|
||||
int src_fi;
|
||||
|
||||
int dst_port;
|
||||
int dst_amode;
|
||||
unsigned long dst_start;
|
||||
int dst_ei;
|
||||
int dst_fi;
|
||||
|
||||
int trigger;
|
||||
int sync_mode;
|
||||
int src_or_dst_synch;
|
||||
|
||||
int ie;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,160 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_FPGA_H
|
||||
#define __ASM_ARCH_OMAP_FPGA_H
|
||||
|
||||
#define omap1510_fpga_init_irq() (0)
|
||||
|
||||
#define fpga_read(reg) __raw_readb(reg)
|
||||
#define fpga_write(val, reg) __raw_writeb(val, reg)
|
||||
|
||||
#define H2P2_DBG_FPGA_BASE 0xE8000000
|
||||
#define H2P2_DBG_FPGA_SIZE SZ_4K
|
||||
#define H2P2_DBG_FPGA_START 0x04000000
|
||||
|
||||
#define H2P2_DBG_FPGA_ETHR_START (H2P2_DBG_FPGA_START + 0x300)
|
||||
#define H2P2_DBG_FPGA_FPGA_REV (H2P2_DBG_FPGA_BASE + 0x10)
|
||||
#define H2P2_DBG_FPGA_BOARD_REV (H2P2_DBG_FPGA_BASE + 0x12)
|
||||
#define H2P2_DBG_FPGA_GPIO (H2P2_DBG_FPGA_BASE + 0x14)
|
||||
#define H2P2_DBG_FPGA_LEDS (H2P2_DBG_FPGA_BASE + 0x16)
|
||||
#define H2P2_DBG_FPGA_MISC_INPUTS (H2P2_DBG_FPGA_BASE + 0x18)
|
||||
#define H2P2_DBG_FPGA_LAN_STATUS (H2P2_DBG_FPGA_BASE + 0x1A)
|
||||
#define H2P2_DBG_FPGA_LAN_RESET (H2P2_DBG_FPGA_BASE + 0x1C)
|
||||
|
||||
struct h2p2_dbg_fpga {
|
||||
|
||||
u16 smc91x[8];
|
||||
|
||||
u16 fpga_rev;
|
||||
u16 board_rev;
|
||||
u16 gpio_outputs;
|
||||
u16 leds;
|
||||
|
||||
u16 misc_inputs;
|
||||
u16 lan_status;
|
||||
u16 lan_reset;
|
||||
u16 reserved0;
|
||||
|
||||
u16 ps2_data;
|
||||
u16 ps2_ctrl;
|
||||
|
||||
};
|
||||
|
||||
#define H2P2_DBG_FPGA_LED_GREEN (1 << 15)
|
||||
#define H2P2_DBG_FPGA_LED_AMBER (1 << 14)
|
||||
#define H2P2_DBG_FPGA_LED_RED (1 << 13)
|
||||
#define H2P2_DBG_FPGA_LED_BLUE (1 << 12)
|
||||
|
||||
#define H2P2_DBG_FPGA_LOAD_METER (1 << 0)
|
||||
#define H2P2_DBG_FPGA_LOAD_METER_SIZE 11
|
||||
#define H2P2_DBG_FPGA_LOAD_METER_MASK ((1 << H2P2_DBG_FPGA_LOAD_METER_SIZE) - 1)
|
||||
|
||||
#define H2P2_DBG_FPGA_P2_LED_TIMER (1 << 0)
|
||||
#define H2P2_DBG_FPGA_P2_LED_IDLE (1 << 1)
|
||||
|
||||
#define OMAP1510_FPGA_BASE 0xE8000000
|
||||
#define OMAP1510_FPGA_SIZE SZ_4K
|
||||
#define OMAP1510_FPGA_START 0x08000000
|
||||
|
||||
#define OMAP1510_FPGA_REV_LOW (OMAP1510_FPGA_BASE + 0x0)
|
||||
#define OMAP1510_FPGA_REV_HIGH (OMAP1510_FPGA_BASE + 0x1)
|
||||
|
||||
#define OMAP1510_FPGA_LCD_PANEL_CONTROL (OMAP1510_FPGA_BASE + 0x2)
|
||||
#define OMAP1510_FPGA_LED_DIGIT (OMAP1510_FPGA_BASE + 0x3)
|
||||
#define INNOVATOR_FPGA_HID_SPI (OMAP1510_FPGA_BASE + 0x4)
|
||||
#define OMAP1510_FPGA_POWER (OMAP1510_FPGA_BASE + 0x5)
|
||||
|
||||
#define OMAP1510_FPGA_ISR_LO (OMAP1510_FPGA_BASE + 0x6)
|
||||
#define OMAP1510_FPGA_ISR_HI (OMAP1510_FPGA_BASE + 0x7)
|
||||
|
||||
#define OMAP1510_FPGA_IMR_LO (OMAP1510_FPGA_BASE + 0x8)
|
||||
#define OMAP1510_FPGA_IMR_HI (OMAP1510_FPGA_BASE + 0x9)
|
||||
|
||||
#define OMAP1510_FPGA_HOST_RESET (OMAP1510_FPGA_BASE + 0xa)
|
||||
#define OMAP1510_FPGA_RST (OMAP1510_FPGA_BASE + 0xb)
|
||||
|
||||
#define OMAP1510_FPGA_AUDIO (OMAP1510_FPGA_BASE + 0xc)
|
||||
#define OMAP1510_FPGA_DIP (OMAP1510_FPGA_BASE + 0xe)
|
||||
#define OMAP1510_FPGA_FPGA_IO (OMAP1510_FPGA_BASE + 0xf)
|
||||
#define OMAP1510_FPGA_UART1 (OMAP1510_FPGA_BASE + 0x14)
|
||||
#define OMAP1510_FPGA_UART2 (OMAP1510_FPGA_BASE + 0x15)
|
||||
#define OMAP1510_FPGA_OMAP1510_STATUS (OMAP1510_FPGA_BASE + 0x16)
|
||||
#define OMAP1510_FPGA_BOARD_REV (OMAP1510_FPGA_BASE + 0x18)
|
||||
#define OMAP1510P1_PPT_DATA (OMAP1510_FPGA_BASE + 0x100)
|
||||
#define OMAP1510P1_PPT_STATUS (OMAP1510_FPGA_BASE + 0x101)
|
||||
#define OMAP1510P1_PPT_CONTROL (OMAP1510_FPGA_BASE + 0x102)
|
||||
|
||||
#define OMAP1510_FPGA_TOUCHSCREEN (OMAP1510_FPGA_BASE + 0x204)
|
||||
|
||||
#define INNOVATOR_FPGA_INFO (OMAP1510_FPGA_BASE + 0x205)
|
||||
#define INNOVATOR_FPGA_LCD_BRIGHT_LO (OMAP1510_FPGA_BASE + 0x206)
|
||||
#define INNOVATOR_FPGA_LCD_BRIGHT_HI (OMAP1510_FPGA_BASE + 0x207)
|
||||
#define INNOVATOR_FPGA_LED_GRN_LO (OMAP1510_FPGA_BASE + 0x208)
|
||||
#define INNOVATOR_FPGA_LED_GRN_HI (OMAP1510_FPGA_BASE + 0x209)
|
||||
#define INNOVATOR_FPGA_LED_RED_LO (OMAP1510_FPGA_BASE + 0x20a)
|
||||
#define INNOVATOR_FPGA_LED_RED_HI (OMAP1510_FPGA_BASE + 0x20b)
|
||||
#define INNOVATOR_FPGA_CAM_USB_CONTROL (OMAP1510_FPGA_BASE + 0x20c)
|
||||
#define INNOVATOR_FPGA_EXP_CONTROL (OMAP1510_FPGA_BASE + 0x20d)
|
||||
#define INNOVATOR_FPGA_ISR2 (OMAP1510_FPGA_BASE + 0x20e)
|
||||
#define INNOVATOR_FPGA_IMR2 (OMAP1510_FPGA_BASE + 0x210)
|
||||
|
||||
#define OMAP1510_FPGA_ETHR_START (OMAP1510_FPGA_START + 0x300)
|
||||
|
||||
#define OMAP1510_FPGA_RESET_VALUE 0x42
|
||||
|
||||
#define OMAP1510_FPGA_PCR_IF_PD0 (1 << 7)
|
||||
#define OMAP1510_FPGA_PCR_COM2_EN (1 << 6)
|
||||
#define OMAP1510_FPGA_PCR_COM1_EN (1 << 5)
|
||||
#define OMAP1510_FPGA_PCR_EXP_PD0 (1 << 4)
|
||||
#define OMAP1510_FPGA_PCR_EXP_PD1 (1 << 3)
|
||||
#define OMAP1510_FPGA_PCR_48MHZ_CLK (1 << 2)
|
||||
#define OMAP1510_FPGA_PCR_4MHZ_CLK (1 << 1)
|
||||
#define OMAP1510_FPGA_PCR_RSRVD_BIT0 (1 << 0)
|
||||
|
||||
#define OMAP1510_FPGA_HID_SCLK (1<<0)
|
||||
#define OMAP1510_FPGA_HID_MOSI (1<<1)
|
||||
#define OMAP1510_FPGA_HID_nSS (1<<2)
|
||||
#define OMAP1510_FPGA_HID_nHSUS (1<<3)
|
||||
#define OMAP1510_FPGA_HID_MISO (1<<4)
|
||||
#define OMAP1510_FPGA_HID_ATN (1<<5)
|
||||
#define OMAP1510_FPGA_HID_rsrvd (1<<6)
|
||||
#define OMAP1510_FPGA_HID_RESETn (1<<7)
|
||||
|
||||
#define OMAP1510_INT_FPGA (IH_GPIO_BASE + 13)
|
||||
|
||||
#define OMAP1510_IH_FPGA_BASE IH_BOARD_BASE
|
||||
#define OMAP1510_INT_FPGA_ATN (OMAP1510_IH_FPGA_BASE + 0)
|
||||
#define OMAP1510_INT_FPGA_ACK (OMAP1510_IH_FPGA_BASE + 1)
|
||||
#define OMAP1510_INT_FPGA2 (OMAP1510_IH_FPGA_BASE + 2)
|
||||
#define OMAP1510_INT_FPGA3 (OMAP1510_IH_FPGA_BASE + 3)
|
||||
#define OMAP1510_INT_FPGA4 (OMAP1510_IH_FPGA_BASE + 4)
|
||||
#define OMAP1510_INT_FPGA5 (OMAP1510_IH_FPGA_BASE + 5)
|
||||
#define OMAP1510_INT_FPGA6 (OMAP1510_IH_FPGA_BASE + 6)
|
||||
#define OMAP1510_INT_FPGA7 (OMAP1510_IH_FPGA_BASE + 7)
|
||||
#define OMAP1510_INT_FPGA8 (OMAP1510_IH_FPGA_BASE + 8)
|
||||
#define OMAP1510_INT_FPGA9 (OMAP1510_IH_FPGA_BASE + 9)
|
||||
#define OMAP1510_INT_FPGA10 (OMAP1510_IH_FPGA_BASE + 10)
|
||||
#define OMAP1510_INT_FPGA11 (OMAP1510_IH_FPGA_BASE + 11)
|
||||
#define OMAP1510_INT_FPGA12 (OMAP1510_IH_FPGA_BASE + 12)
|
||||
#define OMAP1510_INT_ETHER (OMAP1510_IH_FPGA_BASE + 13)
|
||||
#define OMAP1510_INT_FPGAUART1 (OMAP1510_IH_FPGA_BASE + 14)
|
||||
#define OMAP1510_INT_FPGAUART2 (OMAP1510_IH_FPGA_BASE + 15)
|
||||
#define OMAP1510_INT_FPGA_TS (OMAP1510_IH_FPGA_BASE + 16)
|
||||
#define OMAP1510_INT_FPGA17 (OMAP1510_IH_FPGA_BASE + 17)
|
||||
#define OMAP1510_INT_FPGA_CAM (OMAP1510_IH_FPGA_BASE + 18)
|
||||
#define OMAP1510_INT_FPGA_RTC_A (OMAP1510_IH_FPGA_BASE + 19)
|
||||
#define OMAP1510_INT_FPGA_RTC_B (OMAP1510_IH_FPGA_BASE + 20)
|
||||
#define OMAP1510_INT_FPGA_CD (OMAP1510_IH_FPGA_BASE + 21)
|
||||
#define OMAP1510_INT_FPGA22 (OMAP1510_IH_FPGA_BASE + 22)
|
||||
#define OMAP1510_INT_FPGA23 (OMAP1510_IH_FPGA_BASE + 23)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,37 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_GPIO_SWITCH_H
|
||||
#define __ASM_ARCH_OMAP_GPIO_SWITCH_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define OMAP_GPIO_SWITCH_TYPE_COVER 0x0000
|
||||
#define OMAP_GPIO_SWITCH_TYPE_CONNECTION 0x0001
|
||||
#define OMAP_GPIO_SWITCH_TYPE_ACTIVITY 0x0002
|
||||
#define OMAP_GPIO_SWITCH_FLAG_INVERTED 0x0001
|
||||
#define OMAP_GPIO_SWITCH_FLAG_OUTPUT 0x0002
|
||||
|
||||
struct omap_gpio_switch {
|
||||
const char *name;
|
||||
s16 gpio;
|
||||
unsigned flags:4;
|
||||
unsigned type:4;
|
||||
|
||||
u16 debounce_rising;
|
||||
|
||||
u16 debounce_falling;
|
||||
|
||||
void (* notify)(void *data, int state);
|
||||
void *notify_data;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,49 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_GPIO_H
|
||||
#define __ASM_ARCH_OMAP_GPIO_H
|
||||
|
||||
#include <asm/hardware.h>
|
||||
#include <asm/arch/irqs.h>
|
||||
#include <asm/io.h>
|
||||
|
||||
#define OMAP_MPUIO_BASE (void __iomem *)0xfffb5000
|
||||
|
||||
#define OMAP_MPUIO_INPUT_LATCH 0x00
|
||||
#define OMAP_MPUIO_OUTPUT 0x04
|
||||
#define OMAP_MPUIO_IO_CNTL 0x08
|
||||
#define OMAP_MPUIO_KBR_LATCH 0x10
|
||||
#define OMAP_MPUIO_KBC 0x14
|
||||
#define OMAP_MPUIO_GPIO_EVENT_MODE 0x18
|
||||
#define OMAP_MPUIO_GPIO_INT_EDGE 0x1c
|
||||
#define OMAP_MPUIO_KBD_INT 0x20
|
||||
#define OMAP_MPUIO_GPIO_INT 0x24
|
||||
#define OMAP_MPUIO_KBD_MASKIT 0x28
|
||||
#define OMAP_MPUIO_GPIO_MASKIT 0x2c
|
||||
#define OMAP_MPUIO_GPIO_DEBOUNCING 0x30
|
||||
#define OMAP_MPUIO_LATCH 0x34
|
||||
|
||||
#define OMAP_MPUIO(nr) (OMAP_MAX_GPIO_LINES + (nr))
|
||||
#define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES)
|
||||
|
||||
#define OMAP_GPIO_IRQ(nr) (OMAP_GPIO_IS_MPUIO(nr) ? IH_MPUIO_BASE + ((nr) & 0x0f) : IH_GPIO_BASE + (nr))
|
||||
|
||||
struct omap_machine_gpio_bank {
|
||||
int start;
|
||||
int end;
|
||||
|
||||
void (*set_gpio_direction)(int gpio, int is_input);
|
||||
void (*set_gpio_dataout)(int gpio, int enable);
|
||||
int (*get_gpio_datain)(int gpio);
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,157 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_HARDWARE_H
|
||||
#define __ASM_ARCH_OMAP_HARDWARE_H
|
||||
|
||||
#include <asm/sizes.h>
|
||||
#ifndef __ASSEMBLER__
|
||||
#include <asm/types.h>
|
||||
#include <asm/arch/cpu.h>
|
||||
#endif
|
||||
#include <asm/arch/io.h>
|
||||
#include <asm/arch/serial.h>
|
||||
|
||||
#define OMAP_MPU_TIMER1_BASE (0xfffec500)
|
||||
#define OMAP_MPU_TIMER2_BASE (0xfffec600)
|
||||
#define OMAP_MPU_TIMER3_BASE (0xfffec700)
|
||||
#define MPU_TIMER_FREE (1 << 6)
|
||||
#define MPU_TIMER_CLOCK_ENABLE (1 << 5)
|
||||
#define MPU_TIMER_AR (1 << 1)
|
||||
#define MPU_TIMER_ST (1 << 0)
|
||||
|
||||
#define CLKGEN_REG_BASE (0xfffece00)
|
||||
#define ARM_CKCTL (CLKGEN_REG_BASE + 0x0)
|
||||
#define ARM_IDLECT1 (CLKGEN_REG_BASE + 0x4)
|
||||
#define ARM_IDLECT2 (CLKGEN_REG_BASE + 0x8)
|
||||
#define ARM_EWUPCT (CLKGEN_REG_BASE + 0xC)
|
||||
#define ARM_RSTCT1 (CLKGEN_REG_BASE + 0x10)
|
||||
#define ARM_RSTCT2 (CLKGEN_REG_BASE + 0x14)
|
||||
#define ARM_SYSST (CLKGEN_REG_BASE + 0x18)
|
||||
#define ARM_IDLECT3 (CLKGEN_REG_BASE + 0x24)
|
||||
|
||||
#define CK_RATEF 1
|
||||
#define CK_IDLEF 2
|
||||
#define CK_ENABLEF 4
|
||||
#define CK_SELECTF 8
|
||||
#define SETARM_IDLE_SHIFT
|
||||
|
||||
#define DPLL_CTL (0xfffecf00)
|
||||
|
||||
#define DSP_CONFIG_REG_BASE (0xe1008000)
|
||||
#define DSP_CKCTL (DSP_CONFIG_REG_BASE + 0x0)
|
||||
#define DSP_IDLECT1 (DSP_CONFIG_REG_BASE + 0x4)
|
||||
#define DSP_IDLECT2 (DSP_CONFIG_REG_BASE + 0x8)
|
||||
#define DSP_RSTCT2 (DSP_CONFIG_REG_BASE + 0x14)
|
||||
|
||||
#define ULPD_REG_BASE (0xfffe0800)
|
||||
#define ULPD_IT_STATUS (ULPD_REG_BASE + 0x14)
|
||||
#define ULPD_SETUP_ANALOG_CELL_3 (ULPD_REG_BASE + 0x24)
|
||||
#define ULPD_CLOCK_CTRL (ULPD_REG_BASE + 0x30)
|
||||
#define DIS_USB_PVCI_CLK (1 << 5)
|
||||
#define USB_MCLK_EN (1 << 4)
|
||||
#define ULPD_SOFT_REQ (ULPD_REG_BASE + 0x34)
|
||||
#define SOFT_UDC_REQ (1 << 4)
|
||||
#define SOFT_USB_CLK_REQ (1 << 3)
|
||||
#define SOFT_DPLL_REQ (1 << 0)
|
||||
#define ULPD_DPLL_CTRL (ULPD_REG_BASE + 0x3c)
|
||||
#define ULPD_STATUS_REQ (ULPD_REG_BASE + 0x40)
|
||||
#define ULPD_APLL_CTRL (ULPD_REG_BASE + 0x4c)
|
||||
#define ULPD_POWER_CTRL (ULPD_REG_BASE + 0x50)
|
||||
#define ULPD_SOFT_DISABLE_REQ_REG (ULPD_REG_BASE + 0x68)
|
||||
#define DIS_MMC2_DPLL_REQ (1 << 11)
|
||||
#define DIS_MMC1_DPLL_REQ (1 << 10)
|
||||
#define DIS_UART3_DPLL_REQ (1 << 9)
|
||||
#define DIS_UART2_DPLL_REQ (1 << 8)
|
||||
#define DIS_UART1_DPLL_REQ (1 << 7)
|
||||
#define DIS_USB_HOST_DPLL_REQ (1 << 6)
|
||||
#define ULPD_SDW_CLK_DIV_CTRL_SEL (ULPD_REG_BASE + 0x74)
|
||||
#define ULPD_CAM_CLK_CTRL (ULPD_REG_BASE + 0x7c)
|
||||
|
||||
#define OMAP_MPU_WATCHDOG_BASE (0xfffec800)
|
||||
#define OMAP_WDT_TIMER (OMAP_MPU_WATCHDOG_BASE + 0x0)
|
||||
#define OMAP_WDT_LOAD_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
|
||||
#define OMAP_WDT_READ_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
|
||||
#define OMAP_WDT_TIMER_MODE (OMAP_MPU_WATCHDOG_BASE + 0x8)
|
||||
|
||||
#define MOD_CONF_CTRL_0 0xfffe1080
|
||||
#define MOD_CONF_CTRL_1 0xfffe1110
|
||||
|
||||
#define FUNC_MUX_CTRL_0 0xfffe1000
|
||||
#define FUNC_MUX_CTRL_1 0xfffe1004
|
||||
#define FUNC_MUX_CTRL_2 0xfffe1008
|
||||
#define COMP_MODE_CTRL_0 0xfffe100c
|
||||
#define FUNC_MUX_CTRL_3 0xfffe1010
|
||||
#define FUNC_MUX_CTRL_4 0xfffe1014
|
||||
#define FUNC_MUX_CTRL_5 0xfffe1018
|
||||
#define FUNC_MUX_CTRL_6 0xfffe101C
|
||||
#define FUNC_MUX_CTRL_7 0xfffe1020
|
||||
#define FUNC_MUX_CTRL_8 0xfffe1024
|
||||
#define FUNC_MUX_CTRL_9 0xfffe1028
|
||||
#define FUNC_MUX_CTRL_A 0xfffe102C
|
||||
#define FUNC_MUX_CTRL_B 0xfffe1030
|
||||
#define FUNC_MUX_CTRL_C 0xfffe1034
|
||||
#define FUNC_MUX_CTRL_D 0xfffe1038
|
||||
#define PULL_DWN_CTRL_0 0xfffe1040
|
||||
#define PULL_DWN_CTRL_1 0xfffe1044
|
||||
#define PULL_DWN_CTRL_2 0xfffe1048
|
||||
#define PULL_DWN_CTRL_3 0xfffe104c
|
||||
#define PULL_DWN_CTRL_4 0xfffe10ac
|
||||
|
||||
#define FUNC_MUX_CTRL_E 0xfffe1090
|
||||
#define FUNC_MUX_CTRL_F 0xfffe1094
|
||||
#define FUNC_MUX_CTRL_10 0xfffe1098
|
||||
#define FUNC_MUX_CTRL_11 0xfffe109c
|
||||
#define FUNC_MUX_CTRL_12 0xfffe10a0
|
||||
#define PU_PD_SEL_0 0xfffe10b4
|
||||
#define PU_PD_SEL_1 0xfffe10b8
|
||||
#define PU_PD_SEL_2 0xfffe10bc
|
||||
#define PU_PD_SEL_3 0xfffe10c0
|
||||
#define PU_PD_SEL_4 0xfffe10c4
|
||||
|
||||
#define OMAP_TIMER32K_BASE 0xFFFBC400
|
||||
|
||||
#define TIPB_PUBLIC_CNTL_BASE 0xfffed300
|
||||
#define MPU_PUBLIC_TIPB_CNTL (TIPB_PUBLIC_CNTL_BASE + 0x8)
|
||||
#define TIPB_PRIVATE_CNTL_BASE 0xfffeca00
|
||||
#define MPU_PRIVATE_TIPB_CNTL (TIPB_PRIVATE_CNTL_BASE + 0x8)
|
||||
|
||||
#define MPUI_BASE (0xfffec900)
|
||||
#define MPUI_CTRL (MPUI_BASE + 0x0)
|
||||
#define MPUI_DEBUG_ADDR (MPUI_BASE + 0x4)
|
||||
#define MPUI_DEBUG_DATA (MPUI_BASE + 0x8)
|
||||
#define MPUI_DEBUG_FLAG (MPUI_BASE + 0xc)
|
||||
#define MPUI_STATUS_REG (MPUI_BASE + 0x10)
|
||||
#define MPUI_DSP_STATUS (MPUI_BASE + 0x14)
|
||||
#define MPUI_DSP_BOOT_CONFIG (MPUI_BASE + 0x18)
|
||||
#define MPUI_DSP_API_CONFIG (MPUI_BASE + 0x1c)
|
||||
|
||||
#define OMAP_LPG1_BASE 0xfffbd000
|
||||
#define OMAP_LPG2_BASE 0xfffbd800
|
||||
#define OMAP_LPG1_LCR (OMAP_LPG1_BASE + 0x00)
|
||||
#define OMAP_LPG1_PMR (OMAP_LPG1_BASE + 0x04)
|
||||
#define OMAP_LPG2_LCR (OMAP_LPG2_BASE + 0x00)
|
||||
#define OMAP_LPG2_PMR (OMAP_LPG2_BASE + 0x04)
|
||||
|
||||
#define OMAP_PWL_BASE 0xfffb5800
|
||||
#define OMAP_PWL_ENABLE (OMAP_PWL_BASE + 0x00)
|
||||
#define OMAP_PWL_CLK_ENABLE (OMAP_PWL_BASE + 0x04)
|
||||
|
||||
#include "omap730.h"
|
||||
#include "omap1510.h"
|
||||
#include "omap24xx.h"
|
||||
#include "omap16xx.h"
|
||||
|
||||
#ifndef __ASSEMBLER__
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,54 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_ARCH_IO_H
|
||||
#define __ASM_ARM_ARCH_IO_H
|
||||
|
||||
#include <asm/hardware.h>
|
||||
|
||||
#define IO_SPACE_LIMIT 0xffffffff
|
||||
|
||||
#define __io(a) ((void __iomem *)(PCIO_BASE + (a)))
|
||||
#define __mem_pci(a) (a)
|
||||
|
||||
#define PCIO_BASE 0
|
||||
|
||||
#ifndef __ASSEMBLER__
|
||||
|
||||
#define omap_readb(a) (*(volatile unsigned char *)IO_ADDRESS(a))
|
||||
#define omap_readw(a) (*(volatile unsigned short *)IO_ADDRESS(a))
|
||||
#define omap_readl(a) (*(volatile unsigned int *)IO_ADDRESS(a))
|
||||
|
||||
#define omap_writeb(v,a) (*(volatile unsigned char *)IO_ADDRESS(a) = (v))
|
||||
#define omap_writew(v,a) (*(volatile unsigned short *)IO_ADDRESS(a) = (v))
|
||||
#define omap_writel(v,a) (*(volatile unsigned int *)IO_ADDRESS(a) = (v))
|
||||
|
||||
typedef struct { volatile u16 offset[256]; } __regbase16;
|
||||
#define __REGV16(vaddr) ((__regbase16 *)((vaddr)&~0xff)) ->offset[((vaddr)&0xff)>>1]
|
||||
#define __REG16(paddr) __REGV16(io_p2v(paddr))
|
||||
|
||||
typedef struct { volatile u8 offset[4096]; } __regbase8;
|
||||
#define __REGV8(vaddr) ((__regbase8 *)((vaddr)&~4095)) ->offset[((vaddr)&4095)>>0]
|
||||
#define __REG8(paddr) __REGV8(io_p2v(paddr))
|
||||
|
||||
typedef struct { volatile u32 offset[4096]; } __regbase32;
|
||||
#define __REGV32(vaddr) ((__regbase32 *)((vaddr)&~4095)) ->offset[((vaddr)&4095)>>2]
|
||||
#define __REG32(paddr) __REGV32(io_p2v(paddr))
|
||||
|
||||
#else
|
||||
|
||||
#define __REG8(paddr) io_p2v(paddr)
|
||||
#define __REG16(paddr) io_p2v(paddr)
|
||||
#define __REG32(paddr) io_p2v(paddr)
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,242 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP15XX_IRQS_H
|
||||
#define __ASM_ARCH_OMAP15XX_IRQS_H
|
||||
|
||||
#define INT_CAMERA 1
|
||||
#define INT_FIQ 3
|
||||
#define INT_RTDX 6
|
||||
#define INT_DSP_MMU_ABORT 7
|
||||
#define INT_HOST 8
|
||||
#define INT_ABORT 9
|
||||
#define INT_DSP_MAILBOX1 10
|
||||
#define INT_DSP_MAILBOX2 11
|
||||
#define INT_BRIDGE_PRIV 13
|
||||
#define INT_GPIO_BANK1 14
|
||||
#define INT_UART3 15
|
||||
#define INT_TIMER3 16
|
||||
#define INT_DMA_CH0_6 19
|
||||
#define INT_DMA_CH1_7 20
|
||||
#define INT_DMA_CH2_8 21
|
||||
#define INT_DMA_CH3 22
|
||||
#define INT_DMA_CH4 23
|
||||
#define INT_DMA_CH5 24
|
||||
#define INT_DMA_LCD 25
|
||||
#define INT_TIMER1 26
|
||||
#define INT_WD_TIMER 27
|
||||
#define INT_BRIDGE_PUB 28
|
||||
#define INT_TIMER2 30
|
||||
#define INT_LCD_CTRL 31
|
||||
|
||||
#define INT_1510_IH2_IRQ 0
|
||||
#define INT_1510_RES2 2
|
||||
#define INT_1510_SPI_TX 4
|
||||
#define INT_1510_SPI_RX 5
|
||||
#define INT_1510_RES12 12
|
||||
#define INT_1510_LB_MMU 17
|
||||
#define INT_1510_RES18 18
|
||||
#define INT_1510_LOCAL_BUS 29
|
||||
|
||||
#define INT_1610_IH2_IRQ 0
|
||||
#define INT_1610_IH2_FIQ 2
|
||||
#define INT_1610_McBSP2_TX 4
|
||||
#define INT_1610_McBSP2_RX 5
|
||||
#define INT_1610_LCD_LINE 12
|
||||
#define INT_1610_GPTIMER1 17
|
||||
#define INT_1610_GPTIMER2 18
|
||||
#define INT_1610_SSR_FIFO_0 29
|
||||
|
||||
#define INT_730_IH2_FIQ 0
|
||||
#define INT_730_IH2_IRQ 1
|
||||
#define INT_730_USB_NON_ISO 2
|
||||
#define INT_730_USB_ISO 3
|
||||
#define INT_730_ICR 4
|
||||
#define INT_730_EAC 5
|
||||
#define INT_730_GPIO_BANK1 6
|
||||
#define INT_730_GPIO_BANK2 7
|
||||
#define INT_730_GPIO_BANK3 8
|
||||
#define INT_730_McBSP2TX 10
|
||||
#define INT_730_McBSP2RX 11
|
||||
#define INT_730_McBSP2RX_OVF 12
|
||||
#define INT_730_LCD_LINE 14
|
||||
#define INT_730_GSM_PROTECT 15
|
||||
#define INT_730_TIMER3 16
|
||||
#define INT_730_GPIO_BANK5 17
|
||||
#define INT_730_GPIO_BANK6 18
|
||||
#define INT_730_SPGIO_WR 29
|
||||
|
||||
#define IH2_BASE 32
|
||||
|
||||
#define INT_KEYBOARD (1 + IH2_BASE)
|
||||
#define INT_uWireTX (2 + IH2_BASE)
|
||||
#define INT_uWireRX (3 + IH2_BASE)
|
||||
#define INT_I2C (4 + IH2_BASE)
|
||||
#define INT_MPUIO (5 + IH2_BASE)
|
||||
#define INT_USB_HHC_1 (6 + IH2_BASE)
|
||||
#define INT_McBSP3TX (10 + IH2_BASE)
|
||||
#define INT_McBSP3RX (11 + IH2_BASE)
|
||||
#define INT_McBSP1TX (12 + IH2_BASE)
|
||||
#define INT_McBSP1RX (13 + IH2_BASE)
|
||||
#define INT_UART2 (14 + IH2_BASE)
|
||||
#define INT_UART1 (15 + IH2_BASE)
|
||||
#define INT_BT_MCSI1TX (16 + IH2_BASE)
|
||||
#define INT_BT_MCSI1RX (17 + IH2_BASE)
|
||||
#define INT_USB_W2FC (20 + IH2_BASE)
|
||||
#define INT_1WIRE (21 + IH2_BASE)
|
||||
#define INT_OS_TIMER (22 + IH2_BASE)
|
||||
#define INT_MMC (23 + IH2_BASE)
|
||||
#define INT_GAUGE_32K (24 + IH2_BASE)
|
||||
#define INT_RTC_TIMER (25 + IH2_BASE)
|
||||
#define INT_RTC_ALARM (26 + IH2_BASE)
|
||||
#define INT_MEM_STICK (27 + IH2_BASE)
|
||||
#define INT_DSP_MMU (28 + IH2_BASE)
|
||||
|
||||
#define INT_1510_COM_SPI_RO (31 + IH2_BASE)
|
||||
|
||||
#define INT_1610_FAC (0 + IH2_BASE)
|
||||
#define INT_1610_USB_HHC_2 (7 + IH2_BASE)
|
||||
#define INT_1610_USB_OTG (8 + IH2_BASE)
|
||||
#define INT_1610_SoSSI (9 + IH2_BASE)
|
||||
#define INT_1610_SoSSI_MATCH (19 + IH2_BASE)
|
||||
#define INT_1610_McBSP2RX_OF (31 + IH2_BASE)
|
||||
#define INT_1610_STI (32 + IH2_BASE)
|
||||
#define INT_1610_STI_WAKEUP (33 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER3 (34 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER4 (35 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER5 (36 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER6 (37 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER7 (38 + IH2_BASE)
|
||||
#define INT_1610_GPTIMER8 (39 + IH2_BASE)
|
||||
#define INT_1610_GPIO_BANK2 (40 + IH2_BASE)
|
||||
#define INT_1610_GPIO_BANK3 (41 + IH2_BASE)
|
||||
#define INT_1610_MMC2 (42 + IH2_BASE)
|
||||
#define INT_1610_CF (43 + IH2_BASE)
|
||||
#define INT_1610_WAKE_UP_REQ (46 + IH2_BASE)
|
||||
#define INT_1610_GPIO_BANK4 (48 + IH2_BASE)
|
||||
#define INT_1610_SPI (49 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH6 (53 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH7 (54 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH8 (55 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH9 (56 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH10 (57 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH11 (58 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH12 (59 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH13 (60 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH14 (61 + IH2_BASE)
|
||||
#define INT_1610_DMA_CH15 (62 + IH2_BASE)
|
||||
#define INT_1610_NAND (63 + IH2_BASE)
|
||||
|
||||
#define INT_730_HW_ERRORS (0 + IH2_BASE)
|
||||
#define INT_730_NFIQ_PWR_FAIL (1 + IH2_BASE)
|
||||
#define INT_730_CFCD (2 + IH2_BASE)
|
||||
#define INT_730_CFIREQ (3 + IH2_BASE)
|
||||
#define INT_730_I2C (4 + IH2_BASE)
|
||||
#define INT_730_PCC (5 + IH2_BASE)
|
||||
#define INT_730_MPU_EXT_NIRQ (6 + IH2_BASE)
|
||||
#define INT_730_SPI_100K_1 (7 + IH2_BASE)
|
||||
#define INT_730_SYREN_SPI (8 + IH2_BASE)
|
||||
#define INT_730_VLYNQ (9 + IH2_BASE)
|
||||
#define INT_730_GPIO_BANK4 (10 + IH2_BASE)
|
||||
#define INT_730_McBSP1TX (11 + IH2_BASE)
|
||||
#define INT_730_McBSP1RX (12 + IH2_BASE)
|
||||
#define INT_730_McBSP1RX_OF (13 + IH2_BASE)
|
||||
#define INT_730_UART_MODEM_IRDA_2 (14 + IH2_BASE)
|
||||
#define INT_730_UART_MODEM_1 (15 + IH2_BASE)
|
||||
#define INT_730_MCSI (16 + IH2_BASE)
|
||||
#define INT_730_uWireTX (17 + IH2_BASE)
|
||||
#define INT_730_uWireRX (18 + IH2_BASE)
|
||||
#define INT_730_SMC_CD (19 + IH2_BASE)
|
||||
#define INT_730_SMC_IREQ (20 + IH2_BASE)
|
||||
#define INT_730_HDQ_1WIRE (21 + IH2_BASE)
|
||||
#define INT_730_TIMER32K (22 + IH2_BASE)
|
||||
#define INT_730_MMC_SDIO (23 + IH2_BASE)
|
||||
#define INT_730_UPLD (24 + IH2_BASE)
|
||||
#define INT_730_USB_HHC_1 (27 + IH2_BASE)
|
||||
#define INT_730_USB_HHC_2 (28 + IH2_BASE)
|
||||
#define INT_730_USB_GENI (29 + IH2_BASE)
|
||||
#define INT_730_USB_OTG (30 + IH2_BASE)
|
||||
#define INT_730_CAMERA_IF (31 + IH2_BASE)
|
||||
#define INT_730_RNG (32 + IH2_BASE)
|
||||
#define INT_730_DUAL_MODE_TIMER (33 + IH2_BASE)
|
||||
#define INT_730_DBB_RF_EN (34 + IH2_BASE)
|
||||
#define INT_730_MPUIO_KEYPAD (35 + IH2_BASE)
|
||||
#define INT_730_SHA1_MD5 (36 + IH2_BASE)
|
||||
#define INT_730_SPI_100K_2 (37 + IH2_BASE)
|
||||
#define INT_730_RNG_IDLE (38 + IH2_BASE)
|
||||
#define INT_730_MPUIO (39 + IH2_BASE)
|
||||
#define INT_730_LLPC_LCD_CTRL_CAN_BE_OFF (40 + IH2_BASE)
|
||||
#define INT_730_LLPC_OE_FALLING (41 + IH2_BASE)
|
||||
#define INT_730_LLPC_OE_RISING (42 + IH2_BASE)
|
||||
#define INT_730_LLPC_VSYNC (43 + IH2_BASE)
|
||||
#define INT_730_WAKE_UP_REQ (46 + IH2_BASE)
|
||||
#define INT_730_DMA_CH6 (53 + IH2_BASE)
|
||||
#define INT_730_DMA_CH7 (54 + IH2_BASE)
|
||||
#define INT_730_DMA_CH8 (55 + IH2_BASE)
|
||||
#define INT_730_DMA_CH9 (56 + IH2_BASE)
|
||||
#define INT_730_DMA_CH10 (57 + IH2_BASE)
|
||||
#define INT_730_DMA_CH11 (58 + IH2_BASE)
|
||||
#define INT_730_DMA_CH12 (59 + IH2_BASE)
|
||||
#define INT_730_DMA_CH13 (60 + IH2_BASE)
|
||||
#define INT_730_DMA_CH14 (61 + IH2_BASE)
|
||||
#define INT_730_DMA_CH15 (62 + IH2_BASE)
|
||||
#define INT_730_NAND (63 + IH2_BASE)
|
||||
|
||||
#define INT_24XX_SYS_NIRQ 7
|
||||
#define INT_24XX_SDMA_IRQ0 12
|
||||
#define INT_24XX_SDMA_IRQ1 13
|
||||
#define INT_24XX_SDMA_IRQ2 14
|
||||
#define INT_24XX_SDMA_IRQ3 15
|
||||
#define INT_24XX_CAM_IRQ 24
|
||||
#define INT_24XX_DSS_IRQ 25
|
||||
#define INT_24XX_GPIO_BANK1 29
|
||||
#define INT_24XX_GPIO_BANK2 30
|
||||
#define INT_24XX_GPIO_BANK3 31
|
||||
#define INT_24XX_GPIO_BANK4 32
|
||||
#define INT_24XX_GPTIMER1 37
|
||||
#define INT_24XX_GPTIMER2 38
|
||||
#define INT_24XX_GPTIMER3 39
|
||||
#define INT_24XX_GPTIMER4 40
|
||||
#define INT_24XX_GPTIMER5 41
|
||||
#define INT_24XX_GPTIMER6 42
|
||||
#define INT_24XX_GPTIMER7 43
|
||||
#define INT_24XX_GPTIMER8 44
|
||||
#define INT_24XX_GPTIMER9 45
|
||||
#define INT_24XX_GPTIMER10 46
|
||||
#define INT_24XX_GPTIMER11 47
|
||||
#define INT_24XX_GPTIMER12 48
|
||||
#define INT_24XX_MCBSP1_IRQ_TX 59
|
||||
#define INT_24XX_MCBSP1_IRQ_RX 60
|
||||
#define INT_24XX_MCBSP2_IRQ_TX 62
|
||||
#define INT_24XX_MCBSP2_IRQ_RX 63
|
||||
#define INT_24XX_UART1_IRQ 72
|
||||
#define INT_24XX_UART2_IRQ 73
|
||||
#define INT_24XX_UART3_IRQ 74
|
||||
#define INT_24XX_MMC_IRQ 83
|
||||
|
||||
#define OMAP_MAX_GPIO_LINES 192
|
||||
#define IH_GPIO_BASE (128 + IH2_BASE)
|
||||
#define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE)
|
||||
#define IH_BOARD_BASE (16 + IH_MPUIO_BASE)
|
||||
|
||||
#define OMAP_IRQ_BIT(irq) (1 << ((irq) % 32))
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#endif
|
||||
|
||||
#include <asm/hardware.h>
|
||||
|
||||
#ifndef NR_IRQS
|
||||
#define NR_IRQS IH_BOARD_BASE
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,185 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_MCBSP_H
|
||||
#define __ASM_ARCH_OMAP_MCBSP_H
|
||||
|
||||
#include <asm/hardware.h>
|
||||
|
||||
#define OMAP730_MCBSP1_BASE 0xfffb1000
|
||||
#define OMAP730_MCBSP2_BASE 0xfffb1800
|
||||
|
||||
#define OMAP1510_MCBSP1_BASE 0xe1011800
|
||||
#define OMAP1510_MCBSP2_BASE 0xfffb1000
|
||||
#define OMAP1510_MCBSP3_BASE 0xe1017000
|
||||
|
||||
#define OMAP1610_MCBSP1_BASE 0xe1011800
|
||||
#define OMAP1610_MCBSP2_BASE 0xfffb1000
|
||||
#define OMAP1610_MCBSP3_BASE 0xe1017000
|
||||
|
||||
#define OMAP24XX_MCBSP1_BASE 0x48074000
|
||||
#define OMAP24XX_MCBSP2_BASE 0x48076000
|
||||
|
||||
#define OMAP_MCBSP_READ(base, reg) __raw_readw((base) + OMAP_MCBSP_REG_##reg)
|
||||
#define OMAP_MCBSP_WRITE(base, reg, val) __raw_writew((val), (base) + OMAP_MCBSP_REG_##reg)
|
||||
|
||||
#define RRST 0x0001
|
||||
#define RRDY 0x0002
|
||||
#define RFULL 0x0004
|
||||
#define RSYNC_ERR 0x0008
|
||||
#define RINTM(value) ((value)<<4)
|
||||
#define ABIS 0x0040
|
||||
#define DXENA 0x0080
|
||||
#define CLKSTP(value) ((value)<<11)
|
||||
#define RJUST(value) ((value)<<13)
|
||||
#define DLB 0x8000
|
||||
|
||||
#define XRST 0x0001
|
||||
#define XRDY 0x0002
|
||||
#define XEMPTY 0x0004
|
||||
#define XSYNC_ERR 0x0008
|
||||
#define XINTM(value) ((value)<<4)
|
||||
#define GRST 0x0040
|
||||
#define FRST 0x0080
|
||||
#define SOFT 0x0100
|
||||
#define FREE 0x0200
|
||||
|
||||
#define CLKRP 0x0001
|
||||
#define CLKXP 0x0002
|
||||
#define FSRP 0x0004
|
||||
#define FSXP 0x0008
|
||||
#define DR_STAT 0x0010
|
||||
#define DX_STAT 0x0020
|
||||
#define CLKS_STAT 0x0040
|
||||
#define SCLKME 0x0080
|
||||
#define CLKRM 0x0100
|
||||
#define CLKXM 0x0200
|
||||
#define FSRM 0x0400
|
||||
#define FSXM 0x0800
|
||||
#define RIOEN 0x1000
|
||||
#define XIOEN 0x2000
|
||||
#define IDLE_EN 0x4000
|
||||
|
||||
#define RWDLEN1(value) ((value)<<5)
|
||||
#define RFRLEN1(value) ((value)<<8)
|
||||
|
||||
#define XWDLEN1(value) ((value)<<5)
|
||||
#define XFRLEN1(value) ((value)<<8)
|
||||
|
||||
#define RDATDLY(value) (value)
|
||||
#define RFIG 0x0004
|
||||
#define RCOMPAND(value) ((value)<<3)
|
||||
#define RWDLEN2(value) ((value)<<5)
|
||||
#define RFRLEN2(value) ((value)<<8)
|
||||
#define RPHASE 0x8000
|
||||
|
||||
#define XDATDLY(value) (value)
|
||||
#define XFIG 0x0004
|
||||
#define XCOMPAND(value) ((value)<<3)
|
||||
#define XWDLEN2(value) ((value)<<5)
|
||||
#define XFRLEN2(value) ((value)<<8)
|
||||
#define XPHASE 0x8000
|
||||
|
||||
#define CLKGDV(value) (value)
|
||||
#define FWID(value) ((value)<<8)
|
||||
|
||||
#define FPER(value) (value)
|
||||
#define FSGM 0x1000
|
||||
#define CLKSM 0x2000
|
||||
#define CLKSP 0x4000
|
||||
#define GSYNC 0x8000
|
||||
|
||||
#define RMCM 0x0001
|
||||
#define RCBLK(value) ((value)<<2)
|
||||
#define RPABLK(value) ((value)<<5)
|
||||
#define RPBBLK(value) ((value)<<7)
|
||||
|
||||
#define XMCM(value) (value)
|
||||
#define XCBLK(value) ((value)<<2)
|
||||
#define XPABLK(value) ((value)<<5)
|
||||
#define XPBBLK(value) ((value)<<7)
|
||||
|
||||
struct omap_mcbsp_reg_cfg {
|
||||
u16 spcr2;
|
||||
u16 spcr1;
|
||||
u16 rcr2;
|
||||
u16 rcr1;
|
||||
u16 xcr2;
|
||||
u16 xcr1;
|
||||
u16 srgr2;
|
||||
u16 srgr1;
|
||||
u16 mcr2;
|
||||
u16 mcr1;
|
||||
u16 pcr0;
|
||||
u16 rcerc;
|
||||
u16 rcerd;
|
||||
u16 xcerc;
|
||||
u16 xcerd;
|
||||
u16 rcere;
|
||||
u16 rcerf;
|
||||
u16 xcere;
|
||||
u16 xcerf;
|
||||
u16 rcerg;
|
||||
u16 rcerh;
|
||||
u16 xcerg;
|
||||
u16 xcerh;
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP1 = 0,
|
||||
OMAP_MCBSP2,
|
||||
OMAP_MCBSP3,
|
||||
} omap_mcbsp_id;
|
||||
|
||||
typedef int __bitwise omap_mcbsp_io_type_t;
|
||||
#define OMAP_MCBSP_IRQ_IO ((__force omap_mcbsp_io_type_t) 1)
|
||||
#define OMAP_MCBSP_POLL_IO ((__force omap_mcbsp_io_type_t) 2)
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP_WORD_8 = 0,
|
||||
OMAP_MCBSP_WORD_12,
|
||||
OMAP_MCBSP_WORD_16,
|
||||
OMAP_MCBSP_WORD_20,
|
||||
OMAP_MCBSP_WORD_24,
|
||||
OMAP_MCBSP_WORD_32,
|
||||
} omap_mcbsp_word_length;
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP_CLK_RISING = 0,
|
||||
OMAP_MCBSP_CLK_FALLING,
|
||||
} omap_mcbsp_clk_polarity;
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP_FS_ACTIVE_HIGH = 0,
|
||||
OMAP_MCBSP_FS_ACTIVE_LOW,
|
||||
} omap_mcbsp_fs_polarity;
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP_CLK_STP_MODE_NO_DELAY = 0,
|
||||
OMAP_MCBSP_CLK_STP_MODE_DELAY,
|
||||
} omap_mcbsp_clk_stp_mode;
|
||||
|
||||
typedef enum {
|
||||
OMAP_MCBSP_SPI_MASTER = 0,
|
||||
OMAP_MCBSP_SPI_SLAVE,
|
||||
} omap_mcbsp_spi_mode;
|
||||
|
||||
struct omap_mcbsp_spi_cfg {
|
||||
omap_mcbsp_spi_mode spi_mode;
|
||||
omap_mcbsp_clk_polarity rx_clock_polarity;
|
||||
omap_mcbsp_clk_polarity tx_clock_polarity;
|
||||
omap_mcbsp_fs_polarity fsx_polarity;
|
||||
u8 clk_div;
|
||||
omap_mcbsp_clk_stp_mode clk_stp_mode;
|
||||
omap_mcbsp_word_length word_length;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,19 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_MEMORY_H
|
||||
#define __ASM_ARCH_MEMORY_H
|
||||
|
||||
#define __virt_to_bus(x) __virt_to_phys(x)
|
||||
#define __bus_to_virt(x) __phys_to_virt(x)
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ARCH_OMAP_MTD_XIP_H__
|
||||
#define __ARCH_OMAP_MTD_XIP_H__
|
||||
|
||||
#include <asm/hardware.h>
|
||||
#define OMAP_MPU_TIMER_BASE (0xfffec500)
|
||||
#define OMAP_MPU_TIMER_OFFSET 0x100
|
||||
|
||||
typedef struct {
|
||||
u32 cntl;
|
||||
u32 load_tim;
|
||||
u32 read_tim;
|
||||
} xip_omap_mpu_timer_regs_t;
|
||||
|
||||
#define xip_omap_mpu_timer_base(n) ((volatile xip_omap_mpu_timer_regs_t*)IO_ADDRESS(OMAP_MPU_TIMER_BASE + (n)*OMAP_MPU_TIMER_OFFSET))
|
||||
|
||||
#define xip_irqpending() (omap_readl(OMAP_IH1_ITR) & ~omap_readl(OMAP_IH1_MIR))
|
||||
#define xip_currtime() (~xip_omap_mpu_timer_read(0))
|
||||
#define xip_elapsed_since(x) (signed)((~xip_omap_mpu_timer_read(0) - (x)) / 6)
|
||||
#define xip_cpu_idle() asm volatile ("mcr p15, 0, %0, c7, c0, 4" :: "r" (1))
|
||||
#endif
|
||||
@@ -0,0 +1,391 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_MUX_H
|
||||
#define __ASM_ARCH_MUX_H
|
||||
|
||||
#define PU_PD_SEL_NA 0
|
||||
#define PULL_DWN_CTRL_NA 0
|
||||
|
||||
#define MUX_REG(reg, mode_offset, mode) .mux_reg = FUNC_MUX_CTRL_##reg, .mask_offset = mode_offset, .mask = mode,
|
||||
|
||||
#define PULL_REG(reg, bit, status) .pull_reg = PULL_DWN_CTRL_##reg, .pull_bit = bit, .pull_val = status,
|
||||
|
||||
#define PU_PD_REG(reg, status) .pu_pd_reg = PU_PD_SEL_##reg, .pu_pd_val = status,
|
||||
|
||||
#define MUX_REG_730(reg, mode_offset, mode) .mux_reg = OMAP730_IO_CONF_##reg, .mask_offset = mode_offset, .mask = mode,
|
||||
|
||||
#define PULL_REG_730(reg, bit, status) .pull_reg = OMAP730_IO_CONF_##reg, .pull_bit = bit, .pull_val = status,
|
||||
|
||||
#define MUX_CFG(desc, mux_reg, mode_offset, mode, pull_reg, pull_bit, pull_status, pu_pd_reg, pu_pd_status, debug_status) { .name = desc, .debug = debug_status, MUX_REG(mux_reg, mode_offset, mode) PULL_REG(pull_reg, pull_bit, !pull_status) PU_PD_REG(pu_pd_reg, pu_pd_status) },
|
||||
|
||||
#define MUX_CFG_730(desc, mux_reg, mode_offset, mode, pull_bit, pull_status, debug_status) { .name = desc, .debug = debug_status, MUX_REG_730(mux_reg, mode_offset, mode) PULL_REG_730(mux_reg, pull_bit, pull_status) PU_PD_REG(NA, 0) },
|
||||
|
||||
#define MUX_CFG_24XX(desc, reg_offset, mode, pull_en, pull_mode, dbg) { .name = desc, .debug = dbg, .mux_reg = reg_offset, .mask = mode, .pull_val = pull_en, .pu_pd_val = pull_mode, },
|
||||
|
||||
#define PULL_DISABLED 0
|
||||
#define PULL_ENABLED 1
|
||||
|
||||
#define PULL_DOWN 0
|
||||
#define PULL_UP 1
|
||||
|
||||
struct pin_config {
|
||||
char *name;
|
||||
unsigned char busy;
|
||||
unsigned char debug;
|
||||
|
||||
const char *mux_reg_name;
|
||||
const unsigned int mux_reg;
|
||||
const unsigned char mask_offset;
|
||||
const unsigned char mask;
|
||||
|
||||
const char *pull_name;
|
||||
const unsigned int pull_reg;
|
||||
const unsigned char pull_val;
|
||||
const unsigned char pull_bit;
|
||||
|
||||
const char *pu_pd_name;
|
||||
const unsigned int pu_pd_reg;
|
||||
const unsigned char pu_pd_val;
|
||||
};
|
||||
|
||||
enum omap730_index {
|
||||
|
||||
E2_730_KBR0,
|
||||
J7_730_KBR1,
|
||||
E1_730_KBR2,
|
||||
F3_730_KBR3,
|
||||
D2_730_KBR4,
|
||||
AA20_730_KBR5,
|
||||
V17_730_KBR6,
|
||||
C2_730_KBC0,
|
||||
D3_730_KBC1,
|
||||
E4_730_KBC2,
|
||||
F4_730_KBC3,
|
||||
E3_730_KBC4,
|
||||
|
||||
AA17_730_USB_DM,
|
||||
W16_730_USB_PU_EN,
|
||||
W17_730_USB_VBUSI,
|
||||
|
||||
V19_730_GPIO_15,
|
||||
M19_730_GPIO_77,
|
||||
C21_730_GPIO_121_122,
|
||||
K19_730_GPIO_126,
|
||||
K15_730_GPIO_127,
|
||||
|
||||
P15_730_GPIO_16_17,
|
||||
|
||||
M15_730_GPIO_83,
|
||||
N20_730_GPIO_82,
|
||||
N18_730_GPIO_81,
|
||||
N19_730_GPIO_80,
|
||||
L15_730_GPIO_76,
|
||||
|
||||
UART1_CTS_RTS,
|
||||
OMAP_730_GPIOS_42_43,
|
||||
UART1_TX_RX,
|
||||
OMAP_730_GPIOS_40_41,
|
||||
UART1_USB_RX_TX,
|
||||
UART1_USB_RTS,
|
||||
UART1_USB_CTS
|
||||
};
|
||||
|
||||
enum omap1xxx_index {
|
||||
|
||||
UART1_TX = 0,
|
||||
UART1_RTS,
|
||||
|
||||
UART2_TX,
|
||||
UART2_RX,
|
||||
UART2_CTS,
|
||||
UART2_RTS,
|
||||
|
||||
UART3_TX,
|
||||
UART3_RX,
|
||||
UART3_CTS,
|
||||
UART3_RTS,
|
||||
UART3_CLKREQ,
|
||||
UART3_BCLK,
|
||||
Y15_1610_UART3_RTS,
|
||||
|
||||
PWT,
|
||||
PWL,
|
||||
|
||||
R18_USB_VBUS,
|
||||
R18_1510_USB_GPIO0,
|
||||
W4_USB_PUEN,
|
||||
W4_USB_CLKO,
|
||||
W4_USB_HIGHZ,
|
||||
W4_GPIO58,
|
||||
|
||||
USB1_SUSP,
|
||||
USB1_SEO,
|
||||
W13_1610_USB1_SE0,
|
||||
USB1_TXEN,
|
||||
USB1_TXD,
|
||||
USB1_VP,
|
||||
USB1_VM,
|
||||
USB1_RCV,
|
||||
USB1_SPEED,
|
||||
R13_1610_USB1_SPEED,
|
||||
R13_1710_USB1_SE0,
|
||||
|
||||
USB2_SUSP,
|
||||
USB2_VP,
|
||||
USB2_TXEN,
|
||||
USB2_VM,
|
||||
USB2_RCV,
|
||||
USB2_SEO,
|
||||
USB2_TXD,
|
||||
|
||||
R18_1510_GPIO0,
|
||||
R19_1510_GPIO1,
|
||||
M14_1510_GPIO2,
|
||||
|
||||
P18_1610_GPIO3,
|
||||
Y15_1610_GPIO17,
|
||||
|
||||
R18_1710_GPIO0,
|
||||
V2_1710_GPIO10,
|
||||
N21_1710_GPIO14,
|
||||
W15_1710_GPIO40,
|
||||
|
||||
MPUIO2,
|
||||
N15_1610_MPUIO2,
|
||||
MPUIO4,
|
||||
MPUIO5,
|
||||
T20_1610_MPUIO5,
|
||||
W11_1610_MPUIO6,
|
||||
V10_1610_MPUIO7,
|
||||
W11_1610_MPUIO9,
|
||||
V10_1610_MPUIO10,
|
||||
W10_1610_MPUIO11,
|
||||
E20_1610_MPUIO13,
|
||||
U20_1610_MPUIO14,
|
||||
E19_1610_MPUIO15,
|
||||
|
||||
MCBSP2_CLKR,
|
||||
MCBSP2_CLKX,
|
||||
MCBSP2_DR,
|
||||
MCBSP2_DX,
|
||||
MCBSP2_FSR,
|
||||
MCBSP2_FSX,
|
||||
|
||||
MCBSP3_CLKX,
|
||||
|
||||
BALLOUT_V8_ARMIO3,
|
||||
N20_HDQ,
|
||||
|
||||
W8_1610_MMC2_DAT0,
|
||||
V8_1610_MMC2_DAT1,
|
||||
W15_1610_MMC2_DAT2,
|
||||
R10_1610_MMC2_DAT3,
|
||||
Y10_1610_MMC2_CLK,
|
||||
Y8_1610_MMC2_CMD,
|
||||
V9_1610_MMC2_CMDDIR,
|
||||
V5_1610_MMC2_DATDIR0,
|
||||
W19_1610_MMC2_DATDIR1,
|
||||
R18_1610_MMC2_CLKIN,
|
||||
|
||||
M19_1610_ETM_PSTAT0,
|
||||
L15_1610_ETM_PSTAT1,
|
||||
L18_1610_ETM_PSTAT2,
|
||||
L19_1610_ETM_D0,
|
||||
J19_1610_ETM_D6,
|
||||
J18_1610_ETM_D7,
|
||||
|
||||
P20_1610_GPIO4,
|
||||
V9_1610_GPIO7,
|
||||
W8_1610_GPIO9,
|
||||
N20_1610_GPIO11,
|
||||
N19_1610_GPIO13,
|
||||
P10_1610_GPIO22,
|
||||
V5_1610_GPIO24,
|
||||
AA20_1610_GPIO_41,
|
||||
W19_1610_GPIO48,
|
||||
M7_1610_GPIO62,
|
||||
V14_16XX_GPIO37,
|
||||
R9_16XX_GPIO18,
|
||||
L14_16XX_GPIO49,
|
||||
|
||||
V19_1610_UWIRE_SCLK,
|
||||
U18_1610_UWIRE_SDI,
|
||||
W21_1610_UWIRE_SDO,
|
||||
N14_1610_UWIRE_CS0,
|
||||
P15_1610_UWIRE_CS3,
|
||||
N15_1610_UWIRE_CS1,
|
||||
|
||||
U19_1610_SPIF_SCK,
|
||||
U18_1610_SPIF_DIN,
|
||||
P20_1610_SPIF_DIN,
|
||||
W21_1610_SPIF_DOUT,
|
||||
R18_1610_SPIF_DOUT,
|
||||
N14_1610_SPIF_CS0,
|
||||
N15_1610_SPIF_CS1,
|
||||
T19_1610_SPIF_CS2,
|
||||
P15_1610_SPIF_CS3,
|
||||
|
||||
L3_1610_FLASH_CS2B_OE,
|
||||
M8_1610_FLASH_CS2B_WE,
|
||||
|
||||
MMC_CMD,
|
||||
MMC_DAT1,
|
||||
MMC_DAT2,
|
||||
MMC_DAT0,
|
||||
MMC_CLK,
|
||||
MMC_DAT3,
|
||||
|
||||
M15_1710_MMC_CLKI,
|
||||
P19_1710_MMC_CMDDIR,
|
||||
P20_1710_MMC_DATDIR0,
|
||||
|
||||
W9_USB0_TXEN,
|
||||
AA9_USB0_VP,
|
||||
Y5_USB0_RCV,
|
||||
R9_USB0_VM,
|
||||
V6_USB0_TXD,
|
||||
W5_USB0_SE0,
|
||||
V9_USB0_SPEED,
|
||||
V9_USB0_SUSP,
|
||||
|
||||
W9_USB2_TXEN,
|
||||
AA9_USB2_VP,
|
||||
Y5_USB2_RCV,
|
||||
R9_USB2_VM,
|
||||
V6_USB2_TXD,
|
||||
W5_USB2_SE0,
|
||||
|
||||
R13_1610_UART1_TX,
|
||||
V14_16XX_UART1_RX,
|
||||
R14_1610_UART1_CTS,
|
||||
AA15_1610_UART1_RTS,
|
||||
R9_16XX_UART2_RX,
|
||||
L14_16XX_UART3_RX,
|
||||
|
||||
I2C_SCL,
|
||||
I2C_SDA,
|
||||
|
||||
F18_1610_KBC0,
|
||||
D20_1610_KBC1,
|
||||
D19_1610_KBC2,
|
||||
E18_1610_KBC3,
|
||||
C21_1610_KBC4,
|
||||
G18_1610_KBR0,
|
||||
F19_1610_KBR1,
|
||||
H14_1610_KBR2,
|
||||
E20_1610_KBR3,
|
||||
E19_1610_KBR4,
|
||||
N19_1610_KBR5,
|
||||
|
||||
T20_1610_LOW_PWR,
|
||||
|
||||
V5_1710_MCLK_ON,
|
||||
V5_1710_MCLK_OFF,
|
||||
R10_1610_MCLK_ON,
|
||||
R10_1610_MCLK_OFF,
|
||||
|
||||
P11_1610_CF_CD2,
|
||||
R11_1610_CF_IOIS16,
|
||||
V10_1610_CF_IREQ,
|
||||
W10_1610_CF_RESET,
|
||||
W11_1610_CF_CD1,
|
||||
};
|
||||
|
||||
enum omap24xx_index {
|
||||
|
||||
M19_24XX_I2C1_SCL,
|
||||
L15_24XX_I2C1_SDA,
|
||||
J15_24XX_I2C2_SCL,
|
||||
H19_24XX_I2C2_SDA,
|
||||
|
||||
W19_24XX_SYS_NIRQ,
|
||||
|
||||
W14_24XX_SYS_CLKOUT,
|
||||
|
||||
L3_GPMC_WAIT0,
|
||||
N7_GPMC_WAIT1,
|
||||
M1_GPMC_WAIT2,
|
||||
P1_GPMC_WAIT3,
|
||||
|
||||
Y15_24XX_MCBSP2_CLKX,
|
||||
R14_24XX_MCBSP2_FSX,
|
||||
W15_24XX_MCBSP2_DR,
|
||||
V15_24XX_MCBSP2_DX,
|
||||
|
||||
M21_242X_GPIO11,
|
||||
AA10_242X_GPIO13,
|
||||
AA6_242X_GPIO14,
|
||||
AA4_242X_GPIO15,
|
||||
Y11_242X_GPIO16,
|
||||
AA12_242X_GPIO17,
|
||||
AA8_242X_GPIO58,
|
||||
Y20_24XX_GPIO60,
|
||||
W4__24XX_GPIO74,
|
||||
M15_24XX_GPIO92,
|
||||
V14_24XX_GPIO117,
|
||||
|
||||
V4_242X_GPIO49,
|
||||
W2_242X_GPIO50,
|
||||
U4_242X_GPIO51,
|
||||
V3_242X_GPIO52,
|
||||
V2_242X_GPIO53,
|
||||
V6_242X_GPIO53,
|
||||
T4_242X_GPIO54,
|
||||
Y4_242X_GPIO54,
|
||||
T3_242X_GPIO55,
|
||||
U2_242X_GPIO56,
|
||||
|
||||
AA10_242X_DMAREQ0,
|
||||
AA6_242X_DMAREQ1,
|
||||
E4_242X_DMAREQ2,
|
||||
G4_242X_DMAREQ3,
|
||||
D3_242X_DMAREQ4,
|
||||
E3_242X_DMAREQ5,
|
||||
|
||||
P20_24XX_TSC_IRQ,
|
||||
|
||||
K15_24XX_UART3_TX,
|
||||
K14_24XX_UART3_RX,
|
||||
|
||||
G19_24XX_MMC_CLKO,
|
||||
H18_24XX_MMC_CMD,
|
||||
F20_24XX_MMC_DAT0,
|
||||
H14_24XX_MMC_DAT1,
|
||||
E19_24XX_MMC_DAT2,
|
||||
D19_24XX_MMC_DAT3,
|
||||
F19_24XX_MMC_DAT_DIR0,
|
||||
E20_24XX_MMC_DAT_DIR1,
|
||||
F18_24XX_MMC_DAT_DIR2,
|
||||
E18_24XX_MMC_DAT_DIR3,
|
||||
G18_24XX_MMC_CMD_DIR,
|
||||
H15_24XX_MMC_CLKI,
|
||||
|
||||
T19_24XX_KBR0,
|
||||
R19_24XX_KBR1,
|
||||
V18_24XX_KBR2,
|
||||
M21_24XX_KBR3,
|
||||
E5__24XX_KBR4,
|
||||
M18_24XX_KBR5,
|
||||
R20_24XX_KBC0,
|
||||
M14_24XX_KBC1,
|
||||
H19_24XX_KBC2,
|
||||
V17_24XX_KBC3,
|
||||
P21_24XX_KBC4,
|
||||
L14_24XX_KBC5,
|
||||
N19_24XX_KBC6,
|
||||
|
||||
B3__24XX_KBR5,
|
||||
AA4_24XX_KBC2,
|
||||
B13_24XX_KBC6,
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,30 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP24XX_H
|
||||
#define __ASM_ARCH_OMAP24XX_H
|
||||
|
||||
#define L4_24XX_BASE 0x48000000
|
||||
#define L3_24XX_BASE 0x68000000
|
||||
|
||||
#define OMAP24XX_IC_BASE (L4_24XX_BASE + 0xfe000)
|
||||
#define VA_IC_BASE IO_ADDRESS(OMAP24XX_IC_BASE)
|
||||
#define OMAP24XX_IVA_INTC_BASE 0x40000000
|
||||
#define IRQ_SIR_IRQ 0x0040
|
||||
|
||||
#define OMAP24XX_32KSYNCT_BASE (L4_24XX_BASE + 0x4000)
|
||||
#define OMAP24XX_PRCM_BASE (L4_24XX_BASE + 0x8000)
|
||||
#define OMAP24XX_SDRC_BASE (L3_24XX_BASE + 0x9000)
|
||||
|
||||
#define OMAP242X_CONTROL_STATUS (L4_24XX_BASE + 0x2f8)
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_SERIAL_H
|
||||
#define __ASM_ARCH_SERIAL_H
|
||||
|
||||
#define OMAP_MAX_NR_PORTS 3
|
||||
#define OMAP1510_BASE_BAUD (12000000/16)
|
||||
#define OMAP16XX_BASE_BAUD (48000000/16)
|
||||
|
||||
#define is_omap_port(p) ({int __ret = 0; if (p == IO_ADDRESS(OMAP_UART1_BASE) || p == IO_ADDRESS(OMAP_UART2_BASE) || p == IO_ADDRESS(OMAP_UART3_BASE)) __ret = 1; __ret; })
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARCH_OMAP_TIMEX_H
|
||||
#define __ASM_ARCH_OMAP_TIMEX_H
|
||||
|
||||
#define CLOCK_TICK_RATE (HZ * 100000UL)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,13 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#define VMALLOC_END (PAGE_OFFSET + 0x10000000)
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_ATOMIC_H
|
||||
#define __ASM_ARM_ATOMIC_H
|
||||
|
||||
#include <linux/compiler.h>
|
||||
|
||||
typedef struct { volatile int counter; } atomic_t;
|
||||
|
||||
#define ATOMIC_INIT(i) { (i) }
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,15 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASMARM_AUXVEC_H
|
||||
#define __ASMARM_AUXVEC_H
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,15 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_BITOPS_H
|
||||
#define __ASM_ARM_BITOPS_H
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,51 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_BYTEORDER_H
|
||||
#define __ASM_ARM_BYTEORDER_H
|
||||
|
||||
#include <linux/compiler.h>
|
||||
#include <asm/types.h>
|
||||
|
||||
static inline __attribute_const__ __u32 ___arch__swab32(__u32 x)
|
||||
{
|
||||
__u32 t;
|
||||
|
||||
#ifndef __thumb__
|
||||
if (!__builtin_constant_p(x)) {
|
||||
|
||||
asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x));
|
||||
} else
|
||||
#endif
|
||||
t = x ^ ((x << 16) | (x >> 16));
|
||||
|
||||
x = (x << 24) | (x >> 8);
|
||||
t &= ~0x00FF0000;
|
||||
x ^= (t >> 8);
|
||||
|
||||
return x;
|
||||
}
|
||||
|
||||
#define __arch__swab32(x) ___arch__swab32(x)
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
#define __BYTEORDER_HAS_U64__
|
||||
#define __SWAB_64_THRU_32__
|
||||
#endif
|
||||
|
||||
#ifdef __ARMEB__
|
||||
#include <linux/byteorder/big_endian.h>
|
||||
#else
|
||||
#include <linux/byteorder/little_endian.h>
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASMARM_CACHE_H
|
||||
#define __ASMARM_CACHE_H
|
||||
|
||||
#define L1_CACHE_SHIFT 5
|
||||
#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,107 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASMARM_CACHEFLUSH_H
|
||||
#define _ASMARM_CACHEFLUSH_H
|
||||
|
||||
#include <linux/sched.h>
|
||||
#include <linux/mm.h>
|
||||
|
||||
#include <asm/glue.h>
|
||||
#include <asm/shmparam.h>
|
||||
|
||||
#define CACHE_COLOUR(vaddr) ((vaddr & (SHMLBA - 1)) >> PAGE_SHIFT)
|
||||
|
||||
#undef _CACHE
|
||||
#undef MULTI_CACHE
|
||||
|
||||
#if !defined(_CACHE) && !defined(MULTI_CACHE)
|
||||
#error Unknown cache maintainence model
|
||||
#endif
|
||||
|
||||
#define PG_dcache_dirty PG_arch_1
|
||||
|
||||
struct cpu_cache_fns {
|
||||
void (*flush_kern_all)(void);
|
||||
void (*flush_user_all)(void);
|
||||
void (*flush_user_range)(unsigned long, unsigned long, unsigned int);
|
||||
|
||||
void (*coherent_kern_range)(unsigned long, unsigned long);
|
||||
void (*coherent_user_range)(unsigned long, unsigned long);
|
||||
void (*flush_kern_dcache_page)(void *);
|
||||
|
||||
void (*dma_inv_range)(unsigned long, unsigned long);
|
||||
void (*dma_clean_range)(unsigned long, unsigned long);
|
||||
void (*dma_flush_range)(unsigned long, unsigned long);
|
||||
};
|
||||
|
||||
#ifdef MULTI_CACHE
|
||||
|
||||
#define __cpuc_flush_kern_all cpu_cache.flush_kern_all
|
||||
#define __cpuc_flush_user_all cpu_cache.flush_user_all
|
||||
#define __cpuc_flush_user_range cpu_cache.flush_user_range
|
||||
#define __cpuc_coherent_kern_range cpu_cache.coherent_kern_range
|
||||
#define __cpuc_coherent_user_range cpu_cache.coherent_user_range
|
||||
#define __cpuc_flush_dcache_page cpu_cache.flush_kern_dcache_page
|
||||
|
||||
#define dmac_inv_range cpu_cache.dma_inv_range
|
||||
#define dmac_clean_range cpu_cache.dma_clean_range
|
||||
#define dmac_flush_range cpu_cache.dma_flush_range
|
||||
|
||||
#else
|
||||
|
||||
#define __cpuc_flush_kern_all __glue(_CACHE,_flush_kern_cache_all)
|
||||
#define __cpuc_flush_user_all __glue(_CACHE,_flush_user_cache_all)
|
||||
#define __cpuc_flush_user_range __glue(_CACHE,_flush_user_cache_range)
|
||||
#define __cpuc_coherent_kern_range __glue(_CACHE,_coherent_kern_range)
|
||||
#define __cpuc_coherent_user_range __glue(_CACHE,_coherent_user_range)
|
||||
#define __cpuc_flush_dcache_page __glue(_CACHE,_flush_kern_dcache_page)
|
||||
|
||||
#define dmac_inv_range __glue(_CACHE,_dma_inv_range)
|
||||
#define dmac_clean_range __glue(_CACHE,_dma_clean_range)
|
||||
#define dmac_flush_range __glue(_CACHE,_dma_flush_range)
|
||||
|
||||
#endif
|
||||
|
||||
#define flush_cache_vmap(start, end) flush_cache_all()
|
||||
#define flush_cache_vunmap(start, end) flush_cache_all()
|
||||
|
||||
#define copy_to_user_page(vma, page, vaddr, dst, src, len) do { memcpy(dst, src, len); flush_ptrace_access(vma, page, vaddr, dst, len, 1); } while (0)
|
||||
|
||||
#define copy_from_user_page(vma, page, vaddr, dst, src, len) do { memcpy(dst, src, len); } while (0)
|
||||
|
||||
#define flush_cache_all() __cpuc_flush_kern_all()
|
||||
#define flush_cache_user_range(vma,start,end) __cpuc_coherent_user_range((start) & PAGE_MASK, PAGE_ALIGN(end))
|
||||
#define flush_icache_range(s,e) __cpuc_coherent_kern_range(s,e)
|
||||
#define clean_dcache_area(start,size) cpu_dcache_clean_area(start, size)
|
||||
|
||||
#define flush_dcache_mmap_lock(mapping) write_lock_irq(&(mapping)->tree_lock)
|
||||
#define flush_dcache_mmap_unlock(mapping) write_unlock_irq(&(mapping)->tree_lock)
|
||||
|
||||
#define flush_icache_user_range(vma,page,addr,len) flush_dcache_page(page)
|
||||
|
||||
#define flush_icache_page(vma,page) do { } while (0)
|
||||
|
||||
#define __cacheid_present(val) (val != read_cpuid(CPUID_ID))
|
||||
#define __cacheid_vivt(val) ((val & (15 << 25)) != (14 << 25))
|
||||
#define __cacheid_vipt(val) ((val & (15 << 25)) == (14 << 25))
|
||||
#define __cacheid_vipt_nonaliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25))
|
||||
#define __cacheid_vipt_aliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25 | 1 << 23))
|
||||
|
||||
#define cache_is_vivt() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); (!__cacheid_present(__val)) || __cacheid_vivt(__val); })
|
||||
|
||||
#define cache_is_vipt() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt(__val); })
|
||||
|
||||
#define cache_is_vipt_nonaliasing() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt_nonaliasing(__val); })
|
||||
|
||||
#define cache_is_vipt_aliasing() ({ unsigned int __val = read_cpuid(CPUID_CACHETYPE); __cacheid_present(__val) && __cacheid_vipt_aliasing(__val); })
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ARM_CPUTIME_H
|
||||
#define __ARM_CPUTIME_H
|
||||
|
||||
#include <asm-generic/cputime.h>
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,22 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_DELAY_H
|
||||
#define __ASM_ARM_DELAY_H
|
||||
|
||||
#include <asm/param.h>
|
||||
|
||||
#define MAX_UDELAY_MS 2
|
||||
|
||||
#define udelay(n) (__builtin_constant_p(n) ? ((n) > (MAX_UDELAY_MS * 1000) ? __bad_udelay() : __const_udelay((n) * ((2199023U*HZ)>>11))) : __udelay(n))
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_DIV64
|
||||
#define __ASM_ARM_DIV64
|
||||
|
||||
#include <asm/system.h>
|
||||
|
||||
#ifdef __ARMEB__
|
||||
#define __xh "r0"
|
||||
#define __xl "r1"
|
||||
#else
|
||||
#define __xl "r0"
|
||||
#define __xh "r1"
|
||||
#endif
|
||||
|
||||
#define do_div(n,base) ({ register unsigned int __base asm("r4") = base; register unsigned long long __n asm("r0") = n; register unsigned long long __res asm("r2"); register unsigned int __rem asm(__xh); asm( __asmeq("%0", __xh) __asmeq("%1", "r2") __asmeq("%2", "r0") __asmeq("%3", "r4") "bl __do_div64" : "=r" (__rem), "=r" (__res) : "r" (__n), "r" (__base) : "ip", "lr", "cc"); n = __res; __rem; })
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,15 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef ASMARM_DMA_MAPPING_H
|
||||
#define ASMARM_DMA_MAPPING_H
|
||||
|
||||
#endif
|
||||
45
ndk/build/platforms/android-4/arch-arm/usr/include/asm/dma.h
Normal file
45
ndk/build/platforms/android-4/arch-arm/usr/include/asm/dma.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_DMA_H
|
||||
#define __ASM_ARM_DMA_H
|
||||
|
||||
typedef unsigned int dmach_t;
|
||||
|
||||
#include <linux/spinlock.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/scatterlist.h>
|
||||
#include <asm/arch/dma.h>
|
||||
|
||||
#ifndef MAX_DMA_ADDRESS
|
||||
#define MAX_DMA_ADDRESS 0xffffffff
|
||||
#endif
|
||||
|
||||
typedef unsigned int dmamode_t;
|
||||
|
||||
#define DMA_MODE_MASK 3
|
||||
|
||||
#define DMA_MODE_READ 0
|
||||
#define DMA_MODE_WRITE 1
|
||||
#define DMA_MODE_CASCADE 2
|
||||
#define DMA_AUTOINIT 4
|
||||
|
||||
#define clear_dma_ff(channel)
|
||||
|
||||
#define set_dma_addr(channel, addr) __set_dma_addr(channel, bus_to_virt(addr))
|
||||
|
||||
#ifndef NO_DMA
|
||||
#define NO_DMA 255
|
||||
#endif
|
||||
|
||||
#define isa_dma_bridge_buggy (0)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,32 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_PROC_DOMAIN_H
|
||||
#define __ASM_PROC_DOMAIN_H
|
||||
|
||||
#define DOMAIN_KERNEL 0
|
||||
#define DOMAIN_TABLE 0
|
||||
#define DOMAIN_USER 1
|
||||
#define DOMAIN_IO 2
|
||||
|
||||
#define DOMAIN_NOACCESS 0
|
||||
#define DOMAIN_CLIENT 1
|
||||
#define DOMAIN_MANAGER 3
|
||||
|
||||
#define domain_val(dom,type) ((type) << (2*(dom)))
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#define set_domain(x) do { } while (0)
|
||||
#define modify_domain(dom,type) do { } while (0)
|
||||
|
||||
#endif
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASMARM_DYNTICK_H
|
||||
#define _ASMARM_DYNTICK_H
|
||||
|
||||
#include <asm/mach/time.h>
|
||||
|
||||
#endif
|
||||
63
ndk/build/platforms/android-4/arch-arm/usr/include/asm/elf.h
Normal file
63
ndk/build/platforms/android-4/arch-arm/usr/include/asm/elf.h
Normal file
@@ -0,0 +1,63 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASMARM_ELF_H
|
||||
#define __ASMARM_ELF_H
|
||||
|
||||
#include <asm/ptrace.h>
|
||||
#include <asm/user.h>
|
||||
#ifdef __KERNEL
|
||||
#include <asm/procinfo.h>
|
||||
#endif
|
||||
|
||||
typedef unsigned long elf_greg_t;
|
||||
typedef unsigned long elf_freg_t[3];
|
||||
|
||||
#define EM_ARM 40
|
||||
#define EF_ARM_APCS26 0x08
|
||||
#define EF_ARM_SOFT_FLOAT 0x200
|
||||
#define EF_ARM_EABI_MASK 0xFF000000
|
||||
|
||||
#define R_ARM_NONE 0
|
||||
#define R_ARM_PC24 1
|
||||
#define R_ARM_ABS32 2
|
||||
#define R_ARM_CALL 28
|
||||
#define R_ARM_JUMP24 29
|
||||
|
||||
#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
|
||||
typedef elf_greg_t elf_gregset_t[ELF_NGREG];
|
||||
|
||||
typedef struct user_fp elf_fpregset_t;
|
||||
|
||||
#define elf_check_arch(x) ( ((x)->e_machine == EM_ARM) && (ELF_PROC_OK((x))) )
|
||||
|
||||
#define ELF_CLASS ELFCLASS32
|
||||
#ifdef __ARMEB__
|
||||
#define ELF_DATA ELFDATA2MSB
|
||||
#else
|
||||
#define ELF_DATA ELFDATA2LSB
|
||||
#endif
|
||||
#define ELF_ARCH EM_ARM
|
||||
|
||||
#define USE_ELF_CORE_DUMP
|
||||
#define ELF_EXEC_PAGESIZE 4096
|
||||
|
||||
#define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3)
|
||||
|
||||
#define ELF_PLAT_INIT(_r, load_addr) (_r)->ARM_r0 = 0
|
||||
|
||||
#define ELF_HWCAP (elf_hwcap)
|
||||
|
||||
#define ELF_PLATFORM_SIZE 8
|
||||
|
||||
#define ELF_PLATFORM (elf_platform)
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ARM_ERRNO_H
|
||||
#define _ARM_ERRNO_H
|
||||
|
||||
#include <asm-generic/errno.h>
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,22 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ARM_FCNTL_H
|
||||
#define _ARM_FCNTL_H
|
||||
|
||||
#define O_DIRECTORY 040000
|
||||
#define O_NOFOLLOW 0100000
|
||||
#define O_DIRECT 0200000
|
||||
#define O_LARGEFILE 0400000
|
||||
|
||||
#include <asm-generic/fcntl.h>
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,68 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_FPSTATE_H
|
||||
#define __ASM_ARM_FPSTATE_H
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
struct vfp_hard_struct {
|
||||
__u64 fpregs[16];
|
||||
#if __LINUX_ARM_ARCH__ < 6
|
||||
__u32 fpmx_state;
|
||||
#endif
|
||||
__u32 fpexc;
|
||||
__u32 fpscr;
|
||||
|
||||
__u32 fpinst;
|
||||
__u32 fpinst2;
|
||||
};
|
||||
|
||||
union vfp_state {
|
||||
struct vfp_hard_struct hard;
|
||||
};
|
||||
|
||||
#define FP_HARD_SIZE 35
|
||||
|
||||
struct fp_hard_struct {
|
||||
unsigned int save[FP_HARD_SIZE];
|
||||
};
|
||||
|
||||
#define FP_SOFT_SIZE 35
|
||||
|
||||
struct fp_soft_struct {
|
||||
unsigned int save[FP_SOFT_SIZE];
|
||||
};
|
||||
|
||||
#define IWMMXT_SIZE 0x98
|
||||
|
||||
struct iwmmxt_struct {
|
||||
unsigned int save[IWMMXT_SIZE / sizeof(unsigned int)];
|
||||
};
|
||||
|
||||
union fp_state {
|
||||
struct fp_hard_struct hard;
|
||||
struct fp_soft_struct soft;
|
||||
};
|
||||
|
||||
#define FP_SIZE (sizeof(union fp_state) / sizeof(int))
|
||||
|
||||
struct crunch_state {
|
||||
unsigned int mvdx[16][2];
|
||||
unsigned int mvax[4][3];
|
||||
unsigned int dspsc[2];
|
||||
};
|
||||
|
||||
#define CRUNCH_SIZE sizeof(struct crunch_state)
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,11 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
@@ -0,0 +1,38 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_HARDIRQ_H
|
||||
#define __ASM_HARDIRQ_H
|
||||
|
||||
#include <linux/cache.h>
|
||||
#include <linux/threads.h>
|
||||
#include <asm/irq.h>
|
||||
|
||||
typedef struct {
|
||||
unsigned int __softirq_pending;
|
||||
unsigned int local_timer_irqs;
|
||||
} ____cacheline_aligned irq_cpustat_t;
|
||||
|
||||
#include <linux/irq_cpustat.h>
|
||||
|
||||
#if NR_IRQS > 256
|
||||
#define HARDIRQ_BITS 9
|
||||
#else
|
||||
#define HARDIRQ_BITS 8
|
||||
#endif
|
||||
|
||||
#if 1 << HARDIRQ_BITS < NR_IRQS
|
||||
#error HARDIRQ_BITS is too low!
|
||||
#endif
|
||||
|
||||
#define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_HARDWARE_H
|
||||
#define __ASM_HARDWARE_H
|
||||
|
||||
#include <asm/arch/hardware.h>
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,17 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ARCH_ARM_HW_IRQ_H
|
||||
#define _ARCH_ARM_HW_IRQ_H
|
||||
|
||||
#include <asm/mach/irq.h>
|
||||
|
||||
#endif
|
||||
15
ndk/build/platforms/android-4/arch-arm/usr/include/asm/ide.h
Normal file
15
ndk/build/platforms/android-4/arch-arm/usr/include/asm/ide.h
Normal file
@@ -0,0 +1,15 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASMARM_IDE_H
|
||||
#define __ASMARM_IDE_H
|
||||
|
||||
#endif
|
||||
15
ndk/build/platforms/android-4/arch-arm/usr/include/asm/io.h
Normal file
15
ndk/build/platforms/android-4/arch-arm/usr/include/asm/io.h
Normal file
@@ -0,0 +1,15 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_IO_H
|
||||
#define __ASM_ARM_IO_H
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,12 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#include <asm-generic/ioctl.h>
|
||||
@@ -0,0 +1,88 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_IOCTLS_H
|
||||
#define __ASM_ARM_IOCTLS_H
|
||||
|
||||
#include <asm/ioctl.h>
|
||||
|
||||
#define TCGETS 0x5401
|
||||
#define TCSETS 0x5402
|
||||
#define TCSETSW 0x5403
|
||||
#define TCSETSF 0x5404
|
||||
#define TCGETA 0x5405
|
||||
#define TCSETA 0x5406
|
||||
#define TCSETAW 0x5407
|
||||
#define TCSETAF 0x5408
|
||||
#define TCSBRK 0x5409
|
||||
#define TCXONC 0x540A
|
||||
#define TCFLSH 0x540B
|
||||
#define TIOCEXCL 0x540C
|
||||
#define TIOCNXCL 0x540D
|
||||
#define TIOCSCTTY 0x540E
|
||||
#define TIOCGPGRP 0x540F
|
||||
#define TIOCSPGRP 0x5410
|
||||
#define TIOCOUTQ 0x5411
|
||||
#define TIOCSTI 0x5412
|
||||
#define TIOCGWINSZ 0x5413
|
||||
#define TIOCSWINSZ 0x5414
|
||||
#define TIOCMGET 0x5415
|
||||
#define TIOCMBIS 0x5416
|
||||
#define TIOCMBIC 0x5417
|
||||
#define TIOCMSET 0x5418
|
||||
#define TIOCGSOFTCAR 0x5419
|
||||
#define TIOCSSOFTCAR 0x541A
|
||||
#define FIONREAD 0x541B
|
||||
#define TIOCINQ FIONREAD
|
||||
#define TIOCLINUX 0x541C
|
||||
#define TIOCCONS 0x541D
|
||||
#define TIOCGSERIAL 0x541E
|
||||
#define TIOCSSERIAL 0x541F
|
||||
#define TIOCPKT 0x5420
|
||||
#define FIONBIO 0x5421
|
||||
#define TIOCNOTTY 0x5422
|
||||
#define TIOCSETD 0x5423
|
||||
#define TIOCGETD 0x5424
|
||||
#define TCSBRKP 0x5425
|
||||
#define TIOCSBRK 0x5427
|
||||
#define TIOCCBRK 0x5428
|
||||
#define TIOCGSID 0x5429
|
||||
#define TIOCGPTN _IOR('T',0x30, unsigned int)
|
||||
#define TIOCSPTLCK _IOW('T',0x31, int)
|
||||
|
||||
#define FIONCLEX 0x5450
|
||||
#define FIOCLEX 0x5451
|
||||
#define FIOASYNC 0x5452
|
||||
#define TIOCSERCONFIG 0x5453
|
||||
#define TIOCSERGWILD 0x5454
|
||||
#define TIOCSERSWILD 0x5455
|
||||
#define TIOCGLCKTRMIOS 0x5456
|
||||
#define TIOCSLCKTRMIOS 0x5457
|
||||
#define TIOCSERGSTRUCT 0x5458
|
||||
#define TIOCSERGETLSR 0x5459
|
||||
#define TIOCSERGETMULTI 0x545A
|
||||
#define TIOCSERSETMULTI 0x545B
|
||||
|
||||
#define TIOCMIWAIT 0x545C
|
||||
#define TIOCGICOUNT 0x545D
|
||||
#define FIOQSIZE 0x545E
|
||||
|
||||
#define TIOCPKT_DATA 0
|
||||
#define TIOCPKT_FLUSHREAD 1
|
||||
#define TIOCPKT_FLUSHWRITE 2
|
||||
#define TIOCPKT_STOP 4
|
||||
#define TIOCPKT_START 8
|
||||
#define TIOCPKT_NOSTOP 16
|
||||
#define TIOCPKT_DOSTOP 32
|
||||
|
||||
#define TIOCSER_TEMT 0x01
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,30 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASMARM_IPCBUF_H
|
||||
#define __ASMARM_IPCBUF_H
|
||||
|
||||
struct ipc64_perm
|
||||
{
|
||||
__kernel_key_t key;
|
||||
__kernel_uid32_t uid;
|
||||
__kernel_gid32_t gid;
|
||||
__kernel_uid32_t cuid;
|
||||
__kernel_gid32_t cgid;
|
||||
__kernel_mode_t mode;
|
||||
unsigned short __pad1;
|
||||
unsigned short seq;
|
||||
unsigned short __pad2;
|
||||
unsigned long __unused1;
|
||||
unsigned long __unused2;
|
||||
};
|
||||
|
||||
#endif
|
||||
45
ndk/build/platforms/android-4/arch-arm/usr/include/asm/irq.h
Normal file
45
ndk/build/platforms/android-4/arch-arm/usr/include/asm/irq.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_IRQ_H
|
||||
#define __ASM_ARM_IRQ_H
|
||||
|
||||
#include <asm/arch/irqs.h>
|
||||
|
||||
#ifndef irq_canonicalize
|
||||
#define irq_canonicalize(i) (i)
|
||||
#endif
|
||||
|
||||
#ifndef NR_IRQS
|
||||
#define NR_IRQS 128
|
||||
#endif
|
||||
|
||||
#ifndef NO_IRQ
|
||||
#define NO_IRQ ((unsigned int)(-1))
|
||||
#endif
|
||||
|
||||
struct irqaction;
|
||||
|
||||
#define __IRQT_FALEDGE IRQ_TYPE_EDGE_FALLING
|
||||
#define __IRQT_RISEDGE IRQ_TYPE_EDGE_RISING
|
||||
#define __IRQT_LOWLVL IRQ_TYPE_LEVEL_LOW
|
||||
#define __IRQT_HIGHLVL IRQ_TYPE_LEVEL_HIGH
|
||||
|
||||
#define IRQT_NOEDGE (0)
|
||||
#define IRQT_RISING (__IRQT_RISEDGE)
|
||||
#define IRQT_FALLING (__IRQT_FALEDGE)
|
||||
#define IRQT_BOTHEDGE (__IRQT_RISEDGE|__IRQT_FALEDGE)
|
||||
#define IRQT_LOW (__IRQT_LOWLVL)
|
||||
#define IRQT_HIGH (__IRQT_HIGHLVL)
|
||||
#define IRQT_PROBE IRQ_TYPE_PROBE
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_LINKAGE_H
|
||||
#define __ASM_LINKAGE_H
|
||||
|
||||
#define __ALIGN .align 0
|
||||
#define __ALIGN_STR ".align 0"
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,12 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#include <asm-generic/local.h>
|
||||
@@ -0,0 +1,55 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_PROC_LOCKS_H
|
||||
#define __ASM_PROC_LOCKS_H
|
||||
|
||||
#if __LINUX_ARM_ARCH__ >= 6
|
||||
|
||||
#define __down_op(ptr,fail) ({ __asm__ __volatile__( "@ down_op\n" "1: ldrex lr, [%0]\n" " sub lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movmi ip, %0\n" " blmi " #fail : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); })
|
||||
|
||||
#define __down_op_ret(ptr,fail) ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" "1: ldrex lr, [%1]\n" " sub lr, lr, %2\n" " strex ip, lr, [%1]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " #fail "\n" " mov %0, ip" : "=&r" (ret) : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); ret; })
|
||||
|
||||
#define __up_op(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op\n" "1: ldrex lr, [%0]\n" " add lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " cmp lr, #0\n" " movle ip, %0\n" " blle " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
|
||||
|
||||
#define RW_LOCK_BIAS 0x01000000
|
||||
#define RW_LOCK_BIAS_STR "0x01000000"
|
||||
|
||||
#define __down_op_write(ptr,fail) ({ __asm__ __volatile__( "@ down_op_write\n" "1: ldrex lr, [%0]\n" " sub lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " movne ip, %0\n" " blne " #fail : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
|
||||
|
||||
#define __up_op_write(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_write\n" "1: ldrex lr, [%0]\n" " adds lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " movcs ip, %0\n" " blcs " #wake : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); })
|
||||
|
||||
#define __down_op_read(ptr,fail) __down_op(ptr, fail)
|
||||
|
||||
#define __up_op_read(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_read\n" "1: ldrex lr, [%0]\n" " add lr, lr, %1\n" " strex ip, lr, [%0]\n" " teq ip, #0\n" " bne 1b\n" " teq lr, #0\n" " moveq ip, %0\n" " bleq " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
|
||||
|
||||
#else
|
||||
|
||||
#define __down_op(ptr,fail) ({ __asm__ __volatile__( "@ down_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " subs lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movmi ip, %0\n" " blmi " #fail : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); })
|
||||
|
||||
#define __down_op_ret(ptr,fail) ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%1]\n" " subs lr, lr, %2\n" " str lr, [%1]\n" " msr cpsr_c, ip\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " #fail "\n" " mov %0, ip" : "=&r" (ret) : "r" (ptr), "I" (1) : "ip", "lr", "cc"); smp_mb(); ret; })
|
||||
|
||||
#define __up_op(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movle ip, %0\n" " blle " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
|
||||
|
||||
#define RW_LOCK_BIAS 0x01000000
|
||||
#define RW_LOCK_BIAS_STR "0x01000000"
|
||||
|
||||
#define __down_op_write(ptr,fail) ({ __asm__ __volatile__( "@ down_op_write\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " subs lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movne ip, %0\n" " blne " #fail : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
|
||||
|
||||
#define __up_op_write(ptr,wake) ({ __asm__ __volatile__( "@ up_op_write\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movcs ip, %0\n" " blcs " #wake : : "r" (ptr), "I" (RW_LOCK_BIAS) : "ip", "lr", "cc"); smp_mb(); })
|
||||
|
||||
#define __down_op_read(ptr,fail) __down_op(ptr, fail)
|
||||
|
||||
#define __up_op_read(ptr,wake) ({ smp_mb(); __asm__ __volatile__( "@ up_op_read\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " moveq ip, %0\n" " bleq " #wake : : "r" (ptr), "I" (1) : "ip", "lr", "cc"); })
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,26 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASM_MC146818RTC_H
|
||||
#define _ASM_MC146818RTC_H
|
||||
|
||||
#include <asm/arch/irqs.h>
|
||||
#include <asm/io.h>
|
||||
|
||||
#ifndef RTC_PORT
|
||||
#define RTC_PORT(x) (0x70 + (x))
|
||||
#define RTC_ALWAYS_BCD 1
|
||||
#endif
|
||||
|
||||
#define CMOS_READ(addr) ({ outb_p((addr),RTC_PORT(0)); inb_p(RTC_PORT(1)); })
|
||||
#define CMOS_WRITE(val, addr) ({ outb_p((addr),RTC_PORT(0)); outb_p((val),RTC_PORT(1)); })
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,95 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ASM_ARM_MEMORY_H
|
||||
#define __ASM_ARM_MEMORY_H
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#define UL(x) (x##UL)
|
||||
#else
|
||||
#define UL(x) (x)
|
||||
#endif
|
||||
|
||||
#include <linux/compiler.h>
|
||||
#include <asm/arch/memory.h>
|
||||
#include <asm/sizes.h>
|
||||
|
||||
#ifndef TASK_SIZE
|
||||
#define TASK_SIZE (CONFIG_DRAM_SIZE)
|
||||
#endif
|
||||
|
||||
#ifndef TASK_UNMAPPED_BASE
|
||||
#define TASK_UNMAPPED_BASE UL(0x00000000)
|
||||
#endif
|
||||
|
||||
#ifndef PHYS_OFFSET
|
||||
#define PHYS_OFFSET (CONFIG_DRAM_BASE)
|
||||
#endif
|
||||
|
||||
#ifndef END_MEM
|
||||
#define END_MEM (CONFIG_DRAM_BASE + CONFIG_DRAM_SIZE)
|
||||
#endif
|
||||
|
||||
#ifndef PAGE_OFFSET
|
||||
#define PAGE_OFFSET (PHYS_OFFSET)
|
||||
#endif
|
||||
|
||||
#define MODULE_END (END_MEM)
|
||||
#define MODULE_START (PHYS_OFFSET)
|
||||
|
||||
#ifndef CONSISTENT_DMA_SIZE
|
||||
#define CONSISTENT_DMA_SIZE SZ_2M
|
||||
#endif
|
||||
|
||||
#ifndef __virt_to_phys
|
||||
#define __virt_to_phys(x) ((x) - PAGE_OFFSET + PHYS_OFFSET)
|
||||
#define __phys_to_virt(x) ((x) - PHYS_OFFSET + PAGE_OFFSET)
|
||||
#endif
|
||||
|
||||
#define __phys_to_pfn(paddr) ((paddr) >> PAGE_SHIFT)
|
||||
#define __pfn_to_phys(pfn) ((pfn) << PAGE_SHIFT)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#ifndef ISA_DMA_THRESHOLD
|
||||
#define ISA_DMA_THRESHOLD (0xffffffffULL)
|
||||
#endif
|
||||
|
||||
#ifndef arch_adjust_zones
|
||||
#define arch_adjust_zones(node,size,holes) do { } while (0)
|
||||
#endif
|
||||
|
||||
#define PHYS_PFN_OFFSET (PHYS_OFFSET >> PAGE_SHIFT)
|
||||
|
||||
#define __pa(x) __virt_to_phys((unsigned long)(x))
|
||||
#define __va(x) ((void *)__phys_to_virt((unsigned long)(x)))
|
||||
#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT)
|
||||
#define ARCH_PFN_OFFSET PHYS_PFN_OFFSET
|
||||
#define pfn_valid(pfn) ((pfn) >= PHYS_PFN_OFFSET && (pfn) < (PHYS_PFN_OFFSET + max_mapnr))
|
||||
#define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
|
||||
#define virt_addr_valid(kaddr) ((unsigned long)(kaddr) >= PAGE_OFFSET && (unsigned long)(kaddr) < (unsigned long)high_memory)
|
||||
#define PHYS_TO_NID(addr) (0)
|
||||
#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
|
||||
#ifndef __arch_page_to_dma
|
||||
#define page_to_dma(dev, page) ((dma_addr_t)__virt_to_bus((unsigned long)page_address(page)))
|
||||
#define dma_to_virt(dev, addr) ((void *)__bus_to_virt(addr))
|
||||
#define virt_to_dma(dev, addr) ((dma_addr_t)__virt_to_bus((unsigned long)(addr)))
|
||||
#else
|
||||
#define page_to_dma(dev, page) (__arch_page_to_dma(dev, page))
|
||||
#define dma_to_virt(dev, addr) (__arch_dma_to_virt(dev, addr))
|
||||
#define virt_to_dma(dev, addr) (__arch_virt_to_dma(dev, addr))
|
||||
#endif
|
||||
#ifndef arch_is_coherent
|
||||
#define arch_is_coherent() 0
|
||||
#endif
|
||||
#endif
|
||||
#include <asm-generic/memory_model.h>
|
||||
#endif
|
||||
@@ -0,0 +1,28 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __ARM_MMAN_H__
|
||||
#define __ARM_MMAN_H__
|
||||
|
||||
#include <asm-generic/mman.h>
|
||||
|
||||
#define MAP_GROWSDOWN 0x0100
|
||||
#define MAP_DENYWRITE 0x0800
|
||||
#define MAP_EXECUTABLE 0x1000
|
||||
#define MAP_LOCKED 0x2000
|
||||
#define MAP_NORESERVE 0x4000
|
||||
#define MAP_POPULATE 0x8000
|
||||
#define MAP_NONBLOCK 0x10000
|
||||
|
||||
#define MCL_CURRENT 1
|
||||
#define MCL_FUTURE 2
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,26 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASM_ARM_MODULE_H
|
||||
#define _ASM_ARM_MODULE_H
|
||||
|
||||
struct mod_arch_specific
|
||||
{
|
||||
int foo;
|
||||
};
|
||||
|
||||
#define Elf_Shdr Elf32_Shdr
|
||||
#define Elf_Sym Elf32_Sym
|
||||
#define Elf_Ehdr Elf32_Ehdr
|
||||
|
||||
#define MODULE_ARCH_VERMAGIC "ARMv" __stringify(__LINUX_ARM_ARCH__) " "
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,32 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _ASMARM_MSGBUF_H
|
||||
#define _ASMARM_MSGBUF_H
|
||||
|
||||
struct msqid64_ds {
|
||||
struct ipc64_perm msg_perm;
|
||||
__kernel_time_t msg_stime;
|
||||
unsigned long __unused1;
|
||||
__kernel_time_t msg_rtime;
|
||||
unsigned long __unused2;
|
||||
__kernel_time_t msg_ctime;
|
||||
unsigned long __unused3;
|
||||
unsigned long msg_cbytes;
|
||||
unsigned long msg_qnum;
|
||||
unsigned long msg_qbytes;
|
||||
__kernel_pid_t msg_lspid;
|
||||
__kernel_pid_t msg_lrpid;
|
||||
unsigned long __unused4;
|
||||
unsigned long __unused5;
|
||||
};
|
||||
|
||||
#endif
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user