/* * Copyright (C) 2007 The Android Open Source Project * * 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. */ #include <boot/boot.h> #include <boot/flash.h> ptentry PTABLE[] = { { .start = 310, .length = 40, .name = "recovery", }, { .start = 350, .length = 20, .name = "boot", }, { .start = 370, .length = 540, .name = "system", }, { .start = 910, .length = 1138, .name = "userdata", }, { .start = 0, .length = 0, .name = "", }, }; #define MISC2_CHARGER_OFF 0x01 /* DISABLE charge circuitry */ #define MISC2_ISET 0x02 /* Enable Current Limit */ #define MISC2_H2W_MASK 0xC0 #define MISC2_H2W_GPIO 0x00 #define MISC2_H2W_UART1 0x40 #define MISC2_H2W_UART3 0x80 #define MISC2_H2W_BT 0xC0 void board_init() { unsigned n; /* if we already have partitions from elsewhere, ** don't use the hardcoded ones */ if(flash_get_ptn_count() == 0) { for(n = 0; PTABLE[n].name[0]; n++) { flash_add_ptn(PTABLE + n); } } /* UART configuration */ #if 1 /* UART3 */ writeb(MISC2_H2W_UART3, 0x98000000); uart_init(2); #else /* UART1 */ writeb(MISC2_H2W_UART1, 0x98000000); uart_init(0); #endif mdelay(100); } const char *board_cmdline(void) { return "mem=112M console=ttyMSM0 androidboot.console=ttyMSM0"; }; unsigned board_machtype(void) { return 1440; } void board_reboot(void) { gpio_set(25, 0); } void board_getvar(const char *name, char *value) { if(!strcmp(name, "version.amss")) { get_version_modem(value); } else if(!strcmp(name, "version.amss.sbl")) { get_version_modem_sbl(value); } }