Skip to contentSkip to conversation

Status of the arm26 port?

PATCH In review Adrian Bunk 7 participants 9 messages Jul 7, 2007 – Jul 31, 2007

lore
Share & tools
lore
#0 lore raw

I'm wondering what the status of the arm26 port in the kernel is:

AFAIR gcc support for this architecture was deprecated in gcc 3.4 and removed in gcc 4.0. This implies that either someone will have to re-add support to gcc in the next 1-2 years or the kernel port will become useless with the next increase of the minimum gcc requirement for the kernel.

The other point is that I tried to cross-compile an arm26 defconfig. I gave up after running into several compile errors, and it doesn't seem as if any recent kernel could be compiled.

Is the arm26 kernel port already unused dead code or is some work for getting it back into shape pending?

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#1 lore raw

RFC: Remove the arm26 port

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

cu
Adrian

Quoted 17 lines · Adrian Bunk

I'm wondering what the status of the arm26 port in the kernel is:

AFAIR gcc support for this architecture was deprecated in gcc 3.4 and removed in gcc 4.0. This implies that either someone will have to re-add support to gcc in the next 1-2 years or the kernel port will become useless with the next increase of the minimum gcc requirement for the kernel.

The other point is that I tried to cross-compile an arm26 defconfig. I gave up after running into several compile errors, and it doesn't seem as if any recent kernel could be compiled.

Is the arm26 kernel port already unused dead code or is some work for getting it back into shape pending?

cu
Adrian

#2 lore raw

Re: RFC: Remove the arm26 port

Quoted 6 lines · Adrian Bunk

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

Yes, please. This bitrotting code has been in the way for quite bit of cross-architecture work I've been doing.

Btw, there's probably no point to Cc rmk as he's not involved with that stinkin' pile.

#3 lore raw

Re: RFC: Remove the arm26 port

Quoted 5 lines · Christoph Hellwig
Quoted 4 lines · Adrian Bunk

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

Quoted 8 lines
Quoted 2 lines

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

Yes, please. This bitrotting code has been in the way for quite bit of cross-architecture work I've been doing.

Btw, there's probably no point to Cc rmk as he's not involved with that stinkin' pile.

Definitely - I'd like to see it gone so hopefully I'll stop being copied on every single janitorial change to it.

(And yes, I've re-enabled mail-followup-to since otherwise I can't group-reply in mutt to everyone - without it I just get hch in the To:
header and an empty CC: with 'g'. Tough shit to those anti-mail-followup-to people. It's the only thing that actually works.)

Signature · 3 lines
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
#4 lore raw

Re: RFC: Remove the arm26 port

In reply to Adrian Bunk
Quoted 6 lines · * Adrian Bunk ([email protected]) wrote:

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

As was being discussed a few weeks ago; the drivers/acorn/block should go at the same time since they are only in ARM 26 machines.

Dave

Signature · 4 lines
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    | Running GNU/Linux on Alpha,68K| Happy  \ 
\ gro.gilbert @ treblig.org | MIPS,x86,ARM,SPARC,PPC & HPPA | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/
#5 lore raw

Re: RFC: Remove the arm26 port

In reply to Adrian Bunk
Quoted 6 lines · Adrian Bunk

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

Hi guys.

Obviously I havent had time to work on the port in some time now - I am ok with it being dropped - the work of splitting it out wont be lost and until its fixed up, its just in other peoples way.

If I get time to work on it in future, I'll let you all know.

-Ian

#6 lore raw

PATCH 1/1 Remove the arm26 port

Quoted 9 lines · ian
Quoted 6 lines · Adrian Bunk

Considering the state of the arm26 port, I do hereby suggest to remove it from the Linx kernel since it's far from a usable state and doesn't seem to come back into a usable state.

If anyone wants to work on getting this port back into a usable state in the forseeable future he should speak up now.

Hi guys.

Hi Ian,

Quoted 5 lines

Obviously I havent had time to work on the port in some time now - I am ok with it being dropped - the work of splitting it out wont be lost and until its fixed up, its just in other peoples way.

If I get time to work on it in future, I'll let you all know.

thanks for your answer.

This email contains the patch to remove the arm26 architecture.

This is neither meant against you nor against the arm26 port, and I don't have any problems if you or anyone else will submit an arm26 port in a working state in the future.

Quoted 1 line

-Ian

cu
Adrian

<-- snip -->

The arm26 port has been in a state where it was far from even compiling for quite some time.

Ian Molton agreed with the removal.

---

Due to its size, the patch is attached compressed.

 MAINTAINERS                                |   15 
 arch/arm/nwfpe/Makefile                    |    1 
 arch/arm/nwfpe/entry26.S                   |  112 
 arch/arm26/ACKNOWLEDGEMENTS                |   29 
 arch/arm26/Kconfig                         |  253 -
 arch/arm26/Kconfig.debug                   |   50 
 arch/arm26/Makefile                        |  107 
 arch/arm26/boot/Makefile                   |   83 
 arch/arm26/boot/compressed/Makefile        |   50 
 arch/arm26/boot/compressed/head.S          |  516 ---
 arch/arm26/boot/compressed/ll_char_wr.S    |  162 
 arch/arm26/boot/compressed/misc.c          |  316 -
 arch/arm26/boot/compressed/uncompress.h    |  110 
 arch/arm26/boot/compressed/vmlinux.lds.in  |   60 
 arch/arm26/boot/install.sh                 |   62 
 arch/arm26/defconfig                       |  361 --
 arch/arm26/kernel/Makefile                 |   17 
 arch/arm26/kernel/armksyms.c               |  204 -
 arch/arm26/kernel/asm-offsets.c            |   55 
 arch/arm26/kernel/calls.S                  |  265 -
 arch/arm26/kernel/compat.c                 |  173 -
 arch/arm26/kernel/dma.c                    |  273 -
 arch/arm26/kernel/ecard.c                  |  847 -----
 arch/arm26/kernel/entry.S                  |  951 -----
 arch/arm26/kernel/fiq.c                    |  201 -
 arch/arm26/kernel/head.S                   |  112 
 arch/arm26/kernel/init_task.c              |   49 
 arch/arm26/kernel/irq.c                    |  722 ----
 arch/arm26/kernel/process.c                |  392 --
 arch/arm26/kernel/ptrace.c                 |  670 ----
 arch/arm26/kernel/ptrace.h                 |   13 
 arch/arm26/kernel/semaphore.c              |  222 -
 arch/arm26/kernel/setup.c                  |  572 ---
 arch/arm26/kernel/signal.c                 |  538 ---
 arch/arm26/kernel/sys_arm.c                |  323 -
 arch/arm26/kernel/time.c                   |  210 -
 arch/arm26/kernel/traps.c                  |  548 ---
 arch/arm26/kernel/vmlinux-arm26-xip.lds.in |  136 
 arch/arm26/kernel/vmlinux-arm26.lds.in     |  129 
 arch/arm26/kernel/vmlinux.lds.S            |   11 
 arch/arm26/lib/Makefile                    |   26 
 arch/arm26/lib/ashldi3.c                   |   61 
 arch/arm26/lib/ashrdi3.c                   |   61 
 arch/arm26/lib/backtrace.S                 |  144 
 arch/arm26/lib/changebit.S                 |   28 
 arch/arm26/lib/clearbit.S                  |   31 
 arch/arm26/lib/copy_page.S                 |   62 
 arch/arm26/lib/csumipv6.S                  |   32 
 arch/arm26/lib/csumpartial.S               |  130 
 arch/arm26/lib/csumpartialcopy.S           |   52 
 arch/arm26/lib/csumpartialcopygeneric.S    |  352 --
 arch/arm26/lib/csumpartialcopyuser.S       |  114 
 arch/arm26/lib/delay.S                     |   57 
 arch/arm26/lib/ecard.S                     |   40 
 arch/arm26/lib/findbit.S                   |   67 
 arch/arm26/lib/floppydma.S                 |   32 
 arch/arm26/lib/gcclib.h                    |   21 
 arch/arm26/lib/getuser.S                   |  112 
 arch/arm26/lib/io-acorn.S                  |   70 
 arch/arm26/lib/io-readsb.S                 |  116 
 arch/arm26/lib/io-readsl.S                 |   78 
 arch/arm26/lib/io-readsw.S                 |  107 
 arch/arm26/lib/io-writesb.S                |  122 
 arch/arm26/lib/io-writesl.S                |   56 
 arch/arm26/lib/io-writesw.S                |  127 
 arch/arm26/lib/kbd.c                       |  278 -
 arch/arm26/lib/lib1funcs.S                 |  313 -
 arch/arm26/lib/longlong.h                  |  184 -
 arch/arm26/lib/lshrdi3.c                   |   61 
 arch/arm26/lib/memchr.S                    |   25 
 arch/arm26/lib/memcpy.S                    |  318 -
 arch/arm26/lib/memset.S                    |   80 
 arch/arm26/lib/memzero.S                   |   80 
 arch/arm26/lib/muldi3.c                    |   77 
 arch/arm26/lib/putuser.S                   |  109 
 arch/arm26/lib/setbit.S                    |   29 
 arch/arm26/lib/strchr.S                    |   25 
 arch/arm26/lib/strrchr.S                   |   25 
 arch/arm26/lib/testchangebit.S             |   29 
 arch/arm26/lib/testclearbit.S              |   29 
 arch/arm26/lib/testsetbit.S                |   29 
 arch/arm26/lib/uaccess-kernel.S            |  173 -
 arch/arm26/lib/uaccess-user.S              |  718 ----
 arch/arm26/lib/ucmpdi2.c                   |   51 
 arch/arm26/lib/udivdi3.c                   |  242 -
 arch/arm26/machine/Makefile                |    8 
 arch/arm26/machine/dma.c                   |  214 -
 arch/arm26/machine/irq.c                   |  164 -
 arch/arm26/machine/latches.c               |   72 
 arch/arm26/mm/Makefile                     |    6 
 arch/arm26/mm/extable.c                    |   24 
 arch/arm26/mm/fault.c                      |  312 -
 arch/arm26/mm/fault.h                      |    5 
 arch/arm26/mm/init.c                       |  403 --
 arch/arm26/mm/memc.c                       |  184 -
 arch/arm26/mm/proc-funcs.S                 |  359 --
 arch/arm26/mm/small_page.c                 |  192 -
 arch/arm26/nwfpe/ARM-gcc.h                 |  120 
 arch/arm26/nwfpe/ChangeLog                 |   83 
 arch/arm26/nwfpe/Makefile                  |   15 
 arch/arm26/nwfpe/double_cpdo.c             |  288 -
 arch/arm26/nwfpe/entry.S                   |  114 
 arch/arm26/nwfpe/extended_cpdo.c           |  273 -
 arch/arm26/nwfpe/fpa11.c                   |  221 -
 arch/arm26/nwfpe/fpa11.h                   |   87 
 arch/arm26/nwfpe/fpa11.inl                 |   51 
 arch/arm26/nwfpe/fpa11_cpdo.c              |  117 
 arch/arm26/nwfpe/fpa11_cpdt.c              |  368 --
 arch/arm26/nwfpe/fpa11_cprt.c              |  289 -
 arch/arm26/nwfpe/fpmodule.c                |  180 -
 arch/arm26/nwfpe/fpmodule.h                |   46 
 arch/arm26/nwfpe/fpmodule.inl              |   84 
 arch/arm26/nwfpe/fpopcode.c                |  148 
 arch/arm26/nwfpe/fpopcode.h                |  390 --
 arch/arm26/nwfpe/fpsr.h                    |  108 
 arch/arm26/nwfpe/milieu.h                  |   48 
 arch/arm26/nwfpe/single_cpdo.c             |  255 -
 arch/arm26/nwfpe/softfloat-macros          |  740 ----
 arch/arm26/nwfpe/softfloat-specialize      |  366 --
 arch/arm26/nwfpe/softfloat.c               | 3439 ---------------------
 arch/arm26/nwfpe/softfloat.h               |  232 -
 drivers/acorn/README                       |    1 
 drivers/acorn/block/Kconfig                |   36 
 drivers/acorn/block/Makefile               |    9 
 drivers/acorn/block/fd1772.c               | 1604 ---------
 drivers/acorn/block/fd1772dma.S            |  100 
 drivers/acorn/block/mfm.S                  |  162 
 drivers/acorn/block/mfmhd.c                | 1385 --------
 drivers/ide/Kconfig                        |    2 
 drivers/ide/arm/ide_arm.c                  |   20 
 drivers/rtc/Kconfig                        |    2 
 drivers/scsi/arm/Kconfig                   |    9 
 drivers/scsi/arm/Makefile                  |    1 
 drivers/scsi/arm/ecoscsi.c                 |  166 -
 drivers/video/acornfb.c                    |   20 
 include/asm-arm26/a.out.h                  |   39 
 include/asm-arm26/assembler.h              |  106 
 include/asm-arm26/atomic.h                 |  123 
 include/asm-arm26/auxvec.h                 |    4 
 include/asm-arm26/bitops.h                 |  207 -
 include/asm-arm26/bug.h                    |   19 
 include/asm-arm26/bugs.h                   |   15 
 include/asm-arm26/byteorder.h              |   24 
 include/asm-arm26/cache.h                  |   12 
 include/asm-arm26/cacheflush.h             |   53 
 include/asm-arm26/checksum.h               |  151 
 include/asm-arm26/constants.h              |   28 
 include/asm-arm26/cputime.h                |    6 
 include/asm-arm26/current.h                |   15 
 include/asm-arm26/delay.h                  |   34 
 include/asm-arm26/device.h                 |    7 
 include/asm-arm26/div64.h                  |    1 
 include/asm-arm26/dma.h                    |  183 -
 include/asm-arm26/ecard.h                  |  294 -
 include/asm-arm26/elf.h                    |   77 
 include/asm-arm26/emergency-restart.h      |    6 
 include/asm-arm26/errno.h                  |    6 
 include/asm-arm26/fb.h                     |   12 
 include/asm-arm26/fcntl.h                  |   13 
 include/asm-arm26/fiq.h                    |   37 
 include/asm-arm26/floppy.h                 |  141 
 include/asm-arm26/fpstate.h                |   29 
 include/asm-arm26/futex.h                  |    6 
 include/asm-arm26/hardirq.h                |   32 
 include/asm-arm26/hardware.h               |  109 
 include/asm-arm26/ide.h                    |   34 
 include/asm-arm26/io.h                     |  434 --
 include/asm-arm26/ioc.h                    |   72 
 include/asm-arm26/ioctl.h                  |    1 
 include/asm-arm26/ioctls.h                 |   85 
 include/asm-arm26/ipc.h                    |    1 
 include/asm-arm26/ipcbuf.h                 |   29 
 include/asm-arm26/irq.h                    |   43 
 include/asm-arm26/irqchip.h                |  101 
 include/asm-arm26/kdebug.h                 |    1 
 include/asm-arm26/kmap_types.h             |   12 
 include/asm-arm26/leds.h                   |   50 
 include/asm-arm26/limits.h                 |   11 
 include/asm-arm26/linkage.h                |    7 
 include/asm-arm26/local.h                  |    2 
 include/asm-arm26/locks.h                  |  161 
 include/asm-arm26/mach-types.h             |   36 
 include/asm-arm26/map.h                    |   24 
 include/asm-arm26/mc146818rtc.h            |   28 
 include/asm-arm26/memory.h                 |  101 
 include/asm-arm26/mman.h                   |   17 
 include/asm-arm26/mmu.h                    |    9 
 include/asm-arm26/mmu_context.h            |   53 
 include/asm-arm26/module.h                 |    7 
 include/asm-arm26/msgbuf.h                 |   31 
 include/asm-arm26/namei.h                  |   25 
 include/asm-arm26/oldlatches.h             |   37 
 include/asm-arm26/page.h                   |  102 
 include/asm-arm26/param.h                  |   33 
 include/asm-arm26/parport.h                |   18 
 include/asm-arm26/pci.h                    |    6 
 include/asm-arm26/percpu.h                 |    6 
 include/asm-arm26/pgalloc.h                |   70 
 include/asm-arm26/pgtable.h                |  298 -
 include/asm-arm26/poll.h                   |    8 
 include/asm-arm26/posix_types.h            |   81 
 include/asm-arm26/proc-fns.h               |   49 
 include/asm-arm26/processor.h              |  113 
 include/asm-arm26/procinfo.h               |   56 
 include/asm-arm26/ptrace.h                 |  104 
 include/asm-arm26/resource.h               |    6 
 include/asm-arm26/scatterlist.h            |   26 
 include/asm-arm26/sections.h               |    2 
 include/asm-arm26/segment.h                |   11 
 include/asm-arm26/semaphore-helper.h       |   84 
 include/asm-arm26/semaphore.h              |  100 
 include/asm-arm26/sembuf.h                 |   25 
 include/asm-arm26/serial.h                 |   44 
 include/asm-arm26/setup.h                  |  209 -
 include/asm-arm26/shmbuf.h                 |   42 
 include/asm-arm26/shmparam.h               |   15 
 include/asm-arm26/sigcontext.h             |   33 
 include/asm-arm26/siginfo.h                |    6 
 include/asm-arm26/signal.h                 |  176 -
 include/asm-arm26/sizes.h                  |   52 
 include/asm-arm26/smp.h                    |    9 
 include/asm-arm26/socket.h                 |   55 
 include/asm-arm26/sockios.h                |   13 
 include/asm-arm26/spinlock.h               |    6 
 include/asm-arm26/stat.h                   |   77 
 include/asm-arm26/statfs.h                 |    8 
 include/asm-arm26/string.h                 |   43 
 include/asm-arm26/suspend.h                |    4 
 include/asm-arm26/sysirq.h                 |   60 
 include/asm-arm26/system.h                 |  247 -
 include/asm-arm26/termbits.h               |  196 -
 include/asm-arm26/termios.h                |   92 
 include/asm-arm26/thread_info.h            |  140 
 include/asm-arm26/timex.h                  |   29 
 include/asm-arm26/tlb.h                    |   63 
 include/asm-arm26/tlbflush.h               |   70 
 include/asm-arm26/topology.h               |    6 
 include/asm-arm26/types.h                  |   59 
 include/asm-arm26/uaccess-asm.h            |  153 
 include/asm-arm26/uaccess.h                |  293 -
 include/asm-arm26/ucontext.h               |   12 
 include/asm-arm26/unaligned.h              |  118 
 include/asm-arm26/uncompress.h             |  111 
 include/asm-arm26/unistd.h                 |  343 --
 include/asm-arm26/user.h                   |   84 
 include/asm-arm26/xor.h                    |  141 
 include/linux/mmzone.h                     |    1 
 lib/Kconfig.debug                          |    2 
 248 files changed, 9 insertions(+), 35817 deletions(-)
#7 lore raw

Re: [2.6 patch] Remove the arm26 port

Quoted 8 lines · Adrian Bunk

The arm26 port has been in a state where it was far from even compiling for quite some time.

Ian Molton agreed with the removal.

Due to its size, the patch is attached compressed.

You could've submitted a git patch. Would've been smaller and easier to apply, I think.

Quoted 1 line
 248 files changed, 9 insertions(+), 35817 deletions(-)

Amazing :-)

[ Do you realize you were ~36 times more productive than
one of Ken Thompson's most productive days, just now? ]

#8 lore raw

Re: [2.6 patch] Remove the arm26 port

In reply to Adrian Bunk
Quoted 4 lines · On Mon, 30 Jul 2007 13:49:14 +0200 Adrian Bunk <[email protected]> wrote:

The arm26 port has been in a state where it was far from even compiling for quite some time.

Ian Molton agreed with the removal.

OK, thanks, I queued that up for a 2.6.23 merge.