* Patch by Steven Scholz, 25 Feb 2004:
authorwdenk <wdenk>
Fri, 27 Feb 2004 00:07:27 +0000 (00:07 +0000)
committerwdenk <wdenk>
Fri, 27 Feb 2004 00:07:27 +0000 (00:07 +0000)
  - Timeouts in FPGA code should be based on CFG_HZ
  - Minor cleanup in code for Altera FPGA ACEX1K

* Patch by Steven Scholz, 25 Feb 2004:
  Changed "Directory Hierarchy" section in README

* Patch by Masami Komiya, 25 Feb 2004:
  Reduce copy count in nfs_read_reply() of NFS code

CHANGELOG
README
common/ACEX1K.c
common/spartan2.c
common/virtex2.c
net/nfs.c
net/nfs.h

index 64277b1af599ed647493b793331b5ffe3af70459..7ca03e27ceb4915bc84bd4dc7e11312319c63d1c 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,16 @@
 Changes for U-Boot 1.0.2:
 ======================================================================
 
+* Patch by Steven Scholz, 25 Feb 2004:
+  - Timeouts in FPGA code should be based on CFG_HZ
+  - Minor cleanup in code for Altera FPGA ACEX1K
+
+* Patch by Steven Scholz, 25 Feb 2004:
+  Changed "Directory Hierarchy" section in README
+
+* Patch by Masami Komiya, 25 Feb 2004:
+  Reduce copy count in nfs_read_reply() of NFS code
+
 * Patch by Markus Pietrek, 24 Feb 2004:
   NS9750 DevBoard added
 
diff --git a/README b/README
index b5a287cbf73ff4eea0fdefaa032c300ec7eda46c..dc9d97590174ec555fd1fd658c28c7d826c1416c 100644 (file)
--- a/README
+++ b/README
@@ -122,135 +122,45 @@ Directory Hierarchy:
 - board                Board dependent files
 - common       Misc architecture independent functions
 - cpu          CPU specific files
