<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Kim,<br>
<br>
I'll fix all your issues mentioned below in the next days.<br>
We're not in a hurry. Getting the board into 1.3.3 is absolutely fine.<br>
<br>
Thanks,<br>
Andr&eacute;<br>
<br>
Kim Phillips wrote:
<blockquote
 cite="mid:20080410111158.e7379fe3.kim.phillips@freescale.com"
 type="cite">
  <pre wrap="">On Wed, 09 Apr 2008 16:16:28 +0200
Andre Schwarz <a class="moz-txt-link-rfc2396E" href="mailto:andre.schwarz@matrix-vision.de">&lt;andre.schwarz@matrix-vision.de&gt;</a> wrote:

  </pre>
  <blockquote type="cite">
    <pre wrap="">MPC8343 based stereo camera system with Cyclone-II FPGA and miniPCI Slot.
CPU utilizes dual 10/100/1000 Ethernet using Vitesse VSC8601 RGMII Phys 
and USB over ULPI.
512MB Micron DDR-II memory, 8MB Flash on LocalBus, SD over SPU and 32MB 
NAND @ FPGA.

Signed-off-by: Andre Schwarz <a class="moz-txt-link-rfc2396E" href="mailto:andre.schwarz@matrix-vision.de">&lt;andre.schwarz@matrix-vision.de&gt;</a>
--
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Wolfgang, I believe the window for new board support is closed; would
you rather I maintain this on a "next" branch on mpc83xx, or are you
willing to let this in for 1.3.3?

Andre, thanks for the new board contribution - please include diffstats
in your patches.

  </pre>
  <blockquote type="cite">
    <pre wrap="">diff --git a/CREDITS b/CREDITS
index e84ef38..713f58a 100644
--- a/CREDITS
+++ b/CREDITS
@@ -424,6 +424,11 @@ N: Paolo Scaffardi
 E: <a class="moz-txt-link-abbreviated" href="mailto:arsenio@tin.it">arsenio@tin.it</a>
 D: FADS823 configuration, MPC823 video support, I2C, wireless keyboard, lots more
 
+N: Andre Schwarz
+E: <a class="moz-txt-link-abbreviated" href="mailto:andre.schwarz@matrix-vision.de">andre.schwarz@matrix-vision.de</a>
+D: Support for BlueLYNX and BlueCOUGAR series
+W: <a class="moz-txt-link-abbreviated" href="http://www.matrix-vision.com">www.matrix-vision.com</a>
+
 N: Robert Schwebel
 E: <a class="moz-txt-link-abbreviated" href="mailto:r.schwebel@pengutronix.de">r.schwebel@pengutronix.de</a>
 D: Support for csb226, logodl and innokom boards (PXA2xx)
diff --git a/MAKEALL b/MAKEALL
index 2a872ac..f21c34e 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -327,6 +327,7 @@ LIST_83xx="                \
         MPC8360ERDK_66        \
         MPC837XEMDS        \
         MPC837XERDB        \
+        MVBLM7                \
         sbc8349                \
         TQM834x                \
 "
diff --git a/Makefile b/Makefile
index a7f886b..3f217fe 100644
--- a/Makefile
+++ b/Makefile
@@ -2084,6 +2084,9 @@ sbc8349_config:                unconfig
 TQM834x_config:        unconfig
         @$(MKCONFIG) $(@:_config=) ppc mpc83xx tqm834x
 
+MVBLM7_config: unconfig
+        @$(MKCONFIG) $(@:_config=) ppc mpc83xx mvblm7
+
    </pre>
  </blockquote>
  <pre wrap=""><!---->
I believe intra-family targets are kept in alpha order in the Makefile
(as you did in MAKEALL).

please add a MAINTAINERS entry. A doc/README.mvblm7 would be nice.

&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">diff --git a/board/mvblm7/config.mk b/board/mvblm7/config.mk
new file mode 100644
index 0000000..a659203
--- /dev/null
+++ b/board/mvblm7/config.mk
    </pre>
  </blockquote>
  <pre wrap=""><!---->&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+#
+# MPC8349E-mITX and MPC8349E-mITX-GP
+#
    </pre>
  </blockquote>
  <pre wrap=""><!---->
I'd leave this out :)

  </pre>
  <blockquote type="cite">
    <pre wrap="">+
+sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
+
+TEXT_BASE  = 0xFFF00000
diff --git a/board/mvblm7/fpga.c b/board/mvblm7/fpga.c
new file mode 100644
index 0000000..d286ef1
--- /dev/null
+++ b/board/mvblm7/fpga.c
    </pre>
  </blockquote>
  <pre wrap=""><!---->&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+#if (CONFIG_FPGA)
    </pre>
  </blockquote>
  <pre wrap=""><!---->
#if defined?

&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+int mvblm7_init_fpga (void)
    </pre>
  </blockquote>
  <pre wrap=""><!---->
we don't put spaces between function name and open parenthesis, do we?

