You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(79) |
Aug
(27) |
Sep
(64) |
Oct
(202) |
Nov
(31) |
Dec
(59) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(125) |
Feb
(173) |
Mar
(13) |
Apr
(140) |
May
(75) |
Jun
(1) |
Jul
(37) |
Aug
(14) |
Sep
|
Oct
(20) |
Nov
(9) |
Dec
(2) |
2003 |
Jan
(51) |
Feb
(12) |
Mar
(18) |
Apr
(24) |
May
(1) |
Jun
|
Jul
|
Aug
(72) |
Sep
(12) |
Oct
(18) |
Nov
(60) |
Dec
(26) |
2004 |
Jan
(1) |
Feb
(40) |
Mar
(3) |
Apr
(3) |
May
|
Jun
(1) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(5) |
2006 |
Jan
(13) |
Feb
(5) |
Mar
(8) |
Apr
(13) |
May
(7) |
Jun
(6) |
Jul
(10) |
Aug
(6) |
Sep
(6) |
Oct
(35) |
Nov
(20) |
Dec
(10) |
2007 |
Jan
(13) |
Feb
(9) |
Mar
(2) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(2) |
Aug
(3) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(1) |
2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(54) |
Jun
(78) |
Jul
(35) |
Aug
(21) |
Sep
(21) |
Oct
(29) |
Nov
(10) |
Dec
(5) |
2010 |
Jan
|
Feb
|
Mar
(26) |
Apr
(55) |
May
(73) |
Jun
(63) |
Jul
(38) |
Aug
(39) |
Sep
(19) |
Oct
(2) |
Nov
(1) |
Dec
(1) |
2011 |
Jan
(2) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: Tim R. <tim...@us...> - 2001-12-04 00:14:59
|
Update of /cvsroot/blob/blob/src/diag In directory usw-pr-cvs1:/tmp/cvs-serv2843/src/diag Modified Files: .cvsignore Log Message: cvs ignores Index: .cvsignore =================================================================== RCS file: /cvsroot/blob/blob/src/diag/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- .cvsignore 2001/10/07 19:37:07 1.1 +++ .cvsignore 2001/12/04 00:14:56 1.2 @@ -1,4 +1,6 @@ Makefile.in Makefile diag +diag-elf32 *.o +.deps |
From: Tim R. <tim...@us...> - 2001-12-04 00:14:59
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv2843/src/blob Modified Files: .cvsignore Log Message: cvs ignores Index: .cvsignore =================================================================== RCS file: /cvsroot/blob/blob/src/blob/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- .cvsignore 2001/10/07 19:37:07 1.1 +++ .cvsignore 2001/12/04 00:14:56 1.2 @@ -1,4 +1,6 @@ Makefile.in Makefile blob* +rest-ld-script *.o +.deps |
From: Tim R. <tim...@us...> - 2001-12-04 00:14:59
|
Update of /cvsroot/blob/blob/include/blob/arch In directory usw-pr-cvs1:/tmp/cvs-serv2843/include/blob/arch Added Files: .cvsignore Log Message: cvs ignores --- NEW FILE: .cvsignore --- Makefile Makefile.in |
From: Tim R. <tim...@us...> - 2001-11-21 02:36:34
|
Update of /cvsroot/blob/blob/include/blob/arch In directory usw-pr-cvs1:/tmp/cvs-serv16779/include/blob/arch Modified Files: shannon.h Log Message: test param Index: shannon.h =================================================================== RCS file: /cvsroot/blob/blob/include/blob/arch/shannon.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- shannon.h 2001/11/04 23:04:37 1.3 +++ shannon.h 2001/11/21 02:36:31 1.4 @@ -64,9 +64,9 @@ #define PARAM_RAM_BASE (0xc8040000) #define RAMDISK_RAM_BASE (0xd0000000) +#define PARAM_START PARAM_RAM_BASE /* and where do they live in flash */ -#warning "Please check Shannon default flash layout!" #define BLOB_FLASH_BASE (0x00000000) #define BLOB_FLASH_LEN (64 * 1024) #define PARAM_FLASH_BASE (BLOB_FLASH_BASE + BLOB_FLASH_LEN) |
From: Tim R. <tim...@us...> - 2001-11-21 02:14:46
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv12319/src/blob Modified Files: main.c system3.c Log Message: don't say change speed if not required Index: main.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/main.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- main.c 2001/11/21 02:03:12 1.10 +++ main.c 2001/11/21 02:14:44 1.11 @@ -200,7 +200,7 @@ blob_status.blobType = fromDownload; #ifdef PARAM_START } else if(strncmp(argv[1], "param", 5) == 0) { - /* download kernel */ + /* download param */ startAddress = PARAM_RAM_BASE; bufLen = PARAM_FLASH_LEN; numRead = &blob_status.paramSize; @@ -224,22 +224,28 @@ } - SerialOutputString("Switching to "); - PrintSerialSpeed(blob_status.downloadSpeed); - SerialOutputString(" baud\n"); + if (blob_status.terminalSpeed != blob_status.downloadSpeed) { + SerialOutputString("Switching to "); + PrintSerialSpeed(blob_status.downloadSpeed); + SerialOutputString(" baud\n"); - SerialOutputString("You have 60 seconds to switch your terminal emulator to the same speed and\n"); - SerialOutputString("start downloading. After that " PACKAGE " will switch back to "); - PrintSerialSpeed(blob_status.terminalSpeed); - SerialOutputString(" baud.\n"); + SerialOutputString("You have 60 seconds to switch your terminal emulator to the same speed and\n"); + SerialOutputString("start downloading. After that " PACKAGE " will switch back to "); + PrintSerialSpeed(blob_status.terminalSpeed); + SerialOutputString(" baud.\n"); - SerialInit(blob_status.downloadSpeed); + SerialInit(blob_status.downloadSpeed); + } else { + SerialOutputString("You have 60 seconds to start downloading.\n"); + } *numRead = UUDecode((char *)startAddress, bufLen); - SerialOutputString("\n(Please switch your terminal emulator back to "); - PrintSerialSpeed(blob_status.terminalSpeed); - SerialOutputString(" baud)\n"); + if (blob_status.terminalSpeed != blob_status.downloadSpeed) { + SerialOutputString("\n(Please switch your terminal emulator back to "); + PrintSerialSpeed(blob_status.terminalSpeed); + SerialOutputString(" baud)\n"); + } if(*numRead < 0) { /* something went wrong */ Index: system3.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/system3.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- system3.c 2001/11/13 13:22:35 1.6 +++ system3.c 2001/11/21 02:14:44 1.7 @@ -122,11 +122,15 @@ ret = strtou32( argv[2], &len ); if ( ret < 0 ) ERR( -EINVAL ); - SerialOutputString("Switching to download speed\n"); - SerialOutputString("You have 60 seconds to switch your terminal emulator to the same speed and\n"); - SerialOutputString("start downloading. After that " PACKAGE " will switch back to term speed.\n"); + if (blob_status.terminalSpeed != blob_status.downloadSpeed) { + SerialOutputString("Switching to download speed\n"); + SerialOutputString("You have 60 seconds to switch your terminal emulator to the same speed and\n"); + SerialOutputString("start downloading. After that " PACKAGE " will switch back to term speed.\n"); - SerialInit(blob_status.downloadSpeed); + SerialInit(blob_status.downloadSpeed); + } else { + SerialOutputString("You have 60 seconds to start downloading.\n"); + } ret = UUDecode((char *)dest, len); if ( ret == len ) { @@ -140,8 +144,10 @@ SerialOutputString("error during uudecode\n"); } - SerialOutputString("\n(Please switch your terminal emulator back to terminal speed\n"); - SerialInit(blob_status.terminalSpeed); + if (blob_status.terminalSpeed != blob_status.downloadSpeed) { + SerialOutputString("\n(Please switch your terminal emulator back to terminal speed\n"); + SerialInit(blob_status.terminalSpeed); + } DONE: return ret; |
From: Tim R. <tim...@us...> - 2001-11-21 02:03:15
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv10388/src/blob Modified Files: main.c Log Message: 115k2 for shannon Index: main.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/main.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- main.c 2001/11/04 23:15:41 1.9 +++ main.c 2001/11/21 02:03:12 1.10 @@ -95,7 +95,7 @@ /* call SerialInit() because the default 9k6 speed might not be what the user requested */ -#ifdef H3600 +#if defined(H3600) || defined(SHANNON) blob_status.terminalSpeed = baud115k2; /* DEBUG */ #endif SerialInit(blob_status.terminalSpeed); |
From: Stefan E. <se...@us...> - 2001-11-15 11:56:23
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv30276 Modified Files: start.S Log Message: - handle PSSR register (hplefully) correctly now. Clear DH and PH bits when sleep wakeup is detected. Index: start.S =================================================================== RCS file: /cvsroot/blob/blob/src/blob/start.S,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- start.S 2001/11/04 23:18:05 1.5 +++ start.S 2001/11/15 11:56:20 1.6 @@ -64,6 +64,7 @@ #define ICMR 0x04 PWR_BASE: .word 0x90020000 +#define PSSR 0x04 #define PSPR 0x08 #define PPCR 0x14 @@ -110,6 +111,15 @@ /* yes, a wake-up. clear RCSR by writing a 1 (see 9.6.2.1 from [1]) */ mov r1, #0x08 str r1, [r0, #RCSR] ; + + /* handle Power Manager Sleep Status Register (PSSR) + * see 9.5.7.5 from [1]*/ + ldr r1, [r0, #PSSR] + /* clear DH bit, brings out DRAM from self-refresh */ + orr r1, r1, #0x08 + /* clear PH bit, bring periperal pins out from sleep state */ + orr r1, r1, #0x10 + str r1, [r0, #PSSR] /* get the value from the PSPR and jump to it */ ldr r0, PWR_BASE |
From: Stefan E. <se...@us...> - 2001-11-13 13:29:07
|
Update of /cvsroot/blob/blob In directory usw-pr-cvs1:/tmp/cvs-serv21764 Modified Files: configure.in acconfig.h Log Message: - support NEPONSET board. NEPONSET is just ASSABET with NEPONSET defined additionally Index: configure.in =================================================================== RCS file: /cvsroot/blob/blob/configure.in,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- configure.in 2001/11/05 15:29:26 1.25 +++ configure.in 2001/11/13 13:29:05 1.26 @@ -87,6 +87,16 @@ use_cpu="sa1110" use_lcd="no" ;; + neponset) + board_name="Intel Assabet with Neponset Expansion Board" + AC_DEFINE(ASSABET) + AC_DEFINE(NEPONSET) + BLOB_PLATFORM_OBJ="assabet.o" + AC_MSG_WARN([Please check assabet memory config in arch/assabet.h]) + BLOB_FLASH_OBJS="intel32.o" + use_cpu="sa1110" + use_lcd="no" + ;; brutus) board_name="Intel Brutus" AC_DEFINE(BRUTUS) Index: acconfig.h =================================================================== RCS file: /cvsroot/blob/blob/acconfig.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- acconfig.h 2001/10/31 16:36:12 1.7 +++ acconfig.h 2001/11/13 13:29:05 1.8 @@ -59,6 +59,9 @@ /* Define for Assabet boards */ #undef ASSABET +/* Define if Neponset board attached to Assabet */ +#undef NEPONSET + /* Define for Brutus boards */ #undef BRUTUS |
From: Stefan E. <se...@us...> - 2001-11-13 13:27:21
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv21186 Modified Files: linux.c Log Message: - when NEPONSET board is used, do not report the 2nd bank of memory to the kernel (this would require NUMA support in the kernel) Index: linux.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/linux.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- linux.c 2001/10/31 16:44:18 1.5 +++ linux.c 2001/11/13 13:27:18 1.6 @@ -107,6 +107,13 @@ params = tag_next(params); } +#if defined( NEPONSET ) + /* When neponset board is present dont report + * the 2nd ram area to the kernel. This area + * is on the neponset board and would require + * NUMA support in the kernel.*/ + break; +#endif } } |
From: Stefan E. <se...@us...> - 2001-11-13 13:24:38
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv20679 Modified Files: debug.c Log Message: - peek: byte, word and long access methods Index: debug.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/debug.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- debug.c 2001/10/29 11:49:20 1.4 +++ debug.c 2001/11/13 13:24:28 1.5 @@ -54,14 +54,14 @@ * program globals */ -char memcpyhelp[] = "memcpy [source] [dest] [len]\n" +static char memcpyhelp[] = "memcpy [source] [dest] [len]\n" "copy memory blocks\n"; -char pokehelp[] = "poke address value\n"; +static char pokehelp[] = "poke address value\n"; -char peekhelp[] = "peek address\n"; +static char peekhelp[] = "peek address\n"; -char bitchghelp[] = "bitchg address value {and|or|xor|set|clear}\n"; +static char bitchghelp[] = "bitchg address value {and|or|xor|set|clear}\n"; /********************************************************************** @@ -220,20 +220,48 @@ int ret = 0; u32 address; u32 value; + char type = 'l'; if ( argc < 2 ) ERR( -EINVAL ); ret = strtou32(argv[1], &address); if ( ret < 0 ) ERR( -EINVAL ); + if ( argc >= 2 ) { + type = argv[2][0]; + SerialOutputString("type="); + SerialOutputByte(type); + SerialOutputString("\n"); + } + #if CHKMEM_DEBUG SerialOutputString("adr=0x"); SerialOutputHex(address); SerialOutputString("\n"); #endif - value = MEM( address ); + value = 0; + switch( type | 0x20 ) { + case 'b': + value = (*((u8 *)address)) & 0xff; + barrier(); + break; + case 'w': + value = (*((u16 *)address))& 0xffff; + barrier(); + break; + case 'l': + value = (*((u32 *)address)); + barrier(); + break; + default: + ret = -EINVAL; + goto DONE; + break; + } + SerialOutputByte(type); + SerialOutputByte(' '); SerialOutputHex(value); SerialOutputString("\n"); |
From: Stefan E. <se...@us...> - 2001-11-13 13:22:38
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv20213 Modified Files: system3.c Log Message: - fixed command name clashes Index: system3.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/system3.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- system3.c 2001/11/05 09:21:24 1.5 +++ system3.c 2001/11/13 13:22:35 1.6 @@ -146,9 +146,9 @@ DONE: return ret; } -static char downloadhelp[] = "download_file destadr filelength\n" +static char downloadhelp[] = "dlfile destadr filelength\n" "download file to memory\n"; -__commandlist( cmd_download_file, "download_file", downloadhelp ); +__commandlist( cmd_download_file, "dlfile", downloadhelp ); /********************************************************************* * cmd_flash_write @@ -191,9 +191,9 @@ DONE: return ret; } -static char flashwritehelp[] = "flash_write srcadr destadr size(bytes)\n" +static char flashwritehelp[] = "fwrite srcadr destadr size(bytes)\n" "flash a memory region\n"; -__commandlist( cmd_flash_write, "flash_write", flashwritehelp ); +__commandlist( cmd_flash_write, "fwrite", flashwritehelp ); /********************************************************************* * cmd_flash_erase @@ -228,6 +228,6 @@ DONE: return ret; } -static char flasherasehelp[] = "flash_erase adr size(bytes)\n" +static char flasherasehelp[] = "ferase adr size(bytes)\n" "erase a flash region\n"; -__commandlist( cmd_flash_erase, "flash_erase", flasherasehelp ); +__commandlist( cmd_flash_erase, "ferase", flasherasehelp ); |
From: Stefan E. <se...@us...> - 2001-11-13 13:20:34
|
Update of /cvsroot/blob/blob/src/diag In directory usw-pr-cvs1:/tmp/cvs-serv19506 Modified Files: system3.c Log Message: - fixes for newer kernels (tested for 2.4.13-ac5-rmk2) due to changes in SA-1111.h Index: system3.c =================================================================== RCS file: /cvsroot/blob/blob/src/diag/system3.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- system3.c 2001/11/05 09:25:31 1.4 +++ system3.c 2001/11/13 13:20:31 1.5 @@ -114,12 +114,12 @@ TUCR = TUCR_3_6864MHz; /* Now, set up the PLL and RCLK in the SA-1111: */ - SKCR = SKCR_PLL_BYPASS | SKCR_RDYEN | SKCR_OE_EN; + SBI_SKCR = SKCR_PLL_BYPASS | SKCR_RDYEN | SKCR_OE_EN; msleep(100); - SKCR = SKCR_PLL_BYPASS | SKCR_RCLKEN | SKCR_RDYEN | SKCR_OE_EN; + SBI_SKCR = SKCR_PLL_BYPASS | SKCR_RCLKEN | SKCR_RDYEN | SKCR_OE_EN; SerialOutputString( "SA1111 ID: " ); - SerialOutputHex( SKID ); + SerialOutputHex( SBI_SKID ); SerialOutputString( "\n" ); /* @@ -140,7 +140,7 @@ GPDR &= ~GPIO_MBREQ; TUCR |= TUCR_MR; - SMCR = (SMCR_DTIM | SMCR_MBGE | + SBI_SMCR = (SMCR_DTIM | SMCR_MBGE | FInsrt(FExtr(MDCNFG, MDCNFG_SA1110_DRAC0), SMCR_DRAC) | ((FExtr(MDCNFG, MDCNFG_SA1110_TDL0)==3) ? SMCR_CLAT : 0)); } @@ -201,7 +201,7 @@ * static functions */ -#if 0 +#if 1 #define SMC_BASE 0x18000000 #define BANK_SELECT 14 #define LAN91C96_ECOR 0x0 @@ -238,6 +238,7 @@ u32 *attr; u16 bank; + /* 0x1a020000 */ attr = (u32 *)(((u32)base | (1<<25)) + (0x8000*4)); /* enable the device */ |
From: Erik M. <er...@us...> - 2001-11-07 16:47:40
|
Update of /cvsroot/blob/blob/doc In directory usw-pr-cvs1:/tmp/cvs-serv21268 Added Files: porting.txt Log Message: my very basic porting-to-ipaq guide to CVS see it as a start for a new "porting blob" guide --- NEW FILE: porting.txt --- Add machine definition to configure.in: h3600) AC_MSG_RESULT(Ipaq H3600) AC_DEFINE(H3600) AC_DEFINE(USE_SERIAL3) BLOB_PLATFORM_OBJ="h3600.o" AC_MSG_WARN([Warning: untested platform!]) BLOB_FLASH_OBJS="nullflash.o" use_cpu="sa1110" use_lcd="no" ;; Add machine define to acconfig.h: /* Define for Ipaq H3600 */ #undef H3600 Add machine to include/blob/arch.h: #elif defined H3600 # include <blob/arch/h3600.h> Add machine dependent architecture file: cd include/blob/arch/ cp assabet.h h3600.h Edit h3600.h Add machine dependent architecture header file to Makefile.am h3600.h Add machine to "arch" variable in utils/build/build_all and utils/build/build_Makefile. Add machine dependent source file to EXTRA_blob_rest_elf32_SOURCES in src/blob/Makefile.am Add machine dependent source file: cd src/blob cp assabet.c h3600.c Edit h3600.c Edit memsetup-sa1110.S and add correct memory setup Add architecture number to include/blob/linux.h: #elif defined H3600 # define ARCH_NUMBER (22) |
From: Erik M. <er...@us...> - 2001-11-07 16:38:49
|
Update of /cvsroot/blob/blob/doc In directory usw-pr-cvs1:/tmp/cvs-serv18802/doc Log Message: Directory /cvsroot/blob/blob/doc added to the repository |
From: Erik M. <er...@us...> - 2001-11-07 14:43:20
|
Update of /cvsroot/blob/blob In directory usw-pr-cvs1:/tmp/cvs-serv15687 Modified Files: README Log Message: README updates from Kevin Lo (ke...@ms...). Not completely correct, but it fixes the basic errors. Index: README =================================================================== RCS file: /cvsroot/blob/blob/README,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- README 2001/08/30 08:45:45 1.4 +++ README 2001/11/07 14:43:17 1.5 @@ -464,18 +464,19 @@ ------------------------------------------ First you need two know a couple of things: the name of the board, -what kind of CPU the board uses (SA1100 or SA1110), what kind of RAM -it uses (EDODRAM or SDRAM), and which serial port will be the console -(port 1 or 3). Let's assume the foobar platform has an SA1100 CPU, -uses EDODRAM, and serial port 1 as console. The correct lines for -configure.in will be: +what kind of CPU the board uses (SA1100 or SA1110), whether it has +LCD support, and the name of the platform obj and flash obj. +Let's assume the foobar platform has an SA1100 CPU, no use LCD, +and platform obj and flahs obj are foobar.o. +The correct lines for configure.in will be: foobar) - AC_MSG_RESULT(foobar) + board_name="Foobar Board" AC_DEFINE(FOOBAR) - AC_DEFINE(USE_SA1100) - AC_DEFINE(USE_EDODRAM) - AC_DEFINE(USE_SERIAL1) + BLOB_PLATFORM_OBJ="foobar.o" + BLOB_FLASH_OBJS="foobar.o" + use_cpu="sa1100" + use_lcd="no" ;; Put this just after the CreditLART definition. @@ -522,7 +523,7 @@ ** Select correct clock speed ----------------------------- -Open src/start.S in an editor, and add a line to select the correct +Open src/blob/start.S in an editor, and add a line to select the correct clock speed (just before the SHANNON definition): #if defined FOOBAR @@ -532,9 +533,9 @@ ** Edit memory settings ----------------------- -Edit src/memsetup.c and add the correct memory setting for the foobar -architecture. Add these (example) settings right before the PLEB -definitions: +Edit src/blob/memsetup-sa1100.S or src/blob/memsetup-sa1110.S, +and add the correct memory setting for the foobar architecture. +Add these (example) settings right before the PLEB definitions: #if defined FOOBAR mdcas0: .long 0x1c71c01f @@ -554,7 +555,7 @@ ** Edit LED defines ------------------- -If your board has a LED on a GPIO pin, edit include/led.h in an editor +If your board has a LED on a GPIO pin, edit include/blob/led.h in an editor to switch it on early in the boot stage. Let's assume the foobar board has the LED on GPIO pin 1, so add the following lines just before the PLEB definition: |
From: Stefan E. <se...@us...> - 2001-11-07 12:25:07
|
Update of /cvsroot/blob/blob/include/blob In directory usw-pr-cvs1:/tmp/cvs-serv10627 Modified Files: sa1100.h Log Message: - fix for newer kernels Index: sa1100.h =================================================================== RCS file: /cvsroot/blob/blob/include/blob/sa1100.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sa1100.h 2001/10/07 15:17:49 1.1 +++ sa1100.h 2001/11/07 12:25:03 1.2 @@ -24,14 +24,11 @@ #ifndef BLOB_SA1100_H #define BLOB_SA1100_H - - +#define io_p2v(x) (x) +#define __REG(x) (*((volatile u32 *)io_p2v(x))) /* Tell SA-1100.h to shut up; we're including it anyway. Nyah nyah ;-) */ #define __ASM_ARCH_HARDWARE_H #include <asm-arm/arch-sa1100/SA-1100.h> - - - #endif |
From: Erik M. <er...@us...> - 2001-11-05 15:29:29
|
Update of /cvsroot/blob/blob In directory usw-pr-cvs1:/tmp/cvs-serv4264 Modified Files: configure.in Log Message: Kick version to 2.0.5-pre2 now 2.0.5-pre1 has been released as a development snapshot. Index: configure.in =================================================================== RCS file: /cvsroot/blob/blob/configure.in,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- configure.in 2001/10/31 16:36:12 1.24 +++ configure.in 2001/11/05 15:29:26 1.25 @@ -19,7 +19,7 @@ PACKAGE=blob BLOB_MAJOR_VERSION=2 BLOB_MINOR_VERSION=0 -BLOB_MICRO_VERSION=5-pre1 +BLOB_MICRO_VERSION=5-pre2 BLOB_VERSION=$BLOB_MAJOR_VERSION.$BLOB_MINOR_VERSION.$BLOB_MICRO_VERSION VERSION=$BLOB_VERSION |
From: Erik M. <er...@us...> - 2001-11-05 13:56:50
|
Update of /cvsroot/blob/blob In directory usw-pr-cvs1:/tmp/cvs-serv12206 Modified Files: ChangeLog RELEASE-NOTES Log Message: Release notes and changelog for the blob-2.0.5-pre1 release Index: ChangeLog =================================================================== RCS file: /cvsroot/blob/blob/ChangeLog,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- ChangeLog 2001/11/04 23:06:41 1.8 +++ ChangeLog 2001/11/05 13:56:46 1.9 @@ -3,7 +3,7 @@ $Id$ -blob-2.0.5: +blob-2.0.5-pre1: - New flash ROM program code Erik Mouw - Ipaq H3600 port Erik Mouw - Memory tester Stefan Eletzhofer Index: RELEASE-NOTES =================================================================== RCS file: /cvsroot/blob/blob/RELEASE-NOTES,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- RELEASE-NOTES 2001/08/30 19:08:01 1.4 +++ RELEASE-NOTES 2001/11/05 13:56:46 1.5 @@ -1,5 +1,41 @@ $Id$ +Release notes for blob-2.0.5-pre1 +================================= + +This is blob-2.0.5-pre1, a development snapshot. This is a work in +progress, so expect it to break on some parts. Don't complain that we +didn't warn you! + +This version of blob is a major change from blob-2.0.4: lots of +cleanups, a couple of new features, and a lot easier to port to new +architectures. Note that the documentation is no longer in sync with +the code, we need to clean that up as well. + +This snapshot is reported to work on: + +- Assabet +- LART +- Ipaq (only blob-chain) +- System3 + +It should work on: + +- NESA +- PLEB +- Shannon (aka TuxScreen) + +But was never tested on: + +- Brutus +- CreditLART + +If you meet any problems, don't hesitate to write to the LART mailing +list (see http://www.lart.tudelft.nl/list/), or join the #blob IRC +channel on irc.openprojects.net. + + + Release notes for blob-2.0.4 ============================ |
From: Stefan E. <se...@us...> - 2001-11-05 09:25:33
|
Update of /cvsroot/blob/blob/src/diag In directory usw-pr-cvs1:/tmp/cvs-serv12083 Modified Files: system3.c Log Message: - added register display command (will fork off to a separate file later) - added smc 91c96 testing function (first shot) - cleaned up code a bit, mostly cosmetic Index: system3.c =================================================================== RCS file: /cvsroot/blob/blob/src/diag/system3.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- system3.c 2001/10/15 15:04:25 1.3 +++ system3.c 2001/11/05 09:25:31 1.4 @@ -50,10 +50,6 @@ #define SET(reg,bit) ((reg) |= (1<<(bit))) #define CLR(reg,bit) ((reg) &= ~(1<<(bit))) -#define mem_b(adr) ( ((volatile unsigned char*)0)[adr] ) -#define mem_w(adr) ( ((volatile unsigned short int*)0)[(adr)/2] ) -#define mem_dw(adr) ( ((volatile unsigned long*)(0)) [(adr)/4] ) - /* Optimization barrier */ /* The "volatile" is due to gcc bugs */ #define barrier() __asm__ __volatile__("": : :"memory") @@ -66,12 +62,36 @@ #define CPLD_2 (CPLD_BASE + 0xB0) /********************************************************************** + * types + */ +typedef struct _reg { + char *name; + u32 adr; +} register_t; + +/********************************************************************** * program globals */ /********************************************************************** * module globals */ +static register_t registers[] = { + { "MDCNFG ", 0xa0000000 + 0x0 }, + { "MDCAS00", 0xa0000000 + 0x04 }, + { "MDCAS01", 0xa0000000 + 0x08 }, + { "MDCAS02", 0xa0000000 + 0x0c }, + { "MCS0 ", 0xa0000000 + 0x10 }, + { "MCS1 ", 0xa0000000 + 0x14 }, + { "MECR ", 0xa0000000 + 0x18 }, + { "MDREFR ", 0xa0000000 + 0x1C }, + { "MDCAS20", 0xa0000000 + 0x20 }, + { "MDCAS21", 0xa0000000 + 0x24 }, + { "MDCAS22", 0xa0000000 + 0x28 }, + { "MCS2 ", 0xa0000000 + 0x2C }, + { "SMCNFG ", 0xa0000000 + 0x30 }, + { NULL, 0 } +}; /********************************************************************** * prototypes @@ -181,18 +201,90 @@ * static functions */ -static int cpldtest( int argc, char *argv[] ) +#if 0 +#define SMC_BASE 0x18000000 +#define BANK_SELECT 14 +#define LAN91C96_ECOR 0x0 +#define LAN91C96_ECSR 0x2 + +#define ECOR_RESET 0x80 +#define ECOR_LEVEL_IRQ 0x40 +#define ECOR_WR_ATTRIB 0x02 +#define ECOR_ENABLE 0x01 + +#define ECSR_IOIS8 0x20 +#define ECSR_PWRDWN 0x04 +#define ECSR_INT 0x02 +#define SMC_inb( r ) (*((volatile u8 *)(base+((r)<<2)))) +static inline unsigned short __SMC_inw(unsigned base, int r) +{ + unsigned char b1, b2; + msleep(1); + b1 = SMC_inb(r); + msleep(1); + b2 = SMC_inb(r+1); + return (b2 << 8) | b1; +} +#define SMC_inw(r) __SMC_inw(base, r) +#define SMC_outb( d, r ) (*((volatile u8 *)(base+((r)<<2))) = (u8)(d)) +#define SMC_outw( d, r ) do { \ + msleep(1);\ + SMC_outb((d), r); \ + msleep(1);\ + SMC_outb((d)>>8, (r)+1);} while (0) +static int smctest( int argc, char *argv[] ) { + u32 *base = (u32 *)SMC_BASE; + u32 *attr; + u16 bank; - int i = 100000; - unsigned char x = 0; + attr = (u32 *)(((u32)base | (1<<25)) + (0x8000*4)); -label: - x = (*((unsigned char *)0x10000090)); - barrier(); - (*((unsigned char *)0x10000090)) = x; - barrier(); - goto label; + /* enable the device */ + attr[LAN91C96_ECOR] |= ECOR_RESET; + msleep(100); + + /* the device will ignore all writes to the enable bit while reset is + * asserted, even if the reset bit is cleared in the same write. Must + * clear reset first, then enable the device. + */ + attr[LAN91C96_ECOR] &= ~ECOR_RESET; + attr[LAN91C96_ECOR] |= ECOR_ENABLE; + + /* force byte mode */ + attr[LAN91C96_ECSR] |= ECSR_IOIS8; + + bank = SMC_inw( BANK_SELECT ); + SerialOutputString( "bank " ); + SerialOutputHex( bank & 0xffff ); + SerialOutputString( "\n" ); + + SMC_outw( 0, BANK_SELECT ); + bank = SMC_inw( BANK_SELECT ); + SerialOutputString( "bank " ); + SerialOutputHex( bank & 0xffff ); + SerialOutputString( "\n" ); + + return 0; } -static char cpldhelp[] = "does not return!\n"; -__commandlist(cpldtest, "cpldtest", cpldhelp); +static char smctesthelp[] = "test smc 91c96 ethernet chip\n"; +__commandlist(smctest, "smctest", smctesthelp); +#endif + +static int regs_show( int argc, char *argv[] ) +{ + int i = 0; + + i = 0; + while ( registers[i].name ) { + SerialOutputString( registers[i].name ); + SerialOutputString( "= 0x" ); + SerialOutputHex( MEM( registers[i].adr ) ); + SerialOutputByte( '\n' ); + i++; + } + + return 0; +} +static char regshelp[] = "print register info\n"; +__commandlist(regs_show, "regs", regshelp); |
From: Stefan E. <se...@us...> - 2001-11-05 09:21:27
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv11224 Modified Files: system3.c Log Message: - added commands for raw flash writing/erasing (until partitioning support) - added command for raw file download Index: system3.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/system3.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- system3.c 2001/10/29 11:42:58 1.4 +++ system3.c 2001/11/05 09:21:24 1.5 @@ -2,6 +2,8 @@ * system3.c: PT System3 specific stuff * * Copyright (C) 2001 Erik Mouw (J.A...@it...) + * Copyright (C) 2001 Stefan Eletzhofer + * (ste...@ww...) * * 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 @@ -21,16 +23,45 @@ #ident "$Id$" +/********************************************************************** + * includes + */ + #ifdef HAVE_CONFIG_H # include <blob/config.h> #endif +#include <blob/main.h> +#include <blob/arch.h> +#include <blob/errno.h> +#include <blob/error.h> +#include <blob/util.h> +#include <blob/serial.h> #include <blob/flash.h> #include <blob/init.h> +#include <blob/command.h> +#include <blob/uucodec.h> +/********************************************************************** + * defines + */ +/* this will send a cold shiver through erik's spine ... */ +#define ERR( x ) { ret = x; goto DONE; } +/* more readable IMHO */ +#define MEM( x ) (*((u32 *)x)) +/********************************************************************** + * globals + */ + +extern blob_status_t blob_status; + +/********************************************************************** + * module globals + */ + /* flash descriptor for System3 flash. */ /* System 3 uses 2xINTEL e28F640 Chips */ static flash_descriptor_t system3_flash_descriptors[] = @@ -44,10 +75,20 @@ /* NULL block */ }, }; - - +/********************************************************************** + * static functions + */ +/********************************************************************* + * init_system3_flash + * + * AUTOR: SELETZ + * REVISED: + * + * inits system 3 flash driver + * + */ static void init_system3_flash_driver(void) { flash_descriptors = system3_flash_descriptors; @@ -55,3 +96,138 @@ } __initlist(init_system3_flash_driver, INIT_LEVEL_OTHER_STUFF); + + + +/********************************************************************* + * cmd_download_file + * + * AUTOR: SELETZ + * REVISED: + * + * Download a file to arbitary memory location + * + */ +int cmd_download_file( int argc, char *argv[] ) +{ + int ret = 0; + u32 dest = 0L; + u32 len = 0L; + + if ( argc < 3 ) ERR( -EINVAL ); + + ret = strtou32( argv[1], &dest ); + if ( ret < 0 ) ERR( -EINVAL ); + + ret = strtou32( argv[2], &len ); + if ( ret < 0 ) ERR( -EINVAL ); + + SerialOutputString("Switching to download speed\n"); + SerialOutputString("You have 60 seconds to switch your terminal emulator to the same speed and\n"); + SerialOutputString("start downloading. After that " PACKAGE " will switch back to term speed.\n"); + + SerialInit(blob_status.downloadSpeed); + + ret = UUDecode((char *)dest, len); + if ( ret == len ) { + SerialOutputString("Received "); + SerialOutputDec(ret); + SerialOutputString(" (0x"); + SerialOutputHex(ret); + SerialOutputString(") bytes.\n"); + ret = 0; + } else { + SerialOutputString("error during uudecode\n"); + } + + SerialOutputString("\n(Please switch your terminal emulator back to terminal speed\n"); + SerialInit(blob_status.terminalSpeed); + +DONE: + return ret; +} +static char downloadhelp[] = "download_file destadr filelength\n" +"download file to memory\n"; +__commandlist( cmd_download_file, "download_file", downloadhelp ); + +/********************************************************************* + * cmd_flash_write + * + * AUTOR: SELETZ + * REVISED: + * + * Command wrapper for low-level flash write access + * + */ +static int cmd_flash_write( int argc, char *argv[] ) +{ + int ret = 0; + u32 src = 0L; + u32 dest = 0L; + u32 len = 0L; + + if ( argc < 4 ) ERR( -EINVAL ); + + ret = strtou32( argv[1], &src ); + if ( ret < 0 ) ERR( -EINVAL ); + + ret = strtou32( argv[2], &dest ); + if ( ret < 0 ) ERR( -EINVAL ); + + ret = strtou32( argv[3], &len ); + if ( ret < 0 ) ERR( -EINVAL ); + + if ( len & (0x3) ) { + len = (len>>2) + 1; + } else { + len = len>>2; + } + + _DBGU32( src ); + _DBGU32( dest ); + _DBGU32( len ); + + ret = flash_write_region( (u32 *)dest, (u32*)src, len ); +DONE: + return ret; +} +static char flashwritehelp[] = "flash_write srcadr destadr size(bytes)\n" +"flash a memory region\n"; +__commandlist( cmd_flash_write, "flash_write", flashwritehelp ); + +/********************************************************************* + * cmd_flash_erase + * + * AUTOR: SELETZ + * REVISED: + * + * Command wrapper for low-level flash erasing + * + */ +static int cmd_flash_erase( int argc, char *argv[] ) +{ + int ret = 0; + u32 dest = 0L; + u32 len = 0L; + + if ( argc < 3 ) ERR( -EINVAL ); + + ret = strtou32( argv[1], &dest ); + if ( ret < 0 ) ERR( -EINVAL ); + + ret = strtou32( argv[2], &len ); + if ( ret < 0 ) ERR( -EINVAL ); + + if ( len & (0x3) ) { + len = (len>>2) + 1; + } else { + len = len>>2; + } + + ret = flash_erase_region( (u32 *)dest, len ); +DONE: + return ret; +} +static char flasherasehelp[] = "flash_erase adr size(bytes)\n" +"erase a flash region\n"; +__commandlist( cmd_flash_erase, "flash_erase", flasherasehelp ); |
From: Stefan E. <se...@us...> - 2001-11-05 09:19:28
|
Update of /cvsroot/blob/blob/include/blob/arch In directory usw-pr-cvs1:/tmp/cvs-serv10758 Modified Files: system3.h Log Message: - add some macros Index: system3.h =================================================================== RCS file: /cvsroot/blob/blob/include/blob/arch/system3.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- system3.h 2001/11/05 07:23:09 1.5 +++ system3.h 2001/11/05 09:19:24 1.6 @@ -116,5 +116,16 @@ #endif #endif +/* Debugging macros used in system 3 code */ +#define SYSTEM3_DEBUG 1 + +#ifdef SYSTEM3_DEBUG +# define _DBGU32( x ) SerialOutputString( #x"=0x" ); \ + SerialOutputHex( (u32)x ); \ + SerialOutputByte( '\n' ); +#else +# define _DBGU32( x ) +#endif + #endif |
From: Stefan E. <se...@us...> - 2001-11-05 07:23:12
|
Update of /cvsroot/blob/blob/include/blob/arch In directory usw-pr-cvs1:/tmp/cvs-serv19248 Modified Files: system3.h Log Message: - reflect Erik's changes - hard-coded flash adresses until partitioning support is done Index: system3.h =================================================================== RCS file: /cvsroot/blob/blob/include/blob/arch/system3.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- system3.h 2001/11/04 23:04:37 1.4 +++ system3.h 2001/11/05 07:23:09 1.5 @@ -54,14 +54,13 @@ /* and where do they live in flash */ -#warning "Please check System3 default flash layout!" #define BLOB_FLASH_BASE (0x00000000) #define BLOB_FLASH_LEN (256 * 1024) -#define PARAM_FLASH_BASE (BLOB_FLASH_BASE + BLOB_FLASH_LEN) +#define PARAM_FLASH_BASE (0x00040000) #define PARAM_FLASH_LEN (256 * 1024) -#define KERNEL_FLASH_BASE (PARAM_FLASH_BASE + PARAM_FLASH_LEN) +#define KERNEL_FLASH_BASE (0x00080000) #define KERNEL_FLASH_LEN (1024 * 1024) -#define RAMDISK_FLASH_BASE (KERNEL_FLASH_BASE + KERNEL_FLASH_LEN) +#define RAMDISK_FLASH_BASE (0x00180000) #define RAMDISK_FLASH_LEN (4 * 1024 * 1024) |
From: Erik M. <er...@us...> - 2001-11-04 23:20:55
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv16136 Removed Files: rest-ld-script Log Message: Get rid of the old rest-ld-script --- rest-ld-script DELETED --- |
From: Erik M. <er...@us...> - 2001-11-04 23:20:19
|
Update of /cvsroot/blob/blob/src/diag In directory usw-pr-cvs1:/tmp/cvs-serv15988 Modified Files: main.c Log Message: Debug hack to run diag properly on an Ipaq. Index: main.c =================================================================== RCS file: /cvsroot/blob/blob/src/diag/main.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- main.c 2001/10/28 20:26:06 1.2 +++ main.c 2001/11/04 23:20:16 1.3 @@ -44,6 +44,10 @@ /* call subsystems */ init_subsystems(); +#ifdef H3600 + SerialInit(baud115k2); /* DEBUG */ +#endif + SerialOutputString("\ndiag version " VERSION " for " BOARD_NAME "\n" "Copyright (C) 2001 " "Stefan Eletzhofer and Erik Mouw\n"); |
From: Erik M. <er...@us...> - 2001-11-04 23:19:21
|
Update of /cvsroot/blob/blob/src/diag In directory usw-pr-cvs1:/tmp/cvs-serv15834 Modified Files: start.S Log Message: Trick bootldr on Ipaq to think this is a kernel image so it loads diag in the correct way. Index: start.S =================================================================== RCS file: /cvsroot/blob/blob/src/diag/start.S,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- start.S 2001/10/28 22:14:20 1.2 +++ start.S 2001/11/04 23:19:13 1.3 @@ -26,6 +26,17 @@ .globl _start _start: +#ifdef H3600 + /* this is a hack to be able to chain load diag from + * bootldr. bootldr checks if it can find the linux zImage + * magic value at the ninth word of an image, so we just put + * it there. + */ + b do_bss +.org (_start + 9 * 4) + .word 0x016f2818 +do_bss: +#endif /* clear the BSS section */ ldr r1, bss_start ldr r0, bss_end |