+  - 74xx_7xx   Files specific to Motorola MPC74xx and 7xx CPUs
+  - arm720t    Files specific to ARM 720 CPUs
+  - arm920t    Files specific to ARM 920 CPUs
+  - arm925t    Files specific to ARM 925 CPUs
+  - arm926ejs  Files specific to ARM 926 CPUs
+  - at91rm9200 Files specific to Atmel AT91RM9200 CPUs
+  - i386       Files specific to i386 CPUs
+  - ixp                Files specific to Intel XScale IXP CPUs
+  - mcf52x2    Files specific to Motorola ColdFire MCF52x2 CPUs
+  - mips       Files specific to MIPS CPUs
+  - mpc5xx     Files specific to Motorola MPC5xx  CPUs
+  - mpc5xxx    Files specific to Motorola MPC5xxx CPUs
+  - mpc8xx     Files specific to Motorola MPC8xx  CPUs
+  - mpc824x    Files specific to Motorola MPC824x CPUs
+  - mpc8260    Files specific to Motorola MPC8260 CPUs
+  - mpc85xx    Files specific to Motorola MPC85xx CPUs
+  - nios       Files specific to Altera NIOS CPUs
+  - ppc4xx     Files specific to IBM PowerPC 4xx CPUs
+  - pxa                Files specific to Intel XScale PXA CPUs
+  - s3c44b0    Files specific to Samsung S3C44B0 CPUs
+  - sa1100     Files specific to Intel StrongARM SA1100 CPUs
 - disk         Code for disk drive partition handling
 - doc          Documentation (don't expect too much)
 - drivers      Commonly used device drivers
 - dtt          Digital Thermometer and Thermostat drivers
 - examples     Example code for standalone applications, etc.
 - include      Header Files
-- disk         Harddisk interface code
+- lib_arm      Files generic to ARM     architecture
+- lib_generic  Files generic to all     architectures
+- lib_i386     Files generic to i386    architecture
+- lib_m68k     Files generic to m68k    architecture
+- lib_mips     Files generic to MIPS    architecture
+- lib_nios     Files generic to NIOS    architecture
+- lib_ppc      Files generic to PowerPC architecture
 - net          Networking code
-- ppc          Files generic to PowerPC architecture
 - post         Power On Self Test
-- post/arch            Symlink to architecture specific Power On Self Test
-- post/arch-ppc                PowerPC architecture specific Power On Self Test
-- post/cpu/mpc8260     MPC8260 CPU specific Power On Self Test
-- post/cpu/mpc8xx      MPC8xx CPU specific Power On Self Test
 - rtc          Real Time Clock drivers
 - tools                Tools to build S-Record or U-Boot images, etc.
 
-- cpu/74xx_7xx Files specific to Motorola MPC74xx and 7xx CPUs
-- cpu/arm925t  Files specific to ARM      925     CPUs
-- cpu/arm926ejs Files specific to ARM  926     CPUs
-- cpu/mpc5xx   Files specific to Motorola MPC5xx  CPUs
-- cpu/mpc8xx   Files specific to Motorola MPC8xx  CPUs
-- cpu/mpc824x  Files specific to Motorola MPC824x CPUs
-- cpu/mpc8260  Files specific to Motorola MPC8260 CPU
-- cpu/mpc85xx  Files specific to Motorola MPC85xx CPUs
-- cpu/ppc4xx   Files specific to IBM      4xx     CPUs
-
-
-- board/LEOX/  Files specific to boards manufactured by The LEOX team
-- board/LEOX/elpt860   Files specific to ELPT860 boards
-- board/RPXClassic
-               Files specific to RPXClassic boards
-- board/RPXlite Files specific to RPXlite    boards
-- board/at91rm9200dk Files specific to AT91RM9200DK boards
-- board/c2mon  Files specific to c2mon      boards
-- board/cmi    Files specific to cmi        boards
-- board/cogent Files specific to Cogent     boards
-               (need further configuration)
-               Files specific to CPCIISER4  boards
-- board/cpu86  Files specific to CPU86      boards
-- board/cray/  Files specific to boards manufactured by Cray
-- board/cray/L1                Files specific to L1         boards
-- board/cu824  Files specific to CU824      boards
-- board/ebony  Files specific to IBM Ebony board
-- board/eric   Files specific to ERIC       boards
-- board/esd/   Files specific to boards manufactured by ESD
-- board/esd/adciop     Files specific to ADCIOP     boards
-- board/esd/ar405      Files specific to AR405      boards
-- board/esd/canbt      Files specific to CANBT      boards
-- board/esd/cpci405    Files specific to CPCI405    boards
-- board/esd/cpciiser4  Files specific to CPCIISER4  boards
-- board/esd/common     Common files for ESD boards
-- board/esd/dasa_sim   Files specific to DASA_SIM   boards
-- board/esd/du405      Files specific to DU405      boards
-- board/esd/ocrtc      Files specific to OCRTC      boards
-- board/esd/pci405     Files specific to PCI405     boards
-- board/esteem192e
-               Files specific to ESTEEM192E boards
-- board/etx094 Files specific to ETX_094    boards
-- board/evb64260
-               Files specific to EVB64260   boards
-- board/fads   Files specific to FADS       boards
-- board/flagadm Files specific to FLAGADM    boards
-- board/gen860t Files specific to GEN860T and GEN860T_SC    boards
-- board/genietv Files specific to GENIETV    boards
-- board/gth    Files specific to GTH        boards
-- board/hermes Files specific to HERMES     boards
-- board/hymod  Files specific to HYMOD      boards
-- board/icu862 Files specific to ICU862     boards
-- board/ip860  Files specific to IP860      boards
-- board/iphase4539
-               Files specific to Interphase4539 boards
-- board/ivm    Files specific to IVMS8/IVML24 boards
-- board/lantec Files specific to LANTEC     boards
-- board/lwmon  Files specific to LWMON      boards
-- board/Marvell Files specific to Marvell development boards
-- board/Marvell/db64360 Files specific to db64360 board
-- board/Marvell/db64460 Files specific to db64460 board
-- board/mbx8xx Files specific to MBX        boards
-- board/mpc8260ads
-               Files specific to MPC826xADS and PQ2FADS-ZU/VR boards
-- board/mpc8540ads
-               Files specific to MPC8540ADS boards
-- board/mpc8560ads
-               Files specific to MPC8560ADS boards
-- board/mpl/   Files specific to boards manufactured by MPL
-- board/mpl/common     Common files for MPL boards
-- board/mpl/pip405     Files specific to PIP405     boards
-- board/mpl/mip405     Files specific to MIP405     boards
-- board/mpl/vcma9      Files specific to VCMA9      boards
-- board/musenki Files specific to MUSEKNI    boards
-- board/mvs1   Files specific to MVS1       boards
-- board/nx823  Files specific to NX823      boards
-- board/oxc    Files specific to OXC        boards
-- board/omap1510inn
-               Files specific to OMAP 1510 Innovator boards
-- board/omap1610inn
-               Files specific to OMAP 1610 Innovator and H2 boards
-- board/pcippc2 Files specific to PCIPPC2/PCIPPC6 boards
-- board/pm826  Files specific to PM826      boards
-- board/ppmc8260
-               Files specific to PPMC8260   boards
-- board/snmc/qs850     Files specific to QS850/823  boards
-- board/snmc/qs860t    Files specific to QS860T     boards
-- board/rpxsuper
-               Files specific to RPXsuper   boards
-- board/rsdproto
-               Files specific to RSDproto   boards
-- board/sandpoint
-               Files specific to Sandpoint  boards
-- board/sbc8260 Files specific to SBC8260    boards
-- board/sacsng Files specific to SACSng     boards
-- board/siemens Files specific to boards manufactured by Siemens AG
-- board/siemens/CCM    Files specific to CCM        boards
-- board/siemens/IAD210 Files specific to IAD210     boards
-- board/siemens/SCM    Files specific to SCM        boards
-- board/siemens/pcu_e  Files specific to PCU_E      boards
-- board/sixnet Files specific to SIXNET     boards
-- board/spd8xx Files specific to SPD8xxTS   boards
-- board/tqm8260 Files specific to TQM8260    boards
-- board/tqm8xx Files specific to TQM8xxL    boards
-- board/w7o    Files specific to W7O        boards
-- board/walnut405
-               Files specific to Walnut405  boards
-- board/westel/ Files specific to boards manufactured by Westel Wireless
-- board/westel/amx860  Files specific to AMX860     boards
-- board/utx8245 Files specific to UTX8245   boards
-- board/zpc1900 Files specific to Zephyr Engineering ZPC.1900 board
-
 Software Configuration:
 =======================
 
@@ -1412,9 +1322,9 @@ The following options need to be configured:
    14  common/cmd_bootm.c      No initial ramdisk, no multifile, continue.
    15  common/cmd_bootm.c      All preparation done, transferring control to OS
 
-  -30   lib_ppc/board.c                Fatal error, hang the system
-  -31   post/post.c            POST test failed, detected by post_output_backlog()
-  -32   post/post.c            POST test failed, detected by post_run_single()
+  -30  lib_ppc/board.c         Fatal error, hang the system
+  -31  post/post.c             POST test failed, detected by post_output_backlog()
+  -32  post/post.c             POST test failed, detected by post_run_single()
 
    -1  common/cmd_doc.c        Bad usage of "doc" command
    -1  common/cmd_doc.c        No boot device
index 53b2f50071da7fcbc61da5199bd3f5338a71397e..2a421e2da9c44df38a7698fff482a29299546bed 100644 (file)
 #if (CONFIG_FPGA & (CFG_ALTERA | CFG_ACEX1K))
 
 /* Define FPGA_DEBUG to get debug printf's */
-/* #define FPGA_DEBUG */
-
 #ifdef FPGA_DEBUG
 #define PRINTF(fmt,args...)    printf (fmt ,##args)
 #else
 #define PRINTF(fmt,args...)
 #endif
 
-#undef CFG_FPGA_CHECK_BUSY
-#define CFG_FPGA_PROG_FEEDBACK
-
 /* Note: The assumption is that we cannot possibly run fast enough to
  * overrun the device (the Slave Parallel mode can free run at 50MHz).
  * If there is a need to operate slower, define CONFIG_FPGA_DELAY in
@@ -52,7 +47,7 @@
 #endif
 
 #ifndef CFG_FPGA_WAIT
-#define CFG_FPGA_WAIT 100
+#define CFG_FPGA_WAIT CFG_HZ/10                /* 100 ms */
 #endif
 
 static int ACEX1K_ps_load( Altera_desc *desc, void *buf, size_t bsize );
@@ -162,7 +157,7 @@ static int ACEX1K_ps_load (Altera_desc * desc, void *buf, size_t bsize)
                                __FUNCTION__, &fn, fn, fn->config, fn->status,
                                fn->clk, fn->data, fn->done);
 #ifdef CFG_FPGA_PROG_FEEDBACK
