1
/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2
* Use of this source code is governed by a BSD-style license that can be
3
* found in the LICENSE file.
5
* ARM firmware platform-specific definitions
8
#ifndef __ARCH_ARM_BIOSINCLUDES_H__
9
#define __ARCH_ARM_BIOSINCLUDES_H__
11
typedef unsigned char uint8_t;
12
typedef unsigned short uint16_t;
13
typedef unsigned int uint32_t;
14
typedef unsigned long long uint64_t;
15
typedef signed long long int64_t;
16
typedef unsigned int size_t;
19
#define NULL ((void*) 0)
22
#define UINT32_C(x) ((uint32_t) x)
23
#define UINT64_C(x) ((uint64_t) x)
26
extern void debug(const char *format, ...);
28
#define POSSIBLY_UNUSED __attribute__((unused))
30
#ifdef __STRICT_ANSI__
36
#define UINT64_RSHIFT(v, shiftby) (((uint64_t)(v)) >> (shiftby))
37
#define UINT64_MULT32(v, multby) (((uint64_t)(v)) * ((uint32_t)(multby)))
40
#define UINT32_MAX (UINT32_C(0xffffffffU))
44
#define UINT64_MAX (UINT64_C(0xffffffffffffffffULL))
47
/* This workaround applies to Kaen prototypes and is not expected to be needed
48
* in the final products. See crosbug.com/15759.
50
#define TEGRA_SOFT_REBOOT_WORKAROUND
52
#endif /*__ARCH_ARM_BIOSINCLUDES_H__ */