blob: 17179c11e748a4150d063a93af06bc18ba18300d [file] [log] [blame]
Tomer Shalevad785512009-10-29 21:31:50 +00001/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * mktccboot.h - a tool to inject a bootloader into a Telechips 77X/78X firmware
11 * file.
12 *
13 * Copyright (C) 2009 Tomer Shalev
14 *
15 * This program is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU General Public License
17 * as published by the Free Software Foundation; either version 2
18 * of the License, or (at your option) any later version.
19 *
20 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21 * KIND, either express or implied.
22 *
23 ****************************************************************************/
24
25#ifndef _MKTCCBOOT_H_
26#define _MKTCCBOOT_H_
27
Dominik Riebeling20f3e642009-11-04 21:56:40 +000028/* win32 compatibility */
29#ifndef O_BINARY
30#define O_BINARY 0
31
32#endif
Tomer Shalevad785512009-10-29 21:31:50 +000033#ifdef __cplusplus
34extern "C" {
35#endif
36
37/* Injects a bootloader into a Telechips 77X/78X firmware file */
38unsigned char *patch_firmware_tcc(unsigned char *of_buf, int of_size,
39 unsigned char *boot_buf, int boot_size, int *patched_size);
40
41unsigned char *file_read(char *filename, int *size);
42
Tomer Shalevbcadf962009-11-01 18:26:00 +000043/* Test TCC firmware file for consistency using CRC test */
44int test_firmware_tcc(unsigned char* buf, int length);
45
Tomer Shalevad785512009-10-29 21:31:50 +000046#ifdef __cplusplus
47};
48#endif
49
50#endif