/* * $Id$ * * Copyright (C) 2007 Gabor Juhos * * This program was based on the code found in various Linux * source tarballs released by Edimax for it's devices. * Original author: David Hsu * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ #define SIG_LEN 4 #define ADM_CODE_ADDR 0x80500000 #define ADM_WEBP_ADDR 0x10000 #define ADM_WEBP_SIZE 0x10000 #define ADM_BOOT_SIZE 0x8000 #define ADM_CONF_SIZE 0x8000 #define ADM_BOOT_SIG "\x00\x60\x1A\x40" /* * Generic signatures */ #define SIG_CSYS "CSYS" #define SIG_CONF "HS\x00\x00" #define SIG_BOOT_RTL "\x00\x00\x40\x21" /* * Web page signatures */ #define SIG_BR6104K "WB4K" #define SIG_BR6104KP "WBKP" #define SIG_BR6104Wg "WBGW" #define SIG_BR6104IPC "WBIP" #define SIG_BR6114WG SIG_BR6104IPC #define SIG_BR6524K "2-K-" #define SIG_BR6524KP "2-KP" /* FIXME: valid? */ #define SIG_BR6524WG "2-WG" /* FIXME: valid? */ #define SIG_BR6524WP "2-WP" /* FIXME: valid? */ #define SIG_BR6541K "4--K" #define SIG_BR6541KP "4-KP" /* FIXME: valid? */ #define SIG_BR6541WP "4-WP" /* FIXME: valid? */ #define SIG_EW7207APg "EWAS" #define SIG_PS1205UWg "4000" #define SIG_PS3205U "5010" #define SIG_PS3205UWg "5011" #define SIG_RALINK "RNRA" #define SIG_H2BR4 SIG_BR6524K #define SIG_H2WR54G SIG_BR6524WG #define SIG_XRT401D SIG_BR6104K #define SIG_XRT402D SIG_BR6524K /* * CSYS image file header */ struct csys_header { unsigned char sig[SIG_LEN]; uint32_t addr; uint32_t size; };