-               printf ("Loading FPGA Device %d (@ %ld)...\n", cookie, ts);
+               printf ("Loading FPGA Device %d...", cookie);
 #endif
 
                /*
@@ -246,7 +241,7 @@ static int ACEX1K_ps_load (Altera_desc * desc, void *buf, size_t bsize)
                CONFIG_FPGA_DELAY ();
 
 #ifdef CFG_FPGA_PROG_FEEDBACK
-               putc ('\n');                    /* terminate the dotted line */
+               putc (' ');                     /* terminate the dotted line */
 #endif
 
        /*
index 279a4261848614b80cc4f7d795ae28628d9097c5..0fb23b6592069140cdb56a0f09496211cd97a66c 100644 (file)
@@ -47,7 +47,7 @@
 #endif
 
 #ifndef CFG_FPGA_WAIT
-#define CFG_FPGA_WAIT 10
+#define CFG_FPGA_WAIT CFG_HZ/100       /* 10 ms */
 #endif
 
 static int Spartan2_sp_load( Xilinx_desc *desc, void *buf, size_t bsize );
index b519be970895e60b2a564c2647f8ca3a961671df..bb44eaa6c503732d913b7ceadf61decf7449fa87 100644 (file)
@@ -80,7 +80,7 @@
  * an XC2V1000, if anyone can ever get ahold of one.
  */
 #ifndef CFG_FPGA_WAIT_INIT
