mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 00/54] New arch (NIOS2)
@ 2011-03-03 22:58 franck.jullien
  2011-03-04  8:45 ` Sascha Hauer
  2011-03-16 12:32 ` Shinya Kuribayashi
  0 siblings, 2 replies; 5+ messages in thread
From: franck.jullien @ 2011-03-03 22:58 UTC (permalink / raw)
  To: barebox

From: Franck JULLIEN <franck.jullien@gmail.com>

This is the base files of the Nios2 port. Almost everything is comming from u-boot.
When those files are acked, I'll post drivers and utility commands. 

The port include a generic board. The board configuration file nios_sopc.h is
generated using sopc-create-header-file (Altera utility). Then, names in this
file are converted to generic names in config.h.

Franck JULLIEN (54):
  Add arch/nios2/Kconfig
  Add arch/nios2/Makefile
  Add arch/nios2/cpu-nios2/Makefile
  Add arch/nios2/cpu-nios2/cpu.c
  Add arch/nios2/cpu-nios2/exceptions.S
  Add arch/nios2/cpu-nios2/interrupts.c
  Add arch/nios2/cpu-nios2/start.S
  Add arch/nios2/cpu-nios2/traps.c
  Add arch/nios2/lib/Makefile
  Add arch/nios2/lib/board.c
  Add arch/nios2/lib/cache.S
  Add arch/nios2/lib/clock.c
  Add arch/nios2/lib/early_printf.c
  Add arch/nios2/lib/libgcc.c
  Add arch/nios2/lib/longlong.h
  Add arch/nios2/boards/generic/Makefile
  Add arch/nios2/boards/generic/barebox.lds.S
  Add arch/nios2/boards/generic/config.h
  Add arch/nios2/boards/generic/env/config
  Add arch/nios2/boards/generic/generic.c
  Add arch/nios2/boards/generic/nios_sopc.h
  Add arch/nios2/configs/generic_defconfig
  Add arch/nios2/include/asm/addrspace.h
  Add arch/nios2/include/asm/barebox.h
  Add arch/nios2/include/asm/bitops.h
  Add arch/nios2/include/asm/bitsperlong.h
  Add arch/nios2/include/asm/byteorder.h
  Add arch/nios2/include/asm/cache.h
  Add arch/nios2/include/asm/common.h
  Add arch/nios2/include/asm/dma-mapping.h
  Add arch/nios2/include/asm/early_printf.h
  Add arch/nios2/include/asm/elf.h
  Add arch/nios2/include/asm/entry.h
  Add arch/nios2/include/asm/getorder.h
  Add arch/nios2/include/asm/int-ll64.h
  Add arch/nios2/include/asm/io.h
  Add arch/nios2/include/asm/linkage.h
  Add arch/nios2/include/asm/memory_model.h
  Add arch/nios2/include/asm/nios2-io.h
  Add arch/nios2/include/asm/nios2.h
  Add arch/nios2/include/asm/opcodes.h
  Add arch/nios2/include/asm/page.h
  Add arch/nios2/include/asm/pfn.h
  Add arch/nios2/include/asm/pgtable-bits.h
  Add arch/nios2/include/asm/posix_types.h
  Add arch/nios2/include/asm/ptrace.h
  Add arch/nios2/include/asm/sections.h
  Add arch/nios2/include/asm/segment.h
  Add arch/nios2/include/asm/spaces.h
  Add arch/nios2/include/asm/string.h
  Add arch/nios2/include/asm/swab.h
  Add arch/nios2/include/asm/system.h
  Add arch/nios2/include/asm/types.h
  Add arch/nios2/include/asm/user.h

 arch/nios2/Kconfig                      |   39 ++
 arch/nios2/Makefile                     |   31 ++
 arch/nios2/boards/generic/Makefile      |    2 +
 arch/nios2/boards/generic/barebox.lds.S |  126 +++++++
 arch/nios2/boards/generic/config.h      |   64 ++++
 arch/nios2/boards/generic/env/config    |   20 +
 arch/nios2/boards/generic/generic.c     |   74 ++++
 arch/nios2/boards/generic/nios_sopc.h   |  406 +++++++++++++++++++++
 arch/nios2/configs/generic_defconfig    |  212 +++++++++++
 arch/nios2/cpu-nios2/Makefile           |    5 +
 arch/nios2/cpu-nios2/cpu.c              |   38 ++
 arch/nios2/cpu-nios2/exceptions.S       |  160 ++++++++
 arch/nios2/cpu-nios2/interrupts.c       |  140 +++++++
 arch/nios2/cpu-nios2/start.S            |  165 +++++++++
 arch/nios2/cpu-nios2/traps.c            |   48 +++
 arch/nios2/include/asm/addrspace.h      |   15 +
 arch/nios2/include/asm/barebox.h        |   47 +++
 arch/nios2/include/asm/bitops.h         |   45 +++
 arch/nios2/include/asm/bitsperlong.h    |   32 ++
 arch/nios2/include/asm/byteorder.h      |   36 ++
 arch/nios2/include/asm/cache.h          |   31 ++
 arch/nios2/include/asm/common.h         |    5 +
 arch/nios2/include/asm/dma-mapping.h    |   25 ++
 arch/nios2/include/asm/early_printf.h   |   23 ++
 arch/nios2/include/asm/elf.h            |  119 ++++++
 arch/nios2/include/asm/entry.h          |  177 +++++++++
 arch/nios2/include/asm/getorder.h       |   24 ++
 arch/nios2/include/asm/int-ll64.h       |   78 ++++
 arch/nios2/include/asm/io.h             |  130 +++++++
 arch/nios2/include/asm/linkage.h        |    7 +
 arch/nios2/include/asm/memory_model.h   |   77 ++++
 arch/nios2/include/asm/nios2-io.h       |  182 +++++++++
 arch/nios2/include/asm/nios2.h          |   63 ++++
 arch/nios2/include/asm/opcodes.h        |  131 +++++++
 arch/nios2/include/asm/page.h           |  129 +++++++
 arch/nios2/include/asm/pfn.h            |   13 +
 arch/nios2/include/asm/pgtable-bits.h   |   38 ++
 arch/nios2/include/asm/posix_types.h    |   77 ++++
 arch/nios2/include/asm/ptrace.h         |   33 ++
 arch/nios2/include/asm/sections.h       |    1 +
 arch/nios2/include/asm/segment.h        |    6 +
 arch/nios2/include/asm/spaces.h         |   32 ++
 arch/nios2/include/asm/string.h         |   47 +++
 arch/nios2/include/asm/swab.h           |    4 +
 arch/nios2/include/asm/system.h         |   64 ++++
 arch/nios2/include/asm/types.h          |   31 ++
 arch/nios2/include/asm/user.h           |  136 +++++++
 arch/nios2/lib/Makefile                 |    6 +
 arch/nios2/lib/board.c                  |   47 +++
 arch/nios2/lib/cache.S                  |   74 ++++
 arch/nios2/lib/clock.c                  |   57 +++
 arch/nios2/lib/early_printf.c           |   60 +++
 arch/nios2/lib/libgcc.c                 |  605 +++++++++++++++++++++++++++++++
 arch/nios2/lib/longlong.h               |  263 ++++++++++++++
 54 files changed, 4500 insertions(+), 0 deletions(-)
 create mode 100644 arch/nios2/Kconfig
 create mode 100644 arch/nios2/Makefile
 create mode 100644 arch/nios2/boards/generic/Makefile
 create mode 100644 arch/nios2/boards/generic/barebox.lds.S
 create mode 100644 arch/nios2/boards/generic/config.h
 create mode 100644 arch/nios2/boards/generic/env/config
 create mode 100644 arch/nios2/boards/generic/generic.c
 create mode 100644 arch/nios2/boards/generic/nios_sopc.h
 create mode 100644 arch/nios2/configs/generic_defconfig
 create mode 100644 arch/nios2/cpu-nios2/Makefile
 create mode 100644 arch/nios2/cpu-nios2/cpu.c
 create mode 100644 arch/nios2/cpu-nios2/exceptions.S
 create mode 100644 arch/nios2/cpu-nios2/interrupts.c
 create mode 100644 arch/nios2/cpu-nios2/start.S
 create mode 100644 arch/nios2/cpu-nios2/traps.c
 create mode 100644 arch/nios2/include/asm/addrspace.h
 create mode 100644 arch/nios2/include/asm/barebox.h
 create mode 100644 arch/nios2/include/asm/bitops.h
 create mode 100644 arch/nios2/include/asm/bitsperlong.h
 create mode 100644 arch/nios2/include/asm/byteorder.h
 create mode 100644 arch/nios2/include/asm/cache.h
 create mode 100644 arch/nios2/include/asm/common.h
 create mode 100644 arch/nios2/include/asm/dma-mapping.h
 create mode 100644 arch/nios2/include/asm/early_printf.h
 create mode 100644 arch/nios2/include/asm/elf.h
 create mode 100644 arch/nios2/include/asm/entry.h
 create mode 100644 arch/nios2/include/asm/getorder.h
 create mode 100644 arch/nios2/include/asm/int-ll64.h
 create mode 100644 arch/nios2/include/asm/io.h
 create mode 100644 arch/nios2/include/asm/linkage.h
 create mode 100644 arch/nios2/include/asm/memory_model.h
 create mode 100644 arch/nios2/include/asm/nios2-io.h
 create mode 100644 arch/nios2/include/asm/nios2.h
 create mode 100644 arch/nios2/include/asm/opcodes.h
 create mode 100644 arch/nios2/include/asm/page.h
 create mode 100644 arch/nios2/include/asm/pfn.h
 create mode 100644 arch/nios2/include/asm/pgtable-bits.h
 create mode 100644 arch/nios2/include/asm/posix_types.h
 create mode 100644 arch/nios2/include/asm/ptrace.h
 create mode 100644 arch/nios2/include/asm/sections.h
 create mode 100644 arch/nios2/include/asm/segment.h
 create mode 100644 arch/nios2/include/asm/spaces.h
 create mode 100644 arch/nios2/include/asm/string.h
 create mode 100644 arch/nios2/include/asm/swab.h
 create mode 100644 arch/nios2/include/asm/system.h
 create mode 100644 arch/nios2/include/asm/types.h
 create mode 100644 arch/nios2/include/asm/user.h
 create mode 100644 arch/nios2/lib/Makefile
 create mode 100644 arch/nios2/lib/board.c
 create mode 100644 arch/nios2/lib/cache.S
 create mode 100644 arch/nios2/lib/clock.c
 create mode 100644 arch/nios2/lib/early_printf.c
 create mode 100644 arch/nios2/lib/libgcc.c
 create mode 100644 arch/nios2/lib/longlong.h

