2 * This file is part of the bayou project.
4 * Copyright (C) 2008 Advanced Micro Devices, Inc.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
19 #include <libpayload.h>
21 #define BAYOU_MAX_ENTRIES 10
39 #define BPT_ID 0x30545042
40 #define BPT_TYPE_CHOOSER 0x01
41 #define BPT_TYPE_CHAIN 0x02
42 #define BPT_TYPE_SUBCHAIN 0x03
44 #define BPT_FLAG_DEFAULT 0x01
45 #define BPT_FLAG_NOSHOW 0x02
55 struct bpt_pentry pentry
;
58 char *params
[BAYOU_PARAMS_COUNT
];
64 struct payload entries
[BAYOU_MAX_ENTRIES
];
67 extern struct bayoucfg bayoucfg
;
69 int verify_self(u8
*ptr
);
70 int self_get_params(u8
*fptr
, u8
**params
);
71 int self_load_and_run(struct payload
*p
, int *ret
);
75 void run_payload(struct payload
*p
);
76 char *payload_get_name(struct payload
*p
);
77 struct payload
*payload_get_default(void);
78 void run_payload_timeout(struct payload
*p
, int timeout
);
79 void payload_parse_params(struct payload
*pload
, u8
*params
, int len
);
81 int get_configuration(struct LAR
*lar
);