-#define CFG_FPGA_WAIT_INIT     500     /* time in milliseconds */
+#define CFG_FPGA_WAIT_INIT     CFG_HZ/2        /* 500 ms */
 #endif
 
 /*
  * clock frequencies (i.e. 66 MHz or less), BUSY monitoring is unnecessary.
  */
 #ifndef CFG_FPGA_WAIT_BUSY
-#define CFG_FPGA_WAIT_BUSY     5       /* time in milliseconds */
+#define CFG_FPGA_WAIT_BUSY     CFG_HZ/200      /* 5 ms*/
 #endif
 
 /* Default timeout for waiting for FPGA to enter operational mode after
  * configuration data has been written.
  */
 #ifndef        CFG_FPGA_WAIT_CONFIG
-#define CFG_FPGA_WAIT_CONFIG   200     /* time in milliseconds */
+#define CFG_FPGA_WAIT_CONFIG   CFG_HZ/5        /* 200 ms */
 #endif
 
 static int Virtex2_ssm_load (Xilinx_desc * desc, void *buf, size_t bsize);
index 069f072574a7f6a74ec5fa153b7443c645dd2379..2363d61a33627e23cc0a757900e7cef8bb9dda17 100644 (file)
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -542,7 +542,7 @@ nfs_read_reply (uchar *pkt, unsigned len)
        printf ("%s\n", __FUNCTION__);
 #endif
 
-       memcpy ((uchar *)&rpc_pkt, pkt, len);
+       memcpy ((uchar *)&rpc_pkt, pkt, sizeof(rpc_pkt.u.reply));
 
        if (rpc_pkt.u.reply.rstatus  ||
            rpc_pkt.u.reply.verifier ||
@@ -565,7 +565,7 @@ nfs_read_reply (uchar *pkt, unsigned len)
        }
 
        rlen = ntohl(rpc_pkt.u.reply.data[18]);
-       store_block ((uchar *)&(rpc_pkt.u.reply.data[19]), nfs_offset, rlen);
+       store_block ((uchar *)pkt+sizeof(rpc_pkt.u.reply), nfs_offset, rlen);
 
        return rlen;
 }
index ebd4266857fd07b4435f1200bfe52b99484ea4d6..712afa089aa98428a7c2f13c5e4788aaf4831271 100644 (file)
--- a/net/nfs.h
+++ b/net/nfs.h
@@ -62,7 +62,7 @@ struct rpc_t {
                        uint32_t verifier;
                        uint32_t v2;
                        uint32_t astatus;
-                       uint32_t data[1];
+                       uint32_t data[19];
                } reply;
        } u;
 };