2011-02-12 01:32:44

by Xuetao Guan

[permalink] [raw]
Subject: [GIT PULL] UniCore32 ISA support for linux-2.6

Hi Linus,
Could you please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32.git for_linus
to add unicore32 support for linux-2.6.

UniCore32 ISA is defined and developed by Micro-Processor R&D Center of
Peking University, and over the years, the CPUs and SoCs using UniCore32
ISA have been successfully applied in a variety of products in China.

Thanks & regards,

Guan Xuetao
---

MAINTAINERS | 14 +
arch/unicore32/.gitignore | 21 +
arch/unicore32/Kconfig | 248 ++++++++
arch/unicore32/Kconfig.debug | 68 ++
arch/unicore32/Kconfig.puv3 | 125 ++++
arch/unicore32/Makefile | 97 +++
arch/unicore32/boot/Makefile | 47 ++
arch/unicore32/boot/compressed/Makefile | 68 ++
arch/unicore32/boot/compressed/head.S | 204 ++++++
arch/unicore32/boot/compressed/misc.c | 126 ++++
arch/unicore32/boot/compressed/piggy.S.in | 6 +
arch/unicore32/boot/compressed/vmlinux.lds.in | 61 ++
arch/unicore32/configs/debug_defconfig | 210 +++++++
arch/unicore32/configs/nb0916_defconfig | 202 ++++++
arch/unicore32/include/asm/Kbuild | 2 +
arch/unicore32/include/asm/assembler.h | 131 ++++
arch/unicore32/include/asm/bitops.h | 47 ++
arch/unicore32/include/asm/byteorder.h | 24 +
arch/unicore32/include/asm/cache.h | 27 +
arch/unicore32/include/asm/cacheflush.h | 211 +++++++
arch/unicore32/include/asm/checksum.h | 41 ++
arch/unicore32/include/asm/cpu-single.h | 45 ++
arch/unicore32/include/asm/cputype.h | 33 +
arch/unicore32/include/asm/delay.h | 52 ++
arch/unicore32/include/asm/dma-mapping.h | 124 ++++
arch/unicore32/include/asm/dma.h | 23 +
arch/unicore32/include/asm/elf.h | 94 +++
arch/unicore32/include/asm/fpstate.h | 26 +
arch/unicore32/include/asm/fpu-ucf64.h | 53 ++
arch/unicore32/include/asm/futex.h | 143 +++++
arch/unicore32/include/asm/gpio.h | 103 +++
arch/unicore32/include/asm/hwcap.h | 32 +
arch/unicore32/include/asm/io.h | 52 ++
arch/unicore32/include/asm/irq.h | 107 ++++
arch/unicore32/include/asm/irqflags.h | 53 ++
arch/unicore32/include/asm/linkage.h | 22 +
arch/unicore32/include/asm/memblock.h | 46 ++
arch/unicore32/include/asm/memory.h | 123 ++++
arch/unicore32/include/asm/mmu.h | 17 +
arch/unicore32/include/asm/mmu_context.h | 87 +++
arch/unicore32/include/asm/mutex.h | 20 +
arch/unicore32/include/asm/page.h | 80 +++
arch/unicore32/include/asm/pci.h | 46 ++
arch/unicore32/include/asm/pgalloc.h | 110 ++++
arch/unicore32/include/asm/pgtable-hwdef.h | 55 ++
arch/unicore32/include/asm/pgtable.h | 317 ++++++++++
arch/unicore32/include/asm/processor.h | 92 +++
arch/unicore32/include/asm/ptrace.h | 133 ++++
arch/unicore32/include/asm/sigcontext.h | 29 +
arch/unicore32/include/asm/stacktrace.h | 31 +
arch/unicore32/include/asm/string.h | 38 ++
arch/unicore32/include/asm/suspend.h | 30 +
arch/unicore32/include/asm/system.h | 161 +++++
arch/unicore32/include/asm/thread_info.h | 154 +++++
arch/unicore32/include/asm/timex.h | 34 +
arch/unicore32/include/asm/tlb.h | 98 +++
arch/unicore32/include/asm/tlbflush.h | 195 ++++++
arch/unicore32/include/asm/traps.h | 21 +
arch/unicore32/include/asm/uaccess.h | 47 ++
arch/unicore32/include/asm/unistd.h | 18 +
arch/unicore32/include/mach/PKUnity.h | 104 ++++
arch/unicore32/include/mach/bitfield.h | 24 +
arch/unicore32/include/mach/dma.h | 41 ++
arch/unicore32/include/mach/hardware.h | 45 ++
arch/unicore32/include/mach/map.h | 20 +
arch/unicore32/include/mach/memory.h | 58 ++
arch/unicore32/include/mach/ocd.h | 36 ++
arch/unicore32/include/mach/pm.h | 43 ++
arch/unicore32/include/mach/regs-ac97.h | 32 +
arch/unicore32/include/mach/regs-dmac.h | 81 +++
arch/unicore32/include/mach/regs-gpio.h | 70 +++
arch/unicore32/include/mach/regs-i2c.h | 63 ++
arch/unicore32/include/mach/regs-intc.h | 28 +
arch/unicore32/include/mach/regs-nand.h | 79 +++
arch/unicore32/include/mach/regs-ost.h | 92 +++
arch/unicore32/include/mach/regs-pci.h | 94 +++
arch/unicore32/include/mach/regs-pm.h | 126 ++++
arch/unicore32/include/mach/regs-ps2.h | 20 +
arch/unicore32/include/mach/regs-resetc.h | 34 +
arch/unicore32/include/mach/regs-rtc.h | 37 ++
arch/unicore32/include/mach/regs-sdc.h | 156 +++++
arch/unicore32/include/mach/regs-spi.h | 98 +++
arch/unicore32/include/mach/regs-uart.h | 3 +
arch/unicore32/include/mach/regs-umal.h | 229 +++++++
arch/unicore32/include/mach/regs-unigfx.h | 200 ++++++
arch/unicore32/include/mach/uncompress.h | 34 +
arch/unicore32/kernel/Makefile | 34 +
arch/unicore32/kernel/asm-offsets.c | 112 ++++
arch/unicore32/kernel/clock.c | 388 ++++++++++++
arch/unicore32/kernel/cpu-ucv2.c | 93 +++
arch/unicore32/kernel/debug-macro.S | 89 +++
arch/unicore32/kernel/debug.S | 85 +++
arch/unicore32/kernel/dma.c | 180 ++++++
arch/unicore32/kernel/early_printk.c | 59 ++
arch/unicore32/kernel/elf.c | 38 ++
arch/unicore32/kernel/entry.S | 824 +++++++++++++++++++++++++
arch/unicore32/kernel/fpu-ucf64.c | 126 ++++
arch/unicore32/kernel/gpio.c | 122 ++++
arch/unicore32/kernel/head.S | 252 ++++++++
arch/unicore32/kernel/hibernate.c | 160 +++++
arch/unicore32/kernel/hibernate_asm.S | 117 ++++
arch/unicore32/kernel/init_task.c | 44 ++
arch/unicore32/kernel/irq.c | 426 +++++++++++++
arch/unicore32/kernel/ksyms.c | 99 +++
arch/unicore32/kernel/ksyms.h | 15 +
arch/unicore32/kernel/module.c | 152 +++++
arch/unicore32/kernel/pci.c | 404 ++++++++++++
arch/unicore32/kernel/pm.c | 123 ++++
arch/unicore32/kernel/process.c | 389 ++++++++++++
arch/unicore32/kernel/ptrace.c | 149 +++++
arch/unicore32/kernel/puv3-core.c | 270 ++++++++
arch/unicore32/kernel/puv3-nb0916.c | 175 ++++++
arch/unicore32/kernel/puv3-smw0919.c | 115 ++++
arch/unicore32/kernel/pwm.c | 263 ++++++++
arch/unicore32/kernel/rtc.c | 380 ++++++++++++
arch/unicore32/kernel/setup.c | 360 +++++++++++
arch/unicore32/kernel/setup.h | 30 +
arch/unicore32/kernel/signal.c | 494 +++++++++++++++
arch/unicore32/kernel/sleep.S | 202 ++++++
arch/unicore32/kernel/stacktrace.c | 131 ++++
arch/unicore32/kernel/sys.c | 126 ++++
arch/unicore32/kernel/time.c | 148 +++++
arch/unicore32/kernel/traps.c | 333 ++++++++++
arch/unicore32/kernel/vmlinux.lds.S | 61 ++
arch/unicore32/lib/Makefile | 27 +
arch/unicore32/lib/backtrace.S | 163 +++++
arch/unicore32/lib/clear_user.S | 57 ++
arch/unicore32/lib/copy_from_user.S | 108 ++++
arch/unicore32/lib/copy_page.S | 39 ++
arch/unicore32/lib/copy_template.S | 214 +++++++
arch/unicore32/lib/copy_to_user.S | 96 +++
arch/unicore32/lib/delay.S | 51 ++
arch/unicore32/lib/findbit.S | 98 +++
arch/unicore32/lib/strncpy_from_user.S | 45 ++
arch/unicore32/lib/strnlen_user.S | 42 ++
arch/unicore32/mm/Kconfig | 50 ++
arch/unicore32/mm/Makefile | 15 +
arch/unicore32/mm/alignment.c | 523 ++++++++++++++++
arch/unicore32/mm/cache-ucv2.S | 212 +++++++
arch/unicore32/mm/dma-swiotlb.c | 34 +
arch/unicore32/mm/extable.c | 24 +
arch/unicore32/mm/fault.c | 479 ++++++++++++++
arch/unicore32/mm/flush.c | 98 +++
arch/unicore32/mm/init.c | 517 ++++++++++++++++
arch/unicore32/mm/iomap.c | 56 ++
arch/unicore32/mm/ioremap.c | 261 ++++++++
arch/unicore32/mm/mm.h | 39 ++
arch/unicore32/mm/mmu.c | 533 ++++++++++++++++
arch/unicore32/mm/pgd.c | 102 +++
arch/unicore32/mm/proc-macros.S | 145 +++++
arch/unicore32/mm/proc-syms.c | 23 +
arch/unicore32/mm/proc-ucv2.S | 134 ++++
arch/unicore32/mm/tlb-ucv2.S | 89 +++
drivers/input/serio/i8042-unicore32io.h | 70 +++
drivers/input/serio/i8042.h | 2 +
drivers/pci/Makefile | 1 +
include/asm-generic/ftrace.h | 16 +
include/asm-generic/sizes.h | 47 ++
include/asm-generic/uaccess.h | 8 +-
159 files changed, 18754 insertions(+), 3 deletions(-)


