mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-12 16:07:30 +00:00
55 lines
1.5 KiB
C
55 lines
1.5 KiB
C
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||
|
/*
|
||
|
* Copyright (C) 2020 Marvell International Ltd.
|
||
|
*/
|
||
|
|
||
|
#ifndef __BOOTOCT_CMD_H__
|
||
|
#define __BOOTOCT_CMD_H__
|
||
|
|
||
|
#include "cvmx-coremask.h"
|
||
|
|
||
|
enum octeon_boot_cmd_type {
|
||
|
BOOTOCT,
|
||
|
BOOTOCTLINUX,
|
||
|
BOOTOCTELF
|
||
|
};
|
||
|
|
||
|
/** Structure to contain results of command line argument parsing */
|
||
|
struct octeon_boot_args {
|
||
|
struct cvmx_coremask coremask; /** Parsed coremask */
|
||
|
int num_cores[CVMX_MAX_NODES]; /** number of cores */
|
||
|
int num_skipped[CVMX_MAX_NODES];/** number of skipped cores */
|
||
|
const char *app_name; /** Application name */
|
||
|
const char *named_block; /** Named block to load Linux into */
|
||
|
u32 stack_size; /** stack size */
|
||
|
u32 heap_size; /** heap size */
|
||
|
u32 boot_flags; /** boot flags */
|
||
|
int node_mask; /** Node mask to use */
|
||
|
int console_uart; /** serial console number */
|
||
|
bool forceboot; /** force booting if core 0 not set */
|
||
|
bool coremask_set; /** set if coremask was set */
|
||
|
bool num_cores_set; /** Set if num_cores was set */
|
||
|
bool num_skipped_set; /** Set if num_skipped was set */
|
||
|
/** Set if endbootargs parameter was passed. */
|
||
|
bool endbootargs;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* Parse command line arguments
|
||
|
*
|
||
|
* @param argc number of arguments
|
||
|
* @param[in] argv array of argument strings
|
||
|
* @param cmd command type
|
||
|
* @param[out] boot_args parsed values
|
||
|
*
|
||
|
* @return number of arguments parsed
|
||
|
*/
|
||
|
int octeon_parse_bootopts(int argc, char *const argv[],
|
||
|
enum octeon_boot_cmd_type cmd,
|
||
|
struct octeon_boot_args *boot_args);
|
||
|
|
||
|
void nmi_bootvector(void);
|
||
|
extern u64 nmi_handler_para[];
|
||
|
|
||
|
#endif /* __BOOTOCT_CMD_H__ */
|