From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from rex.securecomputing.com ([203.24.151.4]:51912 "EHLO cyberguard.com.au" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S935271AbZAPOV7 (ORCPT ); Fri, 16 Jan 2009 09:21:59 -0500 Message-ID: <49709800.70009@snapgear.com> Date: Sat, 17 Jan 2009 00:21:52 +1000 From: Greg Ungerer MIME-Version: 1.0 Subject: Re: [PATCH] m68k,m68knommu: merge header files References: <20081208205814.GA22697@uranus.ravnborg.org> <20081213205251.GC27748@uranus.ravnborg.org> <20081213205828.GD27748@uranus.ravnborg.org> <49707AE0.1040803@opengear.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kbuild-owner@vger.kernel.org List-ID: To: Geert Uytterhoeven Cc: Sam Ravnborg , Roman Zippel , linux-m68k , Greg Ungerer , uclinux-dev , Arnd Bergmann , linux-kbuild Hi Geert, Geert Uytterhoeven wrote: > On Fri, 16 Jan 2009, Greg Ungerer wrote: >> Sam Ravnborg wrote: >>>> From 5a8b9717a399679c4753e596ea864b02a1197025 Mon Sep 17 00:00:00 2001 >>> From: Sam Ravnborg >>> Date: Sat, 13 Dec 2008 21:23:08 +0100 >>> Subject: [PATCH] m68k,m68knommu: merge header files >>> >>> Merge header files for m68k and m68knommu to the single location: >>> >>> arch/m68k/include/asm >>> >>> The majority of this patch was the result of the >>> script that is included in the changelog below. >>> >>> The script was originally written by Arnd Bergman and >>> exten by me to cover a few more files. >>> >>> When the header files differed the script uses the following: >>> >>> The original m68k file is named _mm.h [mm for memory manager] >>> The m68knommu file is named _no.h [no for no memory manager] >>> >>> The files uses the following include guard: >>> >>> This include gaurd works as the m68knommu toolchain set >>> the __uClinux__ symbol - so this should work in userspace too. >>> >>> Merging the header files for m68k and m68knommu exposes the >>> (unexpected?) ABI differences thus it is easier to actually >>> identify these and thus to fix them. >>> >>> The commit has been build tested with both a m68k and >>> a m68knommu toolchain - with success. >>> >>> The commit has also been tested with "make headers_check" >>> and this patch fixes make headers_check for m68knommu. >>> >>> The script used: >>> TARGET=arch/m68k/include/asm >>> SOURCE=arch/m68knommu/include/asm >>> >>> INCLUDE="cachectl.h errno.h fcntl.h hwtest.h ioctls.h ipcbuf.h \ >>> linkage.h math-emu.h md.h mman.h movs.h msgbuf.h openprom.h \ >>> oplib.h poll.h posix_types.h resource.h rtc.h sembuf.h shmbuf.h \ >>> shm.h shmparam.h socket.h sockios.h spinlock.h statfs.h stat.h \ >>> termbits.h termios.h tlb.h types.h user.h" >>> >>> EQUAL="auxvec.h cputime.h device.h emergency-restart.h futex.h \ >>> ioctl.h irq_regs.h kdebug.h local.h mutex.h percpu.h \ >>> sections.h topology.h" >>> >>> NOMUUFILES="anchor.h bootstd.h coldfire.h commproc.h dbg.h \ >>> elia.h flat.h m5206sim.h m520xsim.h m523xsim.h m5249sim.h \ >>> m5272sim.h m527xsim.h m528xsim.h m5307sim.h m532xsim.h \ >>> m5407sim.h m68360_enet.h m68360.h m68360_pram.h m68360_quicc.h \ >>> m68360_regs.h MC68328.h MC68332.h MC68EZ328.h MC68VZ328.h \ >>> mcfcache.h mcfdma.h mcfmbus.h mcfne.h mcfpci.h mcfpit.h \ >>> mcfsim.h mcfsmc.h mcftimer.h mcfuart.h mcfwdebug.h \ >>> nettel.h quicc_simple.h smp.h" >>> >>> FILES="atomic.h bitops.h bootinfo.h bug.h bugs.h byteorder.h cache.h \ >>> cacheflush.h checksum.h current.h delay.h div64.h \ >>> dma-mapping.h dma.h elf.h entry.h fb.h fpu.h hardirq.h hw_irq.h io.h \ >>> irq.h kmap_types.h machdep.h mc146818rtc.h mmu.h mmu_context.h \ >>> module.h page.h page_offset.h param.h pci.h pgalloc.h \ >>> pgtable.h processor.h ptrace.h scatterlist.h segment.h \ >>> setup.h sigcontext.h siginfo.h signal.h string.h system.h \ >>> thread_info.h timex.h tlbflush.h traps.h uaccess.h ucontext.h \ >>> unaligned.h unistd.h" >>> >>> mergefile() { >>> BASE=${1%.h} >>> git mv ${SOURCE}/$1 ${TARGET}/${BASE}_no.h >>> git mv ${TARGET}/$1 ${TARGET}/${BASE}_mm.h >>> >>> cat << EOF > ${TARGET}/$1 >>> EOF >>> >>> git add ${TARGET}/$1 >>> } >>> >>> set -e >>> >>> mkdir -p ${TARGET} >>> >>> git mv include/asm-m68k/* ${TARGET} >>> rmdir include/asm-m68k >>> >>> git rm ${SOURCE}/Kbuild >>> for F in $INCLUDE $EQUAL; do >>> git rm ${SOURCE}/$F >>> done >>> >>> for F in $NOMUUFILES; do >>> git mv ${SOURCE}/$F ${TARGET}/$F >>> done >>> >>> for F in $FILES ; do >>> mergefile $F >>> done >>> >>> rmdir arch/m68knommu/include/asm >>> rmdir arch/m68knommu/include >>> >>> Cc: Arnd Bergmann >>> Cc: Geert Uytterhoeven >>> Cc: Greg Ungerer >>> Signed-off-by: Sam Ravnborg >> So I took this, applied, and have been running some tests >> on m68knommu. >> >> I had to make 2 small changes to make it work on 2.6.29-rc1. >> I had to add swab.h into the list of FILES, and move the seting >> of hdr-arch for m68knommu in the top level Makefile to after the >> global hdr-arch setting (so all of about 3 lines later). >> >> Otherwise it builds and runs fine for m68knommu in all >> cases I have tested so far. > > Thanks! > >> I have this applied as the only change at: >> >> git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git >> m68k-merge-includes > > Huh, is this git repository really ca. 200 MiB? Hmm, seems kinda large. Maybe I didn't pack it properly? >> Sam Ravnborg (1): >> m68k,m68knommu: merge header files >> >> >> More review, testing, comments welcome... >> Where to from here? > > I'll pull from it and give it some m68k test builds. > After that, you can move it to for-next. If everything's well, it can go to > Linus. Sounds like a plan. > Or should I amend and add my SoB and put it in m68k for-next? I am happy to go either way. Regards Greg > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds > -- ------------------------------------------------------------------------ Greg Ungerer -- Principal Engineer EMAIL: gerg@snapgear.com SnapGear, a McAfee Company PHONE: +61 7 3435 2888 825 Stanley St, FAX: +61 7 3891 3630 Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com