2011-02-12 17:52:00

by Linus Torvalds

[permalink] [raw]
Subject: Re: [GIT PULL] UniCore32 ISA support for linux-2.6

On Fri, Feb 11, 2011 at 5:32 PM, Guan Xuetao <[email protected]> wrote:
> Hi Linus,
> ?Could you please pull from:
> ? ?git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32.git for_linus
> ?to add unicore32 support for linux-2.6.

I'm not going to do it during the 38 cycle, but if this has has gotten
ack's from people like Arnd, and all the commentary from other people
(like the "the ptrace.c file looks like it was copied from arm, wants
attribution" etc), I can pull it in the 39 cycle.

Arnd - who else was involved in the reviews? Is there somebody who
_should_ have been involved and wasn't?

Linus

2011-02-12 19:11:46

by Arnd Bergmann

[permalink] [raw]
Subject: Re: [GIT PULL] UniCore32 ISA support for linux-2.6

On Saturday 12 February 2011 18:51:32 Linus Torvalds wrote:
> On Fri, Feb 11, 2011 at 5:32 PM, Guan Xuetao <[email protected]> wrote:
> > Hi Linus,
> > Could you please pull from:
> > git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32.git for_linus
> > to add unicore32 support for linux-2.6.
>
> I'm not going to do it during the 38 cycle, but if this has has gotten
> ack's from people like Arnd, and all the commentary from other people
> (like the "the ptrace.c file looks like it was copied from arm, wants
> attribution" etc), I can pull it in the 39 cycle.

I think it should still be posted once more to linux-arch/linux-kernel
as emails. I gave an Acked-by to a number of patches that are
harmless and that I didn't have any comments on.

There are a number of patches that I reviewed more thoroughly, and
Guan did a good job of cleaning up the code based on that. I believe
it's basically good to go into 2.6.39 once they go over the mailing
list in the current version. I'll reply with a Reviewed-by tag to the
patches that I reviewed and that now look ok when that happens.

There are a few remaining issues from the review, which can probably
be addressed in a later version. For instance, I suggested the use
of a flattened device tree for enumerating the nondiscoverable
SoC devices, which should help long-term maintainance, but is not
essential.

I should probably have been clearer about the timing for merging.
While I must have mentioned it at some point, there were a lot of
things I needed to explain about the process, so it probably
got lost.

> Arnd - who else was involved in the reviews? Is there somebody who
> should have been involved and wasn't?

A few people commented on specific patches, but I don't think anyone
besides me looked at all of it. Greg and others reviewed the
device drivers, so I did not bother with those.

I don't know enough about the signal handling code to do a good review,
and I tried to get Al Viro involved at some point, but didn't get his
attention.

Arnd

2011-02-13 01:52:15

by Xuetao Guan

[permalink] [raw]
Subject: RE: [GIT PULL] UniCore32 ISA support for linux-2.6



> -----Original Message-----
> From: Linus Torvalds [mailto:[email protected]]
> Sent: Sunday, February 13, 2011 1:52 AM
> To: Guan Xuetao
> Cc: [email protected]; Arnd Bergmann
> Subject: Re: [GIT PULL] UniCore32 ISA support for linux-2.6
>
> On Fri, Feb 11, 2011 at 5:32 PM, Guan Xuetao <[email protected]> wrote:
> > Hi Linus,
> > ?Could you please pull from:
> > ? ?git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32.git for_linus
> > ?to add unicore32 support for linux-2.6.
>
> I'm not going to do it during the 38 cycle, but if this has has gotten
> ack's from people like Arnd, and all the commentary from other people
> (like the "the ptrace.c file looks like it was copied from arm, wants
> attribution" etc), I can pull it in the 39 cycle.
I will repost the patches, and hope them to be fetched in the 39 cycle.
And ptrace.c file has been modified, sorry and thanks to Russell King.

>
> Arnd - who else was involved in the reviews? Is there somebody who
> _should_ have been involved and wasn't?
Arnd gave me great help.
Many people helped me refine the codes.
Thanks everybody.

>
> Linus

Thanks & Regards.

Guan Xuetao

2011-02-13 02:31:10

by Xuetao Guan

[permalink] [raw]
Subject: RE: [GIT PULL] UniCore32 ISA support for linux-2.6



> -----Original Message-----
> From: Arnd Bergmann [mailto:[email protected]]
> Sent: Sunday, February 13, 2011 3:12 AM
> To: Linus Torvalds
> Cc: Guan Xuetao; [email protected]
> Subject: Re: [GIT PULL] UniCore32 ISA support for linux-2.6
>
> On Saturday 12 February 2011 18:51:32 Linus Torvalds wrote:
> > On Fri, Feb 11, 2011 at 5:32 PM, Guan Xuetao <[email protected]> wrote:
> > > Hi Linus,
> > > Could you please pull from:
> > > git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32.git for_linus
> > > to add unicore32 support for linux-2.6.
> >
> > I'm not going to do it during the 38 cycle, but if this has has gotten
> > ack's from people like Arnd, and all the commentary from other people
> > (like the "the ptrace.c file looks like it was copied from arm, wants
> > attribution" etc), I can pull it in the 39 cycle.
>
> I think it should still be posted once more to linux-arch/linux-kernel
> as emails. I gave an Acked-by to a number of patches that are
> harmless and that I didn't have any comments on.
Yes, I will.
I remain your Acked-by for ptrace patch, and please acknowledge it again.

>
> There are a number of patches that I reviewed more thoroughly, and
> Guan did a good job of cleaning up the code based on that. I believe
> it's basically good to go into 2.6.39 once they go over the mailing
> list in the current version. I'll reply with a Reviewed-by tag to the
> patches that I reviewed and that now look ok when that happens.
>
> There are a few remaining issues from the review, which can probably
> be addressed in a later version. For instance, I suggested the use
> of a flattened device tree for enumerating the nondiscoverable
> SoC devices, which should help long-term maintainance, but is not
> essential.
>
> I should probably have been clearer about the timing for merging.
> While I must have mentioned it at some point, there were a lot of
> things I needed to explain about the process, so it probably
> got lost.
Yes.
It's my wrong to advance the process rashly.

>
> > Arnd - who else was involved in the reviews? Is there somebody who
> > should have been involved and wasn't?
>
> A few people commented on specific patches, but I don't think anyone
> besides me looked at all of it. Greg and others reviewed the
> device drivers, so I did not bother with those.
I hope to involve some necessary drivers for first merging.
So, I post i8042, i2c, framebuffer, and mac drivers to related maintainers and maillists.
And acknowledged drivers were added to my git repo.

>
> I don't know enough about the signal handling code to do a good review,
> and I tried to get Al Viro involved at some point, but didn't get his
> attention.
With new abi, I rearranged the signal handler, simpler and neater for review.

>
> Arnd

Thanks & Regards.

Guan Xuetao