-- 
1.7.3.4


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 00/54] New arch (NIOS2)
  2011-03-03 22:58 [PATCH 00/54] New arch (NIOS2) franck.jullien
@ 2011-03-04  8:45 ` Sascha Hauer
       [not found]   ` <AANLkTi=a2V+v6rOJXLmw6_6yysQBVobnqfR03VVn4P=g@mail.gmail.com>
  2011-03-16 12:32 ` Shinya Kuribayashi
  1 sibling, 1 reply; 5+ messages in thread
From: Sascha Hauer @ 2011-03-04  8:45 UTC (permalink / raw)
  To: franck.jullien; +Cc: barebox

Hi Franck,

On Thu, Mar 03, 2011 at 11:58:14PM +0100, franck.jullien@gmail.com wrote:
> From: Franck JULLIEN <franck.jullien@gmail.com>
> 
> This is the base files of the Nios2 port. Almost everything is comming from u-boot.
> When those files are acked, I'll post drivers and utility commands.

Soo many patches ;). You can safely combine all these into two
patches, one for the nios2 support and one for the generic board.
The patches are only useful as a whole anyway, so no need to split
them up that fine. You will hit the list limit, so give me some time
to go to the moderator interface and and it through.

I'm not through all patches, but some remarks here:

There is some whitespace damage all around like spaces which should be
tabs. Also, please do not use direct pointer derefs to access registers.
You should use readl/writel accessors for them.

Thanks for doing this work. Although I don't have a nios baord, I really
appreciate extending barebox to more architectures.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Fwd: [PATCH 00/54] New arch (NIOS2)
       [not found]   ` <AANLkTi=a2V+v6rOJXLmw6_6yysQBVobnqfR03VVn4P=g@mail.gmail.com>