All your functions are like this.

  </pre>
  <blockquote type="cite">
    <pre wrap="">+{
+        DECLARE_GLOBAL_DATA_PTR;
    </pre>
  </blockquote>
  <pre wrap=""><!---->
this needs to be put somewhere global.

  </pre>
  <blockquote type="cite">
    <pre wrap="">+
+        fpga_debug("%s:%d: Initialize FPGA interface (relocation offset = 0x%.8lx)\n",
+                __FUNCTION__, __LINE__, gd-&gt;reloc_off);
+        fpga_init (gd-&gt;reloc_off);
+
+        fpga_debug("%s:%d: Adding fpga 0\n", __FUNCTION__, __LINE__);
+        fpga_add (fpga_altera, &amp;cyclone2);
+        return 1;
+}
+
+int fpga_null_fn (int cookie)
+{
+        return 0;
+}
+
+int fpga_config_fn (int assert, int flush, int cookie)
+{
+        volatile immap_t        *im = (volatile immap_t *)CFG_IMMR;
+        volatile gpio83xx_t        *gpio = (volatile gpio83xx_t *)&amp;im-&gt;gpio[0];
    </pre>
  </blockquote>
  <pre wrap=""><!---->
fix indentation; use tabs, not spaces.

  </pre>
  <blockquote type="cite">
    <pre wrap="">+
+        u32 dvo = gpio-&gt;dat;
    </pre>
  </blockquote>
  <pre wrap=""><!---->
keep declarations together, leave blank space between declarations and
code - i.e, mv above blank line to before this line:

  </pre>
  <blockquote type="cite">
    <pre wrap="">+        fpga_debug("SET config : %s\n", assert ? "low" : "high");
+        if ( assert ) 
    </pre>
  </blockquote>
  <pre wrap=""><!---->
no spaces around assert

  </pre>
  <blockquote type="cite">
    <pre wrap="">+                dvo |= FPGA_CONFIG;
+        else 
+                dvo &amp;= ~FPGA_CONFIG;
+        
+        if ( flush )
+                gpio-&gt;dat = dvo;
+        return assert;
    </pre>
  </blockquote>
  <pre wrap=""><!---->
can you also get in the habit of leaving blank lines before return
statements?  thanks.

&lt;snipped more code that gets above comments also&gt;

  </pre>
  <blockquote type="cite">
    <pre wrap="">+        for ( i=0; i&lt;8; i++ ) {
    </pre>
  </blockquote>
  <pre wrap=""><!---->
please read CodingStyle!  this should look like:

for (i = 0; i &lt; 8; i++) {

&lt;snip similar cases&gt;

  </pre>
  <blockquote type="cite">
    <pre wrap="">diff --git a/board/mvblm7/mvblm7.c b/board/mvblm7/mvblm7.c
    </pre>
  </blockquote>
  <pre wrap=""><!---->&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+        im-&gt;ddr.sdram_interval = CFG_DDR_INTERVAL;
+        im-&gt;ddr.sdram_clk_cntl = CFG_DDR_CLK_CNTL;
    </pre>
  </blockquote>
  <pre wrap=""><!---->
use tabs, not spaces.

&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+u8 *dhcp_vendorex_prep (u8 * e)
    </pre>
  </blockquote>
  <pre wrap=""><!---->
u8 *dhcp_vendorex_prep(u8 *e)

  </pre>
  <blockquote type="cite">
    <pre wrap="">+{
+    char *ptr;
+
+/* DHCP vendor-class-identifier = 60 */
+    if ((ptr = getenv ("dhcp_vendor-class-identifier"))) {
    </pre>
  </blockquote>
  <pre wrap=""><!---->
fix indentation.  Use tabs, not spaces.

  </pre>
  <blockquote type="cite">
    <pre wrap="">+        *e++ = 60;
+        *e++ = strlen (ptr);
    </pre>
  </blockquote>
  <pre wrap=""><!---->
strlen(ptr);

  </pre>
  <blockquote type="cite">
    <pre wrap="">+        while (*ptr)
+            *e++ = *ptr++;
+    }
+/* DHCP_CLIENT_IDENTIFIER = 61 */
+    if ((ptr = getenv ("dhcp_client_id"))) {
    </pre>
  </blockquote>
  <pre wrap=""><!---->
..

&lt;snip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">diff --git a/board/mvblm7/pci.c b/board/mvblm7/pci.c
    </pre>
  </blockquote>
  <pre wrap=""><!---->&lt;sniiiiip&gt;
  </pre>
  <blockquote type="cite">
    <pre wrap="">+                        tmp[0] = cpu_to_be32(gd-&gt;pci_clk);
+                        do_fixup_by_path(blob, path, "clock-frequency",
+                                &amp;tmp, sizeof(tmp[0]), 1);
+                }
+        }
+}
+#endif
    </pre>
  </blockquote>
  <pre wrap=""><!----> 
please use generic 83xx pci code (cpu/mpc83xx/pci.c).  See the
mpc8313erdb board implementation for an example use-case.

Again, thanks for your contribution!

Kim
  </pre>
</blockquote>
<br>
<BR>

MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner
<BR>
</body>
</html>