⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uboot-20061030-neo1973.patch

📁 Uboot常用的移植patches, 方便定制移植到s3c2440
💻 PATCH
📖 第 1 页 / 共 5 页
字号:
+# ---------------------------------------------------------+# ---------------------------------------------------------+# Set up the GTA01 type define+# ---------------------------------------------------------++CFGINC=${obj}include/config.h+CFGTMP=${obj}board/neo1973/gta01/config.tmp++mkdir -p ${obj}include+if [ "$1" = "" ]+then+	echo "$0:: No parameters - using GTA01Bv3 config"+	echo "#define CONFIG_ARCH_GTA01B_v3" > $CFGINC+	echo "GTA01_BIG_RAM=y" > $CFGTMP+else+	case "$1" in+	gta01v4_config)+	echo "#define CONFIG_ARCH_GTA01_v4" > $CFGINC+	echo "GTA01_BIG_RAM=n" > $CFGTMP+	;;++	gta01v3_config)+	echo "#define CONFIG_ARCH_GTA01_v3" > $CFGINC+	echo "GTA01_BIG_RAM=n" > $CFGTMP+	;;++	gta01bv2_config)+	echo "#define CONFIG_ARCH_GTA01B_v2" > $CFGINC+	echo "GTA01_BIG_RAM=y" > $CFGTMP+	;;++	gta01bv3_config)+	echo "#define CONFIG_ARCH_GTA01B_v3" > $CFGINC+	echo "GTA01_BIG_RAM=y" > $CFGTMP+	;;++	gta01bv4_config)+	echo "#define CONFIG_ARCH_GTA01B_v4" > $CFGINC+	echo "GTA01_BIG_RAM=y" > $CFGTMP+	;;++	*)+	echo "$0:: Unrecognised config - using GTA01Bv4 config"+	echo "#define CONFIG_ARCH_GTA01B_v4" > $CFGINC+	echo "GTA01_BIG_RAM=y" > $CFGTMP+	;;++	esac++fi+# ---------------------------------------------------------+# Complete the configuration+# ---------------------------------------------------------+$MKCONFIG -a neo1973_gta01 arm arm920t gta01 neo1973 s3c24x0Index: u-boot/board/neo1973/gta01/u-boot.lds===================================================================--- /dev/null+++ u-boot/board/neo1973/gta01/u-boot.lds@@ -0,0 +1,58 @@+/*+ * (C) Copyright 2002+ * Gary Jennejohn, DENX Software Engineering, <gj@denx.de>+ *+ * See file CREDITS for list of people who contributed to this+ * project.+ *+ * 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., 59 Temple Place, Suite 330, Boston,+ * MA 02111-1307 USA+ */++OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")+/*OUTPUT_FORMAT("elf32-arm", "elf32-arm", "elf32-arm")*/+OUTPUT_ARCH(arm)+ENTRY(_start)+SECTIONS+{+	. = 0x00000000;++	. = ALIGN(4);+	.text      :+	{+	  cpu/arm920t/start.o	(.text)+	  cpu/arm920t/s3c24x0/nand_read.o (.text)+	  *(.text)+	}++	. = ALIGN(4);+	.rodata : { *(.rodata) }++	. = ALIGN(4);+	.data : { *(.data) }++	. = ALIGN(4);+	.got : { *(.got) }++	. = .;+	__u_boot_cmd_start = .;+	.u_boot_cmd : { *(.u_boot_cmd) }+	__u_boot_cmd_end = .;++	. = ALIGN(4);+	__bss_start = .;+	.bss (NOLOAD) : { *(.bss) }+	_end = .;+}Index: u-boot/include/configs/neo1973_gta01.h===================================================================--- /dev/null+++ u-boot/include/configs/neo1973_gta01.h@@ -0,0 +1,257 @@+/*+ * (C) Copyright 2006 OpenMoko, Inc.+ * Author: Harald Welte <laforge@openmoko.org>+ *+ * Configuation settings for the FIC Neo1973 GTA01 Linux GSM phone+ *+ * See file CREDITS for list of people who contributed to this+ * project.+ *+ * 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., 59 Temple Place, Suite 330, Boston,+ * MA 02111-1307 USA+ */++#ifndef __CONFIG_H+#define __CONFIG_H++#if defined(BUILD_FOR_RAM)+/* If we want to start u-boot from inside RAM */+#define CONFIG_SKIP_RELOCATE_UBOOT	1+#define CONFIG_SKIP_LOWLEVEL_INIT	1+#else+/* we want to start u-boot directly from within NAND flash */+#define CONFIG_S3C2410_NAND_BOOT	1+#define CONFIG_S3C2410_NAND_SKIP_BAD	1+#endif++#define CFG_UBOOT_SIZE		0x40000 /* size of u-boot, for NAND loading */++/*+ * High Level Configuration Options+ * (easy to change)+ */+#define CONFIG_ARM920T		1	/* This is an ARM920T Core	*/+#define	CONFIG_S3C2410		1	/* in a SAMSUNG S3C2410 SoC     */+#define CONFIG_SMDK2410		1	/* on a SAMSUNG SMDK2410 Board  */++/* input clock of PLL */+#define CONFIG_SYS_CLK_FREQ	12000000/* the GTA01 has 12MHz input clock */+++#define USE_920T_MMU		1+#define CONFIG_USE_IRQ		1++/*+ * Size of malloc() pool+ */+#define CFG_MALLOC_LEN		(CFG_ENV_SIZE + 128*1024)+#define CFG_GBL_DATA_SIZE	128	/* size in bytes reserved for initial data */++/*+ * Hardware drivers+ */++/*+ * select serial console configuration+ */+#define CONFIG_SERIAL1          1	/* we use SERIAL 1 on GTA01 */+#define CONFIG_SERIAL_MULTI++/* allow to overwrite serial and ethaddr */+#define CONFIG_ENV_OVERWRITE++#define CONFIG_BAUDRATE		115200++/***********************************************************+ * Command definition+ ***********************************************************/+#define CONFIG_CMD_BDI+#define CONFIG_CMD_LOADS+#define CONFIG_CMD_LOADB+#define CONFIG_CMD_IMI+#define CONFIG_CMD_CACHE+#define CONFIG_CMD_MEMORY+#define CONFIG_CMD_ENV+#define CONFIG_CMD_BOOTD+#define CONFIG_CMD_CONSOLE+#define CONFIG_CMD_ASKENV+#define CONFIG_CMD_RUN+#define CONFIG_CMD_ECHO+#define CONFIG_CMD_I2C+#define CONFIG_CMD_REGINFO+#define CONFIG_CMD_IMMAP+#define CONFIG_CMD_DATE+#define CONFIG_CMD_AUTOSCRIPT+#define CONFIG_CMD_BSP+#define CONFIG_CMD_ELF+#define CONFIG_CMD_MISC+#define CONFIG_CMD_DIAG+#define CONFIG_CMD_SAVES+#define CONFIG_CMD_NAND+#define CONFIG_CMD_PORTIO+#define CONFIG_CMD_MMC+#define CONFIG_CMD_FAT+#define CONFIG_CMD_EXT2+#define CONFIG_CMD_TERMINAL++#define CONFIG_BOOTDELAY	3+#define CONFIG_BOOTARGS    	"rootfstype=jffs2 root=/dev/mtdblock4 console=ttySAC0,115200 console=tty0 loglevel=8"+#define CONFIG_BOOTCOMMAND	"nand read.e 0x32000000 0x34000 0x200000; bootm 0x32000000"++#define CONFIG_DOS_PARTITION	1++#if defined(CONFIG_CMD_KGDB)+#define CONFIG_KGDB_BAUDRATE	115200		/* speed to run kgdb serial port */+/* what's this ? it's not used anywhere */+#define CONFIG_KGDB_SER_INDEX	1		/* which serial port to use */+#endif++/*+ * Miscellaneous configurable options+ */+#define	CFG_LONGHELP				/* undef to save memory		*/+#if defined(CONFIG_ARCH_GTA01_v3)+#define	CFG_PROMPT		"GTA01v3 # "	/* Monitor Command Prompt	*/+#elif defined(CONFIG_ARCH_GTA01_v4)+#define	CFG_PROMPT		"GTA01v4 # "	/* Monitor Command Prompt	*/+#elif defined(CONFIG_ARCH_GTA01B_v2)+#define	CFG_PROMPT		"GTA01Bv2 # "	/* Monitor Command Prompt	*/+#elif defined(CONFIG_ARCH_GTA01B_v3)+#define	CFG_PROMPT		"GTA01Bv3 # "	/* Monitor Command Prompt	*/+#elif defined(CONFIG_ARCH_GTA01B_v4)+#define	CFG_PROMPT		"GTA01Bv4 # "	/* Monitor Command Prompt	*/+#endif+#define	CFG_CBSIZE		256		/* Console I/O Buffer Size	*/+#define	CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */+#define	CFG_MAXARGS		16		/* max number of command args	*/+#define CFG_BARGSIZE		CFG_CBSIZE	/* Boot Argument Buffer Size	*/++#define CFG_MEMTEST_START	0x30000000	/* memtest works on	*/+#define CFG_MEMTEST_END		0x33F00000	/* 63 MB in DRAM	*/++#undef  CFG_CLKS_IN_HZ		/* everything, incl board info, in Hz */++#define	CFG_LOAD_ADDR		0x33000000	/* default load address	*/++/* the PWM TImer 4 uses a counter of 15625 for 10 ms, so we need */+/* it to wrap 100 times (total 1562500) to get 1 sec. */+#define	CFG_HZ			1562500++/* valid baudrates */+#define CFG_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200 }++/*-----------------------------------------------------------------------+ * Stack sizes+ *+ * The stack sizes are set up in start.S using the settings below+ */+#define CONFIG_STACKSIZE	(128*1024)	/* regular stack */+#ifdef CONFIG_USE_IRQ+#define CONFIG_STACKSIZE_IRQ	(4*1024)	/* IRQ stack */+#define CONFIG_STACKSIZE_FIQ	(4*1024)	/* FIQ stack */+#endif++#if 0+#define CONFIG_USB_OHCI		1+#endif++/*-----------------------------------------------------------------------+ * Physical Memory Map+ */+#define CONFIG_NR_DRAM_BANKS	1	   /* we have 1 bank of DRAM */+#define PHYS_SDRAM_1		0x30000000 /* SDRAM Bank #1 */+#if defined(CONFIG_ARCH_GTA01_v3) || defined(CONFIG_ARCH_GTA01_v4)+#define PHYS_SDRAM_1_SIZE	0x04000000 /* 64 MB */+#elif defined(CONFIG_ARCH_GTA01B_v2) || defined(CONFIG_ARCH_GTA01B_v3) || \+      defined(CONFIG_ARCH_GTA01B_v4)+#define PHYS_SDRAM_1_SIZE	0x08000000 /* 128 MB */+#else+#error Please define GTA01 variant+#endif+#define PHYS_SDRAM_RES_SIZE	0x00200000 /* 2 MB for frame buffer */++/*-----------------------------------------------------------------------+ * FLASH and environment organization+ */++/* No NOR flash in this device */+#define CFG_NO_FLASH		1++#define	CFG_ENV_IS_IN_NAND	1+#define CFG_ENV_SIZE		0x4000		/* 16k Total Size of Environment Sector */+#define CFG_ENV_OFFSET_OOB    1               /* Location of ENV stored in block 0 OOB */++#define NAND_MAX_CHIPS		1+#define CFG_NAND_BASE		0x4e000000+#define CFG_MAX_NAND_DEVICE	1++#define CONFIG_MMC		1+#define CFG_MMC_BASE		0xff000000++/* EXT2 driver */+#define CONFIG_EXT2		1++#define CONFIG_FAT		1+#define CONFIG_SUPPORT_VFAT++#if 0+/* JFFS2 driver */+#define CONFIG_JFFS2_CMDLINE	1+#define CONFIG_JFFS2_NAND	1+#define CONFIG_JFFS2_NAND_DEV	0+#define CONFIG_JFFS2_NAND_OFF	0x634000+#define CONFIG_JFFS2_NAND_SIZE	0x39cc000+#endif++/* ATAG configuration */+#define CONFIG_INITRD_TAG		1+#define CONFIG_SETUP_MEMORY_TAGS	1+#define CONFIG_CMDLINE_TAG		1+#define CONFIG_REVISION_TAG		1+#if 0+#define CONFIG_SERIAL_TAG		1+#endif++#define CONFIG_DRIVER_S3C24X0_I2C	1+#define CONFIG_HARD_I2C			1+#define CFG_I2C_SPEED			400000	/* 400kHz according to PCF50606 data sheet */+#define CFG_I2C_SLAVE			0x7f++/* we have a board_late_init() function */+#define BOARD_LATE_INIT			1++#if 1+#define CONFIG_VIDEO+#define CONFIG_VIDEO_S3C2410+#define CONFIG_CFB_CONSOLE+#define CONFIG_VIDEO_LOGO+#define CONFIG_VGA_AS_SINGLE_DEVICE++#define VIDEO_FB_16BPP_PIXEL_SWAP++#define VIDEO_KBD_INIT_FCT	0+#define VIDEO_TSTC_FCT		serial_tstc+#define VIDEO_GETC_FCT		serial_getc++#define LCD_VIDEO_ADDR		0x33d00000+#endif++#define CONFIG_S3C2410_NAND_BBT                1+#define CONFIG_S3C2410_NAND_HWECC              1++#define CONFIG_DRIVER_PCF50606		1+#define CONFIG_RTC_PCF50606		1++#endif	/* __CONFIG_H */Index: u-boot/board/neo1973/common/neo1973.h===================================================================--- /dev/null+++ u-boot/board/neo1973/common/neo1973.h@@ -0,0 +1,35 @@+#ifndef _NEO1973_H+#define _NEO1973_H++enum wakeup_reason {+	NEO1973_WAKEUP_NONE,+	NEO1973_WAKEUP_RESET,+	NEO1973_WAKEUP_POWER_KEY,+	NEO1973_WAKEUP_CHARGER,+	NEO1973_WAKEUP_ALARM,+};++enum neo1973_charger_cmd {+	NEO1973_CHGCMD_NONE,+	NEO1973_CHGCMD_AUTOFAST,+	NEO1973_CHGCMD_NO_AUTOFAST,+	NEO1973_CHGCMD_OFF,+	NEO1973_CHGCMD_FAST,+	NEO1973_CHGCMD_FASTER,+};++extern unsigned int neo1973_wakeup_cause;++void neo1973_poweroff(void);+void neo1973_backlight(int on);+void neo1973_vibrator(int on);+void neo1973_gsm(int on);+void neo1973_gps(int on);+void neo1973_led(int led, int on);++int neo1973_911_key_pressed(void);++const char *neo1973_get_charge_status(void);+int neo1973_set_charge_mode(enum neo1973_charger_cmd cmd);++#endifIndex: u-boot/common/cmd_terminal.c===================================================================--- u-boot.orig/common/cmd_terminal.c+++ u-boot/common/cmd_terminal.c@@ -50,7 +50,15 @@ 	if (!dev) 		return -1; -	serial_reinit_all();+#if defined(CONFIG_ARCH_GTA01_v3) || defined(CONFIG_ARCH_GTA01_v4) || \+    defined(CONFIG_ARCH_GTA01B_v2) || defined(CONFIG_ARCH_GTA01B_v3) || \+    defined(CONFIG_ARCH_GTA01B_v4)+	if (!strcmp(dev->name, "serial") ||+	    !strcmp(dev->name, "s3ser0"))+		neo1973_gta01_serial0_gsm(1);+#endif++	//serial_reinit_all(); 	printf("Entering terminal mode for port %s\n", dev->name); 	puts("Use '~.' to leave the terminal and get back to u-boot\n"); @@ -87,6 +95,14 @@ 			putc(c); 		} 	}+#if defined(CONFIG_ARCH_GTA01_v3) || defined(CON

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -