<div>Hi Sascha,</div><div><br></div><div>2011/3/16 Sascha Hauer <span dir="ltr">&lt;<a href="mailto:s.hauer@pengutronix.de">s.hauer@pengutronix.de</a>&gt;</span></div><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Julien,<br>
<br></blockquote><div><br></div><div>Well....it&#39;s Franck ;) I know that&#39;s a bit confusing......</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

The patch looks mostly ok. Only a few comments inline and some coding<br>
style nitpicks:<br>
<br>
- several trailing whitespaces<br>
- return is not a function (should be return 0 instead of return (0)<br>
- there should be no braces between a function and its arguments<br>
<br>
I think the included checkpatch script should catch most of them.<br>
<div class="im"><br>
<br>
&gt; +<br>
&gt; diff --git a/nios2/configs/generic_defconfig b/nios2/configs/generic_defconfig<br>
&gt; new file mode 100644<br>
&gt; index 0000000..76b69da<br>
&gt; --- /dev/null<br>
&gt; +++ b/nios2/configs/generic_defconfig<br>
<br>
</div>Please generate the config with make savedefconfig<br>
<div><div></div><div class="h5"><br>
&gt; diff --git a/nios2/include/asm/barebox.h b/nios2/include/asm/barebox.h<br>
&gt; new file mode 100644<br>
&gt; index 0000000..2fcf31c<br>
&gt; --- /dev/null<br>
&gt; +++ b/nios2/include/asm/barebox.h<br>
&gt; @@ -0,0 +1,47 @@<br>
&gt; +/*<br>
&gt; + * barebox - barebox.h Structure declarations for board specific data<br>
&gt; + *<br>
&gt; + * Copyright (c) 2005 <a href="http://blackfin.uclinux.org" target="_blank">blackfin.uclinux.org</a><br>
&gt; + *<br>
&gt; + * (C) Copyright 2000-2004<br>
&gt; + * Wolfgang Denk, DENX Software Engineering, <a href="mailto:wd@denx.de">wd@denx.de</a>.<br>
&gt; + *<br>
&gt; + * See file CREDITS for list of people who contributed to this<br>
&gt; + * project.<br>
&gt; + *<br>
&gt; + * This program is free software; you can redistribute it and/or<br>
&gt; + * modify it under the terms of the GNU General Public License as<br>
&gt; + * published by the Free Software Foundation; either version 2 of<br>
&gt; + * the License, or (at your option) any later version.<br>
&gt; + *<br>
&gt; + * This program is distributed in the hope that it will be useful,<br>
&gt; + * but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
&gt; + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the<br>
&gt; + * GNU General Public License for more details.<br>
&gt; + *<br>
&gt; + * You should have received a copy of the GNU General Public License<br>
&gt; + * along with this program; if not, write to the Free Software<br>
&gt; + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,<br>
&gt; + * MA 02111-1307 USA<br>
&gt; + */<br>
&gt; +<br>
&gt; +#ifndef _BAREBOX_H_<br>
&gt; +#define _BAREBOX_H_  1<br>
&gt; +<br>
&gt; +typedef struct bd_info {<br>
&gt; +     int bi_baudrate;                /* serial console baudrate */<br>
&gt; +     unsigned long bi_ip_addr;       /* IP Address */<br>
&gt; +     unsigned char bi_enetaddr[6];   /* Ethernet adress */<br>
&gt; +     unsigned long bi_arch_number;   /* unique id for this board */<br>
&gt; +     unsigned long bi_boot_params;   /* where this board expects params */<br>
&gt; +     unsigned long bi_memstart;      /* start of DRAM memory */<br>
&gt; +     unsigned long bi_memsize;       /* size  of DRAM memory in bytes */<br>
&gt; +     unsigned long bi_flashstart;    /* start of FLASH memory */<br>
&gt; +     unsigned long bi_flashsize;     /* size  of FLASH memory */<br>
&gt; +     unsigned long bi_flashoffset;   /* reserved area for startup monitor */<br>
&gt; +} bd_t;<br>
<br>
</div></div>This isn&#39;t used anywhere in this patch. Is it needed for passing data to<br>
Linux? If yes, ok, otherwise please remove it.<br></blockquote><div><br></div><div>This file is included bu include/common.h</div><div>Should I provide an empty file ?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div><div></div><div class="h5"><br>
&gt; diff --git a/nios2/include/asm/io.h b/nios2/include/asm/io.h<br>
&gt; new file mode 100644<br>
&gt; index 0000000..121405c<br>
&gt; --- /dev/null<br>
&gt; +++ b/nios2/include/asm/io.h<br>
&gt; @@ -0,0 +1,130 @@<br>
&gt; +/*<br>
&gt; + * (C) Copyright 2004, Psyent Corporation &lt;<a href="http://www.psyent.com" target="_blank">www.psyent.com</a>&gt;<br>
&gt; + * Scott McNutt &lt;<a href="mailto:smcnutt@psyent.com">smcnutt@psyent.com</a>&gt;<br>
&gt; + *<br>
&gt; + * See file CREDITS for list of people who contributed to this<br>
&gt; + * project.<br>
&gt; + *<br>
&gt; + * This program is free software; you can redistribute it and/or<br>
&gt; + * modify it under the terms of the GNU General Public License as<br>
&gt; + * published by the Free Software Foundation; either version 2 of<br>
&gt; + * the License, or (at your option) any later version.<br>
&gt; + *<br>
&gt; + * This program is distributed in the hope that it will be useful,<br>
&gt; + * but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
&gt; + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the<br>
&gt; + * GNU General Public License for more details.<br>
&gt; + *<br>
&gt; + * You should have received a copy of the GNU General Public License<br>
&gt; + * along with this program; if not, write to the Free Software<br>
&gt; + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,<br>
&gt; + * MA 02111-1307 USA<br>
&gt; + */<br>
&gt; +<br>
&gt; +#ifndef __ASM_NIOS2_IO_H_<br>
&gt; +#define __ASM_NIOS2_IO_H_<br>
&gt; +<br>
&gt; +static inline void sync(void)<br>
&gt; +{<br>
&gt; +     __asm__ __volatile__ (&quot;sync&quot; : : : &quot;memory&quot;);<br>
&gt; +}<br>
&gt; +<br>
&gt; +/*<br>
&gt; + * Given a physical address and a length, return a virtual address<br>
&gt; + * that can be used to access the memory range with the caching<br>
&gt; + * properties specified by &quot;flags&quot;.<br>
&gt; + */<br>
&gt; +#define MAP_NOCACHE  (0)<br>
&gt; +#define MAP_WRCOMBINE        (0)<br>
&gt; +#define MAP_WRBACK   (0)<br>
&gt; +#define MAP_WRTHROUGH        (0)<br>
&gt; +<br>
&gt; +static inline void *<br>
&gt; +map_physmem(phys_addr_t paddr, unsigned long len, unsigned long flags)<br>
&gt; +{<br>
&gt; +     return (void *)paddr;<br>
&gt; +}<br>
&gt; +<br>
&gt; +/*<br>
&gt; + * Take down a mapping set up by map_physmem().<br>
&gt; + */<br>
&gt; +static inline void unmap_physmem(void *vaddr, unsigned long flags)<br>
&gt; +{<br>
&gt; +<br>
&gt; +}<br>
&gt; +<br>
&gt; +static inline phys_addr_t virt_to_phys(void * vaddr)<br>
&gt; +{<br>
&gt; +     return (phys_addr_t)(vaddr);<br>
&gt; +}<br>
&gt; +<br>
&gt; +extern unsigned char inb (unsigned char *port);<br>
&gt; +extern unsigned short inw (unsigned short *port);<br>
&gt; +extern unsigned inl (unsigned port);<br>
&gt; +<br>
&gt; +#define __raw_writeb(v,a)       (*(volatile unsigned char  *)(a) = (v))<br>
&gt; +#define __raw_writew(v,a)       (*(volatile unsigned short *)(a) = (v))<br>
&gt; +#define __raw_writel(v,a)       (*(volatile unsigned int   *)(a) = (v))<br>
&gt; +<br>
&gt; +#define __raw_readb(a)          (*(volatile unsigned char  *)(a))<br>
&gt; +#define __raw_readw(a)          (*(volatile unsigned short *)(a))<br>
&gt; +#define __raw_readl(a)          (*(volatile unsigned int   *)(a))<br>
&gt; +<br>
&gt; +#define readb(addr)\<br>
&gt; +     ({unsigned char val;\<br>
&gt; +      asm volatile( &quot;ldbio %0, 0(%1)&quot; :&quot;=r&quot;(val) : &quot;r&quot; (addr)); val;})<br>
&gt; +#define readw(addr)\<br>
&gt; +     ({unsigned short val;\<br>
&gt; +      asm volatile( &quot;ldhio %0, 0(%1)&quot; :&quot;=r&quot;(val) : &quot;r&quot; (addr)); val;})<br>
&gt; +#define readl(addr)\<br>
&gt; +     ({unsigned long val;\<br>
&gt; +      asm volatile( &quot;ldwio %0, 0(%1)&quot; :&quot;=r&quot;(val) : &quot;r&quot; (addr)); val;})<br>
&gt; +<br>
&gt; +#define writeb(val,addr)\<br>
&gt; +     asm volatile (&quot;stbio %0, 0(%1)&quot; : : &quot;r&quot; (val), &quot;r&quot; (addr))<br>
&gt; +#define writew(val,addr)\<br>
&gt; +     asm volatile (&quot;sthio %0, 0(%1)&quot; : : &quot;r&quot; (val), &quot;r&quot; (addr))<br>
&gt; +#define writel(val,addr)\<br>
&gt; +     asm volatile (&quot;stwio %0, 0(%1)&quot; : : &quot;r&quot; (val), &quot;r&quot; (addr))<br>
&gt; +<br>
&gt; +#define inb(addr)    readb(addr)<br>
&gt; +#define inw(addr)    readw(addr)<br>
&gt; +#define inl(addr)    readl(addr)<br>
&gt; +#define outb(val, addr)      writeb(val,addr)<br>
&gt; +#define outw(val, addr)      writew(val,addr)<br>
&gt; +#define outl(val, addr)      writel(val,addr)<br>
<br>
</div></div>We won&#39;t need this in barebox environment. We should just stick to<br>
read*/write*<br></blockquote><div><br></div><div>done.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5"><br>
&gt; diff --git a/nios2/include/asm/nios2-io.h b/nios2/include/asm/nios2-io.h<br>
&gt; new file mode 100644<br>
&gt; index 0000000..c20885b<br>
&gt; --- /dev/null<br>
&gt; +++ b/nios2/include/asm/nios2-io.h<br>
&gt; @@ -0,0 +1,182 @@<br>
&gt; +/*<br>
&gt; + * (C) Copyright 2004, Psyent Corporation &lt;<a href="http://www.psyent.com" target="_blank">www.psyent.com</a>&gt;<br>
&gt; + * Scott McNutt &lt;<a href="mailto:smcnutt@psyent.com">smcnutt@psyent.com</a>&gt;<br>
&gt; + *<br>
&gt; + * See file CREDITS for list of people who contributed to this<br>
&gt; + * project.<br>
&gt; + *<br>
&gt; + * This program is free software; you can redistribute it and/or<br>
&gt; + * modify it under the terms of the GNU General Public License as<br>
&gt; + * published by the Free Software Foundation; either version 2 of<br>
&gt; + * the License, or (at your option) any later version.<br>
&gt; + *<br>
&gt; + * This program is distributed in the hope that it will be useful,<br>
&gt; + * but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
&gt; + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the<br>
&gt; + * GNU General Public License for more details.<br>
&gt; + *<br>
&gt; + * You should have received a copy of the GNU General Public License<br>
&gt; + * along with this program; if not, write to the Free Software<br>
&gt; + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,<br>
&gt; + * MA 02111-1307 USA<br>
&gt; + */<br>
&gt; +<br>
&gt; +/*************************************************************************<br>
&gt; + * Altera Nios2 Standard Peripherals<br>
&gt; + ************************************************************************/<br>
&gt; +<br>
&gt; +#ifndef __NIOS2IO_H__<br>
&gt; +#define __NIOS2IO_H__<br>
&gt; +<br>
&gt; +/*------------------------------------------------------------------------<br>
&gt; + * UART (<a href="http://www.altera.com/literature/ds/ds_nios_uart.pdf" target="_blank">http://www.altera.com/literature/ds/ds_nios_uart.pdf</a>)<br>
&gt; + *----------------------------------------------------------------------*/<br>
&gt; +typedef volatile struct nios_uart_t {<br>
&gt; +     unsigned        rxdata;         /* Rx data reg */<br>
&gt; +     unsigned        txdata;         /* Tx data reg */<br>
&gt; +     unsigned        status;         /* Status reg */<br>
&gt; +     unsigned        control;        /* Control reg */<br>
&gt; +     unsigned        divisor;        /* Baud rate divisor reg */<br>
&gt; +     unsigned        endofpacket;    /* End-of-packet reg */<br>
&gt; +}nios_uart_t;<br>
<br>
</div></div>Please do not typedef struct types. Also, the volatile is unnecessary.<br>
<font color="#888888"><br></font></blockquote><div><br></div><div>done.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><font color="#888888">
--<br>
Pengutronix e.K.                           |                             |<br>
Industrial Linux Solutions                 | <a href="http://www.pengutronix.de/" target="_blank">http://www.pengutronix.de/</a>  |<br>
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |<br>
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |<br></font></blockquote><div><br></div><div>Franck.</div></div><br></div>