/* Copyright 2013-2014 IBM Corp.
 *
 * 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.
 */

#ifndef __CONFIG_H
#define __CONFIG_H

#define HAVE_TYPEOF			1
#define HAVE_BUILTIN_TYPES_COMPATIBLE_P	1

/* Keep -Wundef happy by defining whatever isn't on commandline to 0 */
#if defined(HAVE_LITTLE_ENDIAN) && HAVE_LITTLE_ENDIAN
#define HAVE_BIG_ENDIAN 0
#endif
#if defined(HAVE_BIG_ENDIAN) && HAVE_BIG_ENDIAN
#define HAVE_LITTLE_ENDIAN 0
#endif

/* We don't have a byteswap.h, and thus no bswap_64 */
#define HAVE_BYTESWAP_H 0
#define HAVE_BSWAP_64 0

/*
 * Build options.
 */

/* Enable lock debugging */
#define DEBUG_LOCKS		1

/* Enable malloc debugging */
#define DEBUG_MALLOC		1

/* Enable OPAL entry point tracing */
//#define OPAL_TRACE_ENTRY	1

/* Enable tracing of event state change */
//#define OPAL_TRACE_EVT_CHG	1

/* Enable various levels of OPAL_console debug */
//#define OPAL_DEBUG_CONSOLE_IO	1
//#define OPAL_DEBUG_CONSOLE_POLL	1

/* Enable this to force all writes to the in-memory console to
 * be mirrored on the mambo console
 */
//#define MAMBO_DEBUG_CONSOLE		1

/* Enable this to hookup SkiBoot log to the DVS console */
#define DVS_CONSOLE		1

/* Enable this to force the dummy console to the kernel.
 * (ie, an OPAL console that injects into skiboot own console)
 * Where possible, leave this undefined and enable it dynamically using
 * the chosen->sapphire,enable-dummy-console in the device tree.
 *
 * Note: This only gets enabled if there is no FSP console. If there
 * is one it always takes over for now. This also cause the LPC UART
 * node to be marked "reserved" so Linux doesn't instanciate a 8250
 * driver for it.
 */
//#define FORCE_DUMMY_CONSOLE 1

/* Enable this to do fast resets. Currently unreliable... */
//#define ENABLE_FAST_RESET	1

/* Enable this to make fast reboot clear memory */
//#define FAST_REBOOT_CLEARS_MEMORY	1

/* Enable this to disable setting of the output pending event when
 * sending things on the console. The FSP is very slow to consume
 * and older kernels wait after each character during early boot so
 * things get very slow. Eventually, we may want to create an OPAL
 * API for the kernel to activate or deactivate that functionality
 */
#define DISABLE_CON_PENDING_EVT	1

/* Configure this to provide some additional kernel command line
 * arguments to the bootloader
 */
//#define KERNEL_COMMAND_LINE	"debug"

#endif /* __CONFIG_H */