@ 2011-03-04  9:04     ` Franck JULLIEN
  2011-03-04 10:33       ` Baruch Siach
  0 siblings, 1 reply; 5+ messages in thread
From: Franck JULLIEN @ 2011-03-04  9:04 UTC (permalink / raw)
  To: barebox


[-- Attachment #1.1: Type: text/plain, Size: 2419 bytes --]

---------- Forwarded message ----------
From: Franck JULLIEN <franck.jullien@gmail.com>
Date: 2011/3/4
Subject: Re: [PATCH 00/54] New arch (NIOS2)
To: Sascha Hauer <s.hauer@pengutronix.de>


2011/3/4 Sascha Hauer <s.hauer@pengutronix.de>

> Hi Franck,
>
> On Thu, Mar 03, 2011 at 11:58:14PM +0100, franck.jullien@gmail.com wrote:
> > From: Franck JULLIEN <franck.jullien@gmail.com>
> >
> > This is the base files of the Nios2 port. Almost everything is comming
> from u-boot.
> > When those files are acked, I'll post drivers and utility commands.
>
> Soo many patches ;). You can safely combine all these into two
> patches, one for the nios2 support and one for the generic board.
> The patches are only useful as a whole anyway, so no need to split
> them up that fine. You will hit the list limit, so give me some time
> to go to the moderator interface and and it through.
>
> I'm not through all patches, but some remarks here:
>
> There is some whitespace damage all around like spaces which should be
> tabs.


Is that a "Linux rule" ? Is there other ones ? (I always convert tabs to
whitespaces....).


> Also, please do not use direct pointer derefs to access registers.
> You should use readl/writel accessors for them.
>
>
Okay I will.


> Thanks for doing this work. Although I don't have a nios baord, I really
> appreciate extending barebox to more architectures.
>

Barebox is so much better than Uboot, you guys did a really good job.
Barebox
even helped my to understand some Linux concepts.


>
> Sascha
>
>
Hi Sasha,

I didn't how to split the patches so I splitted everything :) I'll fight
with git to revert my commits and do it again...

This port is working but it's going to be a long process including it in
barebox git because I don't have a lot of time
(my baby boy needs my time) and I'm not a git master at all, I'm just an
hardware guy playing with the kernel (why the
hell it is so complicated ? I think it is kind of a filter/test for
patchers. If you can't use git you can't send patches ;)).

Souldn't be less complicated if I had a separate branch to work on it ?


> --
>
> Pengutronix e.K.                           |                             |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>

[-- Attachment #1.2: Type: text/html, Size: 4127 bytes --]

[-- Attachment #2: Type: text/plain, Size: 149 bytes --]

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Fwd: [PATCH 00/54] New arch (NIOS2)
  2011-03-04  9:04     ` Fwd: " Franck JULLIEN
@ 2011-03-04 10:33       ` Baruch Siach
  0 siblings, 0 replies; 5+ messages in thread
From: Baruch Siach @ 2011-03-04 10:33 UTC (permalink / raw)
  To: Franck JULLIEN; +Cc: barebox

Hi Franck,

On Fri, Mar 04, 2011 at 10:04:31AM +0100, Franck JULLIEN wrote:
> ---------- Forwarded message ----------
> From: Franck JULLIEN <franck.jullien@gmail.com>
> Date: 2011/3/4
> Subject: Re: [PATCH 00/54] New arch (NIOS2)
> To: Sascha Hauer <s.hauer@pengutronix.de>
> 2011/3/4 Sascha Hauer <s.hauer@pengutronix.de>
> > There is some whitespace damage all around like spaces which should be
> > tabs.
> Is that a "Linux rule" ? Is there other ones ? (I always convert tabs to
> whitespaces....).

See Documentation/CodingStyle in the Linux kernel source tree.

baruch

-- 
                                                     ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch@tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 00/54] New arch (NIOS2)
  2011-03-03 22:58 [PATCH 00/54] New arch (NIOS2) franck.jullien
  2011-03-04  8:45 ` Sascha Hauer
@ 2011-03-16 12:32 ` Shinya Kuribayashi
  1 sibling, 0 replies; 5+ messages in thread
From: Shinya Kuribayashi @ 2011-03-16 12:32 UTC (permalink / raw)
  To: franck.jullien; +Cc: barebox

On 3/4/11 7:58 AM, franck.jullien@gmail.com wrote:
> This is the base files of the Nios2 port. Almost everything is comming from u-boot.

It's always safe bet to divert the decent U-Boot bits to an initial port
(and a new architecture support) of Barebox, but at the same time it's a
good opportunity to rebase old stuff against the recent Linux kernel.

For instance, if some of nios2 asm header files can be adjusted to recent
ones, I'd recommend to do it this time.  It won't take so long, and helps
you avoid sending small patches later :-)

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-03-16 12:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-03 22:58 [PATCH 00/54] New arch (NIOS2) franck.jullien
2011-03-04  8:45 ` Sascha Hauer
     [not found]   ` <AANLkTi=a2V+v6rOJXLmw6_6yysQBVobnqfR03VVn4P=g@mail.gmail.com>
2011-03-04  9:04     ` Fwd: " Franck JULLIEN
2011-03-04 10:33       ` Baruch Siach
2011-03-16 12:32 ` Shinya Kuribayashi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox