linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/13] Remove metag architecture
@ 2018-02-21 23:38 James Hogan
  2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: James Hogan @ 2018-02-21 23:38 UTC (permalink / raw)
  To: linux-metag
  Cc: linux-kernel, James Hogan, Guenter Roeck, Jonathan Corbet,
	Steven Rostedt, Ingo Molnar, Peter Zijlstra,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
	Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
	Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
	Wolfram Sang, linux-doc, linux-mm, linux-gpio, linux-watchdog,
	linux-media, linux-i2c

These patches remove the metag architecture and tightly dependent
drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
based metag toolchain we have been using is hitting compiler bugs, so
now seems a good time to drop it altogether.

Quoting from patch 1:

The earliest Meta architecture port of Linux I have a record of was an
import of a Meta port of Linux v2.4.1 in February 2004, which was worked
on significantly over the next few years by Graham Whaley, Will Newton,
Matt Fleming, myself and others.

Eventually the port was merged into mainline in v3.9 in March 2013, not
long after Imagination Technologies bought MIPS Technologies and shifted
its CPU focus over to the MIPS architecture.

As a result, though the port was maintained for a while, kept on life
support for a while longer, and useful for testing a few specific
drivers for which I don't have ready access to the equivalent MIPS
hardware, it is now essentially dead with no users.

It is also stuck using an out-of-tree toolchain based on GCC 4.2.4 which
is no longer maintained, now struggles to build modern kernels due to
toolchain bugs, and doesn't itself build with a modern GCC. The latest
buildroot port is still using an old uClibc snapshot which is no longer
served, and the latest uClibc doesn't build with GCC 4.2.4.

So lets call it a day and drop the Meta architecture port from the
kernel. RIP Meta.

Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jiri Slaby <jslaby@suse.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Wim Van Sebroeck <wim@linux-watchdog.org>
Cc: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Wolfram Sang <wsa@the-dreams.de>
Cc: linux-metag@vger.kernel.org
Cc: linux-doc@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: linux-gpio@vger.kernel.org
Cc: linux-watchdog@vger.kernel.org
Cc: linux-media@vger.kernel.org
Cc: linux-i2c@vger.kernel.org

James Hogan (13):
  metag: Remove arch/metag/
  docs: Remove metag docs
  docs: Remove remaining references to metag
  Drop a bunch of metag references
  irqchip: Remove metag irqchip drivers
  clocksource: Remove metag generic timer driver
  tty: Remove metag DA TTY and console driver
  MAINTAINERS/CREDITS: Drop METAG ARCHITECTURE
  pinctrl: Drop TZ1090 drivers
  gpio: Drop TZ1090 drivers
  watchdog: imgpdc: Drop METAG dependency
  media: img-ir: Drop METAG dependency
  i2c: img-scb: Drop METAG dependency

 CREDITS                                            |    5 +
 Documentation/00-INDEX                             |    2 -
 Documentation/admin-guide/kernel-parameters.txt    |    4 -
 Documentation/dev-tools/kmemleak.rst               |    2 +-
 .../devicetree/bindings/gpio/gpio-tz1090-pdc.txt   |   45 -
 .../devicetree/bindings/gpio/gpio-tz1090.txt       |   88 -
 Documentation/devicetree/bindings/metag/meta.txt   |   30 -
 .../bindings/pinctrl/img,tz1090-pdc-pinctrl.txt    |  127 --
 .../bindings/pinctrl/img,tz1090-pinctrl.txt        |  227 ---
 .../features/core/BPF-JIT/arch-support.txt         |    1 -
 .../core/generic-idle-thread/arch-support.txt      |    1 -
 .../features/core/jump-labels/arch-support.txt     |    1 -
 .../features/core/tracehook/arch-support.txt       |    1 -
 .../features/debug/KASAN/arch-support.txt          |    1 -
 .../debug/gcov-profile-all/arch-support.txt        |    1 -
 Documentation/features/debug/kgdb/arch-support.txt |    1 -
 .../debug/kprobes-on-ftrace/arch-support.txt       |    1 -
 .../features/debug/kprobes/arch-support.txt        |    1 -
 .../features/debug/kretprobes/arch-support.txt     |    1 -
 .../features/debug/optprobes/arch-support.txt      |    1 -
 .../features/debug/stackprotector/arch-support.txt |    1 -
 .../features/debug/uprobes/arch-support.txt        |    1 -
 .../debug/user-ret-profiler/arch-support.txt       |    1 -
 .../features/io/dma-api-debug/arch-support.txt     |    1 -
 .../features/io/dma-contiguous/arch-support.txt    |    1 -
 .../features/io/sg-chain/arch-support.txt          |    1 -
 .../features/lib/strncasecmp/arch-support.txt      |    1 -
 .../locking/cmpxchg-local/arch-support.txt         |    1 -
 .../features/locking/lockdep/arch-support.txt      |    1 -
 .../locking/queued-rwlocks/arch-support.txt        |    1 -
 .../locking/queued-spinlocks/arch-support.txt      |    1 -
 .../locking/rwsem-optimized/arch-support.txt       |    1 -
 .../features/perf/kprobes-event/arch-support.txt   |    1 -
 .../features/perf/perf-regs/arch-support.txt       |    1 -
 .../features/perf/perf-stackdump/arch-support.txt  |    1 -
 .../sched/membarrier-sync-core/arch-support.txt    |    1 -
 .../features/sched/numa-balancing/arch-support.txt |    1 -
 .../seccomp/seccomp-filter/arch-support.txt        |    1 -
 .../time/arch-tick-broadcast/arch-support.txt      |    1 -
 .../features/time/clockevents/arch-support.txt     |    1 -
 .../time/context-tracking/arch-support.txt         |    1 -
 .../features/time/irq-time-acct/arch-support.txt   |    1 -
 .../time/modern-timekeeping/arch-support.txt       |    1 -
 .../features/time/virt-cpuacct/arch-support.txt    |    1 -
 .../features/vm/ELF-ASLR/arch-support.txt          |    1 -
 .../features/vm/PG_uncached/arch-support.txt       |    1 -
 Documentation/features/vm/THP/arch-support.txt     |    1 -
 Documentation/features/vm/TLB/arch-support.txt     |    1 -
 .../features/vm/huge-vmap/arch-support.txt         |    1 -
 .../features/vm/ioremap_prot/arch-support.txt      |    1 -
 .../features/vm/numa-memblock/arch-support.txt     |    1 -
 .../features/vm/pte_special/arch-support.txt       |    1 -
 Documentation/metag/00-INDEX                       |    4 -
 Documentation/metag/kernel-ABI.txt                 |  256 ---
 MAINTAINERS                                        |   14 -
 arch/metag/Kconfig                                 |  287 ---
 arch/metag/Kconfig.debug                           |   34 -
 arch/metag/Kconfig.soc                             |   69 -
 arch/metag/Makefile                                |   89 -
 arch/metag/boot/.gitignore                         |    3 -
 arch/metag/boot/Makefile                           |   68 -
 arch/metag/boot/dts/Makefile                       |   16 -
 arch/metag/boot/dts/skeleton.dts                   |   10 -
 arch/metag/boot/dts/skeleton.dtsi                  |   15 -
 arch/metag/boot/dts/tz1090.dtsi                    |  108 --
 arch/metag/boot/dts/tz1090_generic.dts             |   10 -
 arch/metag/configs/meta1_defconfig                 |   39 -
 arch/metag/configs/meta2_defconfig                 |   40 -
 arch/metag/configs/meta2_smp_defconfig             |   41 -
 arch/metag/configs/tz1090_defconfig                |   42 -
 arch/metag/include/asm/Kbuild                      |   33 -
 arch/metag/include/asm/atomic.h                    |   49 -
 arch/metag/include/asm/atomic_lnkget.h             |  204 --
 arch/metag/include/asm/atomic_lock1.h              |  157 --
 arch/metag/include/asm/barrier.h                   |   85 -
 arch/metag/include/asm/bitops.h                    |  127 --
 arch/metag/include/asm/bug.h                       |   13 -
 arch/metag/include/asm/cache.h                     |   24 -
 arch/metag/include/asm/cacheflush.h                |  251 ---
 arch/metag/include/asm/cachepart.h                 |   43 -
 arch/metag/include/asm/checksum.h                  |   93 -
 arch/metag/include/asm/clock.h                     |   59 -
 arch/metag/include/asm/cmpxchg.h                   |   64 -
 arch/metag/include/asm/cmpxchg_irq.h               |   43 -
 arch/metag/include/asm/cmpxchg_lnkget.h            |   87 -
 arch/metag/include/asm/cmpxchg_lock1.h             |   49 -
 arch/metag/include/asm/core_reg.h                  |   36 -
 arch/metag/include/asm/cpu.h                       |   15 -
 arch/metag/include/asm/da.h                        |   44 -
 arch/metag/include/asm/delay.h                     |   30 -
 arch/metag/include/asm/div64.h                     |   13 -
 arch/metag/include/asm/dma-mapping.h               |   12 -
 arch/metag/include/asm/elf.h                       |  126 --
 arch/metag/include/asm/fixmap.h                    |   69 -
 arch/metag/include/asm/ftrace.h                    |   24 -
 arch/metag/include/asm/global_lock.h               |  101 -
 arch/metag/include/asm/highmem.h                   |   62 -
 arch/metag/include/asm/hugetlb.h                   |   75 -
 arch/metag/include/asm/hwthread.h                  |   41 -
 arch/metag/include/asm/io.h                        |  170 --
 arch/metag/include/asm/irq.h                       |   38 -
 arch/metag/include/asm/irqflags.h                  |   94 -
 arch/metag/include/asm/l2cache.h                   |  259 ---
 arch/metag/include/asm/linkage.h                   |    8 -
 arch/metag/include/asm/mach/arch.h                 |   86 -
 arch/metag/include/asm/metag_isa.h                 |   81 -
 arch/metag/include/asm/metag_mem.h                 | 1109 -----------
 arch/metag/include/asm/metag_regs.h                | 1184 ------------
 arch/metag/include/asm/mman.h                      |   12 -
 arch/metag/include/asm/mmu.h                       |   78 -
 arch/metag/include/asm/mmu_context.h               |  115 --
 arch/metag/include/asm/mmzone.h                    |   43 -
 arch/metag/include/asm/module.h                    |   38 -
 arch/metag/include/asm/page.h                      |  129 --
 arch/metag/include/asm/perf_event.h                |    4 -
 arch/metag/include/asm/pgalloc.h                   |   83 -
 arch/metag/include/asm/pgtable-bits.h              |  105 -
 arch/metag/include/asm/pgtable.h                   |  270 ---
 arch/metag/include/asm/processor.h                 |  201 --
 arch/metag/include/asm/ptrace.h                    |   61 -
 arch/metag/include/asm/setup.h                     |   10 -
 arch/metag/include/asm/smp.h                       |   28 -
 arch/metag/include/asm/sparsemem.h                 |   14 -
 arch/metag/include/asm/spinlock.h                  |   19 -
 arch/metag/include/asm/spinlock_lnkget.h           |  213 ---
 arch/metag/include/asm/spinlock_lock1.h            |  165 --
 arch/metag/include/asm/spinlock_types.h            |   21 -
 arch/metag/include/asm/stacktrace.h                |   21 -
 arch/metag/include/asm/string.h                    |   14 -
 arch/metag/include/asm/switch.h                    |   21 -
 arch/metag/include/asm/syscall.h                   |  104 -
 arch/metag/include/asm/syscalls.h                  |   40 -
 arch/metag/include/asm/tbx.h                       | 1420 --------------
 arch/metag/include/asm/tcm.h                       |   31 -
 arch/metag/include/asm/thread_info.h               |  141 --
 arch/metag/include/asm/tlb.h                       |   37 -
 arch/metag/include/asm/tlbflush.h                  |   78 -
 arch/metag/include/asm/topology.h                  |   28 -
 arch/metag/include/asm/traps.h                     |   48 -
 arch/metag/include/asm/uaccess.h                   |  213 ---
 arch/metag/include/asm/unistd.h                    |   12 -
 arch/metag/include/asm/user_gateway.h              |   45 -
 arch/metag/include/uapi/asm/Kbuild                 |   31 -
 arch/metag/include/uapi/asm/byteorder.h            |    2 -
 arch/metag/include/uapi/asm/ech.h                  |   16 -
 arch/metag/include/uapi/asm/ptrace.h               |  114 --
 arch/metag/include/uapi/asm/sigcontext.h           |   32 -
 arch/metag/include/uapi/asm/siginfo.h              |   16 -
 arch/metag/include/uapi/asm/swab.h                 |   27 -
 arch/metag/include/uapi/asm/unistd.h               |   24 -
 arch/metag/kernel/.gitignore                       |    1 -
 arch/metag/kernel/Makefile                         |   40 -
 arch/metag/kernel/asm-offsets.c                    |   15 -
 arch/metag/kernel/cachepart.c                      |  132 --
 arch/metag/kernel/clock.c                          |  110 --
 arch/metag/kernel/core_reg.c                       |  118 --
 arch/metag/kernel/da.c                             |   25 -
 arch/metag/kernel/devtree.c                        |   57 -
 arch/metag/kernel/dma.c                            |  588 ------
 arch/metag/kernel/ftrace.c                         |  121 --
 arch/metag/kernel/ftrace_stub.S                    |   62 -
 arch/metag/kernel/head.S                           |   66 -
 arch/metag/kernel/irq.c                            |  293 ---
 arch/metag/kernel/kick.c                           |  110 --
 arch/metag/kernel/machines.c                       |   21 -
 arch/metag/kernel/metag_ksyms.c                    |   55 -
 arch/metag/kernel/module.c                         |  284 ---
 arch/metag/kernel/perf/Makefile                    |    3 -
 arch/metag/kernel/perf/perf_event.c                |  879 ---------
 arch/metag/kernel/perf/perf_event.h                |  106 --
 arch/metag/kernel/perf_callchain.c                 |   97 -
 arch/metag/kernel/process.c                        |  448 -----
 arch/metag/kernel/ptrace.c                         |  427 -----
 arch/metag/kernel/setup.c                          |  622 ------
 arch/metag/kernel/signal.c                         |  336 ----
 arch/metag/kernel/smp.c                            |  668 -------
 arch/metag/kernel/stacktrace.c                     |  187 --
 arch/metag/kernel/sys_metag.c                      |  181 --
 arch/metag/kernel/tbiunexp.S                       |   23 -
 arch/metag/kernel/tcm.c                            |  152 --
 arch/metag/kernel/time.c                           |   26 -
 arch/metag/kernel/topology.c                       |   78 -
 arch/metag/kernel/traps.c                          |  992 ----------
 arch/metag/kernel/user_gateway.S                   |   98 -
 arch/metag/kernel/vmlinux.lds.S                    |   74 -
 arch/metag/lib/Makefile                            |   23 -
 arch/metag/lib/ashldi3.S                           |   34 -
 arch/metag/lib/ashrdi3.S                           |   34 -
 arch/metag/lib/checksum.c                          |  167 --
 arch/metag/lib/clear_page.S                        |   18 -
 arch/metag/lib/cmpdi2.S                            |   33 -
 arch/metag/lib/copy_page.S                         |   21 -
 arch/metag/lib/delay.c                             |   57 -
 arch/metag/lib/div64.S                             |  109 --
 arch/metag/lib/divsi3.S                            |  101 -
 arch/metag/lib/ip_fast_csum.S                      |   33 -
 arch/metag/lib/lshrdi3.S                           |   34 -
 arch/metag/lib/memcpy.S                            |  186 --
 arch/metag/lib/memmove.S                           |  346 ----
 arch/metag/lib/memset.S                            |   87 -
 arch/metag/lib/modsi3.S                            |   39 -
 arch/metag/lib/muldi3.S                            |   45 -
 arch/metag/lib/ucmpdi2.S                           |   28 -
 arch/metag/lib/usercopy.c                          | 1257 ------------
 arch/metag/mm/Kconfig                              |  147 --
 arch/metag/mm/Makefile                             |   20 -
 arch/metag/mm/cache.c                              |  521 -----
 arch/metag/mm/extable.c                            |   15 -
 arch/metag/mm/fault.c                              |  247 ---
 arch/metag/mm/highmem.c                            |  122 --
 arch/metag/mm/hugetlbpage.c                        |  251 ---
 arch/metag/mm/init.c                               |  408 ----
 arch/metag/mm/ioremap.c                            |   90 -
 arch/metag/mm/l2cache.c                            |  193 --
 arch/metag/mm/maccess.c                            |   69 -
 arch/metag/mm/mmu-meta1.c                          |  157 --
 arch/metag/mm/mmu-meta2.c                          |  208 --
 arch/metag/mm/numa.c                               |   82 -
 arch/metag/oprofile/Makefile                       |   18 -
 arch/metag/oprofile/backtrace.c                    |   63 -
 arch/metag/oprofile/backtrace.h                    |    7 -
 arch/metag/oprofile/common.c                       |   66 -
 arch/metag/tbx/Makefile                            |   22 -
 arch/metag/tbx/tbicore.S                           |  136 --
 arch/metag/tbx/tbictx.S                            |  366 ----
 arch/metag/tbx/tbictxfpu.S                         |  190 --
 arch/metag/tbx/tbidefr.S                           |  175 --
 arch/metag/tbx/tbidspram.S                         |  161 --
 arch/metag/tbx/tbilogf.S                           |   48 -
 arch/metag/tbx/tbipcx.S                            |  451 -----
 arch/metag/tbx/tbiroot.S                           |   87 -
 arch/metag/tbx/tbisoft.S                           |  237 ---
 arch/metag/tbx/tbistring.c                         |  114 --
 arch/metag/tbx/tbitimer.S                          |  207 --
 drivers/clocksource/Kconfig                        |    5 -
 drivers/clocksource/Makefile                       |    1 -
 drivers/clocksource/metag_generic.c                |  161 --
 drivers/gpio/Kconfig                               |   15 -
 drivers/gpio/Makefile                              |    2 -
 drivers/gpio/gpio-tz1090-pdc.c                     |  231 ---
 drivers/gpio/gpio-tz1090.c                         |  602 ------
 drivers/i2c/busses/Kconfig                         |    2 +-
 drivers/irqchip/Makefile                           |    2 -
 drivers/irqchip/irq-metag-ext.c                    |  871 ---------
 drivers/irqchip/irq-metag.c                        |  343 ----
 drivers/media/rc/img-ir/Kconfig                    |    2 +-
 drivers/pinctrl/Kconfig                            |   12 -
 drivers/pinctrl/Makefile                           |    2 -
 drivers/pinctrl/pinctrl-tz1090-pdc.c               |  989 ----------
 drivers/pinctrl/pinctrl-tz1090.c                   | 2005 --------------------
 drivers/tty/Kconfig                                |   13 -
 drivers/tty/Makefile                               |    1 -
 drivers/tty/metag_da.c                             |  665 -------
 drivers/watchdog/Kconfig                           |    2 +-
 include/clocksource/metag_generic.h                |   21 -
 include/linux/cpuhotplug.h                         |    1 -
 include/linux/irqchip/metag-ext.h                  |   34 -
 include/linux/irqchip/metag.h                      |   25 -
 include/linux/mm.h                                 |    2 -
 include/trace/events/mmflags.h                     |    2 +-
 include/uapi/linux/elf.h                           |    3 -
 lib/Kconfig.debug                                  |    2 +-
 mm/Kconfig                                         |    7 +-
 scripts/checkstack.pl                              |    4 -
 scripts/recordmcount.c                             |   20 -
 tools/perf/perf-sys.h                              |    4 -
 266 files changed, 14 insertions(+), 31962 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090-pdc.txt
 delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090.txt
 delete mode 100644 Documentation/devicetree/bindings/metag/meta.txt
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pdc-pinctrl.txt
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pinctrl.txt
 delete mode 100644 Documentation/metag/00-INDEX
 delete mode 100644 Documentation/metag/kernel-ABI.txt
 delete mode 100644 arch/metag/Kconfig
 delete mode 100644 arch/metag/Kconfig.debug
 delete mode 100644 arch/metag/Kconfig.soc
 delete mode 100644 arch/metag/Makefile
 delete mode 100644 arch/metag/boot/.gitignore
 delete mode 100644 arch/metag/boot/Makefile
 delete mode 100644 arch/metag/boot/dts/Makefile
 delete mode 100644 arch/metag/boot/dts/skeleton.dts
 delete mode 100644 arch/metag/boot/dts/skeleton.dtsi
 delete mode 100644 arch/metag/boot/dts/tz1090.dtsi
 delete mode 100644 arch/metag/boot/dts/tz1090_generic.dts
 delete mode 100644 arch/metag/configs/meta1_defconfig
 delete mode 100644 arch/metag/configs/meta2_defconfig
 delete mode 100644 arch/metag/configs/meta2_smp_defconfig
 delete mode 100644 arch/metag/configs/tz1090_defconfig
 delete mode 100644 arch/metag/include/asm/Kbuild
 delete mode 100644 arch/metag/include/asm/atomic.h
 delete mode 100644 arch/metag/include/asm/atomic_lnkget.h
 delete mode 100644 arch/metag/include/asm/atomic_lock1.h
 delete mode 100644 arch/metag/include/asm/barrier.h
 delete mode 100644 arch/metag/include/asm/bitops.h
 delete mode 100644 arch/metag/include/asm/bug.h
 delete mode 100644 arch/metag/include/asm/cache.h
 delete mode 100644 arch/metag/include/asm/cacheflush.h
 delete mode 100644 arch/metag/include/asm/cachepart.h
 delete mode 100644 arch/metag/include/asm/checksum.h
 delete mode 100644 arch/metag/include/asm/clock.h
 delete mode 100644 arch/metag/include/asm/cmpxchg.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_irq.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_lnkget.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_lock1.h
 delete mode 100644 arch/metag/include/asm/core_reg.h
 delete mode 100644 arch/metag/include/asm/cpu.h
 delete mode 100644 arch/metag/include/asm/da.h
 delete mode 100644 arch/metag/include/asm/delay.h
 delete mode 100644 arch/metag/include/asm/div64.h
 delete mode 100644 arch/metag/include/asm/dma-mapping.h
 delete mode 100644 arch/metag/include/asm/elf.h
 delete mode 100644 arch/metag/include/asm/fixmap.h
 delete mode 100644 arch/metag/include/asm/ftrace.h
 delete mode 100644 arch/metag/include/asm/global_lock.h
 delete mode 100644 arch/metag/include/asm/highmem.h
 delete mode 100644 arch/metag/include/asm/hugetlb.h
 delete mode 100644 arch/metag/include/asm/hwthread.h
 delete mode 100644 arch/metag/include/asm/io.h
 delete mode 100644 arch/metag/include/asm/irq.h
 delete mode 100644 arch/metag/include/asm/irqflags.h
 delete mode 100644 arch/metag/include/asm/l2cache.h
 delete mode 100644 arch/metag/include/asm/linkage.h
 delete mode 100644 arch/metag/include/asm/mach/arch.h
 delete mode 100644 arch/metag/include/asm/metag_isa.h
 delete mode 100644 arch/metag/include/asm/metag_mem.h
 delete mode 100644 arch/metag/include/asm/metag_regs.h
 delete mode 100644 arch/metag/include/asm/mman.h
 delete mode 100644 arch/metag/include/asm/mmu.h
 delete mode 100644 arch/metag/include/asm/mmu_context.h
 delete mode 100644 arch/metag/include/asm/mmzone.h
 delete mode 100644 arch/metag/include/asm/module.h
 delete mode 100644 arch/metag/include/asm/page.h
 delete mode 100644 arch/metag/include/asm/perf_event.h
 delete mode 100644 arch/metag/include/asm/pgalloc.h
 delete mode 100644 arch/metag/include/asm/pgtable-bits.h
 delete mode 100644 arch/metag/include/asm/pgtable.h
 delete mode 100644 arch/metag/include/asm/processor.h
 delete mode 100644 arch/metag/include/asm/ptrace.h
 delete mode 100644 arch/metag/include/asm/setup.h
 delete mode 100644 arch/metag/include/asm/smp.h
 delete mode 100644 arch/metag/include/asm/sparsemem.h
 delete mode 100644 arch/metag/include/asm/spinlock.h
 delete mode 100644 arch/metag/include/asm/spinlock_lnkget.h
 delete mode 100644 arch/metag/include/asm/spinlock_lock1.h
 delete mode 100644 arch/metag/include/asm/spinlock_types.h
 delete mode 100644 arch/metag/include/asm/stacktrace.h
 delete mode 100644 arch/metag/include/asm/string.h
 delete mode 100644 arch/metag/include/asm/switch.h
 delete mode 100644 arch/metag/include/asm/syscall.h
 delete mode 100644 arch/metag/include/asm/syscalls.h
 delete mode 100644 arch/metag/include/asm/tbx.h
 delete mode 100644 arch/metag/include/asm/tcm.h
 delete mode 100644 arch/metag/include/asm/thread_info.h
 delete mode 100644 arch/metag/include/asm/tlb.h
 delete mode 100644 arch/metag/include/asm/tlbflush.h
 delete mode 100644 arch/metag/include/asm/topology.h
 delete mode 100644 arch/metag/include/asm/traps.h
 delete mode 100644 arch/metag/include/asm/uaccess.h
 delete mode 100644 arch/metag/include/asm/unistd.h
 delete mode 100644 arch/metag/include/asm/user_gateway.h
 delete mode 100644 arch/metag/include/uapi/asm/Kbuild
 delete mode 100644 arch/metag/include/uapi/asm/byteorder.h
 delete mode 100644 arch/metag/include/uapi/asm/ech.h
 delete mode 100644 arch/metag/include/uapi/asm/ptrace.h
 delete mode 100644 arch/metag/include/uapi/asm/sigcontext.h
 delete mode 100644 arch/metag/include/uapi/asm/siginfo.h
 delete mode 100644 arch/metag/include/uapi/asm/swab.h
 delete mode 100644 arch/metag/include/uapi/asm/unistd.h
 delete mode 100644 arch/metag/kernel/.gitignore
 delete mode 100644 arch/metag/kernel/Makefile
 delete mode 100644 arch/metag/kernel/asm-offsets.c
 delete mode 100644 arch/metag/kernel/cachepart.c
 delete mode 100644 arch/metag/kernel/clock.c
 delete mode 100644 arch/metag/kernel/core_reg.c
 delete mode 100644 arch/metag/kernel/da.c
 delete mode 100644 arch/metag/kernel/devtree.c
 delete mode 100644 arch/metag/kernel/dma.c
 delete mode 100644 arch/metag/kernel/ftrace.c
 delete mode 100644 arch/metag/kernel/ftrace_stub.S
 delete mode 100644 arch/metag/kernel/head.S
 delete mode 100644 arch/metag/kernel/irq.c
 delete mode 100644 arch/metag/kernel/kick.c
 delete mode 100644 arch/metag/kernel/machines.c
 delete mode 100644 arch/metag/kernel/metag_ksyms.c
 delete mode 100644 arch/metag/kernel/module.c
 delete mode 100644 arch/metag/kernel/perf/Makefile
 delete mode 100644 arch/metag/kernel/perf/perf_event.c
 delete mode 100644 arch/metag/kernel/perf/perf_event.h
 delete mode 100644 arch/metag/kernel/perf_callchain.c
 delete mode 100644 arch/metag/kernel/process.c
 delete mode 100644 arch/metag/kernel/ptrace.c
 delete mode 100644 arch/metag/kernel/setup.c
 delete mode 100644 arch/metag/kernel/signal.c
 delete mode 100644 arch/metag/kernel/smp.c
 delete mode 100644 arch/metag/kernel/stacktrace.c
 delete mode 100644 arch/metag/kernel/sys_metag.c
 delete mode 100644 arch/metag/kernel/tbiunexp.S
 delete mode 100644 arch/metag/kernel/tcm.c
 delete mode 100644 arch/metag/kernel/time.c
 delete mode 100644 arch/metag/kernel/topology.c
 delete mode 100644 arch/metag/kernel/traps.c
 delete mode 100644 arch/metag/kernel/user_gateway.S
 delete mode 100644 arch/metag/kernel/vmlinux.lds.S
 delete mode 100644 arch/metag/lib/Makefile
 delete mode 100644 arch/metag/lib/ashldi3.S
 delete mode 100644 arch/metag/lib/ashrdi3.S
 delete mode 100644 arch/metag/lib/checksum.c
 delete mode 100644 arch/metag/lib/clear_page.S
 delete mode 100644 arch/metag/lib/cmpdi2.S
 delete mode 100644 arch/metag/lib/copy_page.S
 delete mode 100644 arch/metag/lib/delay.c
 delete mode 100644 arch/metag/lib/div64.S
 delete mode 100644 arch/metag/lib/divsi3.S
 delete mode 100644 arch/metag/lib/ip_fast_csum.S
 delete mode 100644 arch/metag/lib/lshrdi3.S
 delete mode 100644 arch/metag/lib/memcpy.S
 delete mode 100644 arch/metag/lib/memmove.S
 delete mode 100644 arch/metag/lib/memset.S
 delete mode 100644 arch/metag/lib/modsi3.S
 delete mode 100644 arch/metag/lib/muldi3.S
 delete mode 100644 arch/metag/lib/ucmpdi2.S
 delete mode 100644 arch/metag/lib/usercopy.c
 delete mode 100644 arch/metag/mm/Kconfig
 delete mode 100644 arch/metag/mm/Makefile
 delete mode 100644 arch/metag/mm/cache.c
 delete mode 100644 arch/metag/mm/extable.c
 delete mode 100644 arch/metag/mm/fault.c
 delete mode 100644 arch/metag/mm/highmem.c
 delete mode 100644 arch/metag/mm/hugetlbpage.c
 delete mode 100644 arch/metag/mm/init.c
 delete mode 100644 arch/metag/mm/ioremap.c
 delete mode 100644 arch/metag/mm/l2cache.c
 delete mode 100644 arch/metag/mm/maccess.c
 delete mode 100644 arch/metag/mm/mmu-meta1.c
 delete mode 100644 arch/metag/mm/mmu-meta2.c
 delete mode 100644 arch/metag/mm/numa.c
 delete mode 100644 arch/metag/oprofile/Makefile
 delete mode 100644 arch/metag/oprofile/backtrace.c
 delete mode 100644 arch/metag/oprofile/backtrace.h
 delete mode 100644 arch/metag/oprofile/common.c
 delete mode 100644 arch/metag/tbx/Makefile
 delete mode 100644 arch/metag/tbx/tbicore.S
 delete mode 100644 arch/metag/tbx/tbictx.S
 delete mode 100644 arch/metag/tbx/tbictxfpu.S
 delete mode 100644 arch/metag/tbx/tbidefr.S
 delete mode 100644 arch/metag/tbx/tbidspram.S
 delete mode 100644 arch/metag/tbx/tbilogf.S
 delete mode 100644 arch/metag/tbx/tbipcx.S
 delete mode 100644 arch/metag/tbx/tbiroot.S
 delete mode 100644 arch/metag/tbx/tbisoft.S
 delete mode 100644 arch/metag/tbx/tbistring.c
 delete mode 100644 arch/metag/tbx/tbitimer.S
 delete mode 100644 drivers/clocksource/metag_generic.c
 delete mode 100644 drivers/gpio/gpio-tz1090-pdc.c
 delete mode 100644 drivers/gpio/gpio-tz1090.c
 delete mode 100644 drivers/irqchip/irq-metag-ext.c
 delete mode 100644 drivers/irqchip/irq-metag.c
 delete mode 100644 drivers/pinctrl/pinctrl-tz1090-pdc.c
 delete mode 100644 drivers/pinctrl/pinctrl-tz1090.c
 delete mode 100644 drivers/tty/metag_da.c
 delete mode 100644 include/clocksource/metag_generic.h
 delete mode 100644 include/linux/irqchip/metag-ext.h
 delete mode 100644 include/linux/irqchip/metag.h

-- 
2.13.6

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* [PATCH 04/13] Drop a bunch of metag references
  2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
@ 2018-02-21 23:38 ` James Hogan
  2018-02-22  1:52   ` Steven Rostedt
  2018-02-23 10:53   ` [PATCH v2 " James Hogan
  2018-02-22  9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 13+ messages in thread
From: James Hogan @ 2018-02-21 23:38 UTC (permalink / raw)
  To: linux-metag
  Cc: linux-kernel, James Hogan, Steven Rostedt, Ingo Molnar,
	Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, linux-mm

Now that arch/metag/ has been removed, drop a bunch of metag references
in various codes across the whole tree:
 - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
 - MT_METAG_* ELF note types.
 - METAG Kconfig dependencies (FRAME_POINTER) and ranges
   (MAX_STACK_SIZE_MB).
 - metag cases in tools (checkstack.pl, recordmcount.c, perf).

Signed-off-by: James Hogan <jhogan@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: linux-mm@kvack.org
Cc: linux-metag@vger.kernel.org
---
 include/linux/mm.h             |  2 --
 include/trace/events/mmflags.h |  2 +-
 include/uapi/linux/elf.h       |  3 ---
 lib/Kconfig.debug              |  2 +-
 mm/Kconfig                     |  7 +++----
 scripts/checkstack.pl          |  4 ----
 scripts/recordmcount.c         | 20 --------------------
 tools/perf/perf-sys.h          |  4 ----
 8 files changed, 5 insertions(+), 39 deletions(-)

diff --git a/include/linux/mm.h b/include/linux/mm.h
index ad06d42adb1a..ccac10682ce5 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
 # define VM_SAO		VM_ARCH_1	/* Strong Access Ordering (powerpc) */
 #elif defined(CONFIG_PARISC)
 # define VM_GROWSUP	VM_ARCH_1
-#elif defined(CONFIG_METAG)
-# define VM_GROWSUP	VM_ARCH_1
 #elif defined(CONFIG_IA64)
 # define VM_GROWSUP	VM_ARCH_1
 #elif !defined(CONFIG_MMU)
diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
index dbe1bb058c09..a81cffb76d89 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle,		"idle"		)
 #define __VM_ARCH_SPECIFIC_1 {VM_PAT,     "pat"           }
 #elif defined(CONFIG_PPC)
 #define __VM_ARCH_SPECIFIC_1 {VM_SAO,     "sao"           }
-#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
+#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
 #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP,	"growsup"	}
 #elif !defined(CONFIG_MMU)
 #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy"	}
diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
index 3bf73fb58045..e2535d6dcec7 100644
--- a/include/uapi/linux/elf.h
+++ b/include/uapi/linux/elf.h
@@ -420,9 +420,6 @@ typedef struct elf64_shdr {
 #define NT_ARM_HW_WATCH	0x403		/* ARM hardware watchpoint registers */
 #define NT_ARM_SYSTEM_CALL	0x404	/* ARM system call number */
 #define NT_ARM_SVE	0x405		/* ARM Scalable Vector Extension registers */
-#define NT_METAG_CBUF	0x500		/* Metag catch buffer registers */
-#define NT_METAG_RPIPE	0x501		/* Metag read pipeline state */
-#define NT_METAG_TLS	0x502		/* Metag TLS pointer */
 #define NT_ARC_V2	0x600		/* ARCv2 accumulator/extra registers */
 
 /* Note header in a PT_NOTE section */
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6088408ef26c..d1c523e408e9 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -356,7 +356,7 @@ config FRAME_POINTER
 	bool "Compile the kernel with frame pointers"
 	depends on DEBUG_KERNEL && \
 		(CRIS || M68K || FRV || UML || \
-		 SUPERH || BLACKFIN || MN10300 || METAG) || \
+		 SUPERH || BLACKFIN || MN10300) || \
 		ARCH_WANT_FRAME_POINTERS
 	default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
 	help
diff --git a/mm/Kconfig b/mm/Kconfig
index c782e8fb7235..abefa573bcd8 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
 config MAX_STACK_SIZE_MB
 	int "Maximum user stack size for 32-bit processes (MB)"
 	default 80
-	range 8 256 if METAG
 	range 8 2048
 	depends on STACK_GROWSUP && (!64BIT || COMPAT)
 	help
 	  This is the maximum stack size in Megabytes in the VM layout of 32-bit
 	  user processes when the stack grows upwards (currently only on parisc
-	  and metag arch). The stack will be located at the highest memory
-	  address minus the given value, unless the RLIMIT_STACK hard limit is
-	  changed to a smaller value in which case that is used.
+	  arch). The stack will be located at the highest memory address minus
+	  the given value, unless the RLIMIT_STACK hard limit is changed to a
+	  smaller value in which case that is used.
 
 	  A sane initial value is 80 MB.
 
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index cb993801e4b2..eeb9ac8dbcfb 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
 		#    2b6c:       4e56 fb70       linkw %fp,#-1168
 		#  1df770:       defc ffe4       addaw #-28,%sp
 		$re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
-	} elsif ($arch eq 'metag') {
-		#400026fc:       40 00 00 82     ADD       A0StP,A0StP,#0x8
-		$re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
-		$funcre = qr/^$x* <[^\$](.*)>:$/;
 	} elsif ($arch eq 'mips64') {
 		#8800402c:       67bdfff0        daddiu  sp,sp,-16
 		$re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index 16e086dcc567..8c9691c3329e 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -33,20 +33,6 @@
 #include <string.h>
 #include <unistd.h>
 
-/*
- * glibc synced up and added the metag number but didn't add the relocations.
- * Work around this in a crude manner for now.
- */
-#ifndef EM_METAG
-#define EM_METAG      174
-#endif
-#ifndef R_METAG_ADDR32
-#define R_METAG_ADDR32                   2
-#endif
-#ifndef R_METAG_NONE
-#define R_METAG_NONE                     3
-#endif
-
 #ifndef EM_AARCH64
 #define EM_AARCH64	183
 #define R_AARCH64_NONE		0
@@ -538,12 +524,6 @@ do_file(char const *const fname)
 			gpfx = '_';
 			break;
 	case EM_IA_64:	 reltype = R_IA64_IMM64;   gpfx = '_'; break;
-	case EM_METAG:	 reltype = R_METAG_ADDR32;
-			 altmcount = "_mcount_wrapper";
-			 rel_type_nop = R_METAG_NONE;
-			 /* We happen to have the same requirement as MIPS */
-			 is_fake_mcount32 = MIPS32_is_fake_mcount;
-			 break;
 	case EM_MIPS:	 /* reltype: e_class    */ gpfx = '_'; break;
 	case EM_PPC:	 reltype = R_PPC_ADDR32;   gpfx = '_'; break;
 	case EM_PPC64:	 reltype = R_PPC64_ADDR64; gpfx = '_'; break;
diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
index 36673f98d66b..3eb7a39169f6 100644
--- a/tools/perf/perf-sys.h
+++ b/tools/perf/perf-sys.h
@@ -46,10 +46,6 @@
 #define CPUINFO_PROC	{"Processor"}
 #endif
 
-#ifdef __metag__
-#define CPUINFO_PROC	{"CPU"}
-#endif
-
 #ifdef __xtensa__
 #define CPUINFO_PROC	{"core ID"}
 #endif
-- 
2.13.6

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH 04/13] Drop a bunch of metag references
  2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
@ 2018-02-22  1:52   ` Steven Rostedt
  2018-02-23 10:53   ` [PATCH v2 " James Hogan
  1 sibling, 0 replies; 13+ messages in thread
From: Steven Rostedt @ 2018-02-22  1:52 UTC (permalink / raw)
  To: James Hogan
  Cc: linux-metag, linux-kernel, Ingo Molnar, Peter Zijlstra,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, linux-mm

On Wed, 21 Feb 2018 23:38:16 +0000
James Hogan <jhogan@kernel.org> wrote:

> Now that arch/metag/ has been removed, drop a bunch of metag references
> in various codes across the whole tree:
>  - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
>  - MT_METAG_* ELF note types.
>  - METAG Kconfig dependencies (FRAME_POINTER) and ranges
>    (MAX_STACK_SIZE_MB).
>  - metag cases in tools (checkstack.pl, recordmcount.c, perf).
> 
> Signed-off-by: James Hogan <jhogan@kernel.org>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> Cc: Jiri Olsa <jolsa@redhat.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: linux-mm@kvack.org
> Cc: linux-metag@vger.kernel.org
> ---
>  include/linux/mm.h             |  2 --

>  include/trace/events/mmflags.h |  2 +-

>  include/uapi/linux/elf.h       |  3 ---
>  lib/Kconfig.debug              |  2 +-
>  mm/Kconfig                     |  7 +++----
>  scripts/checkstack.pl          |  4 ----

>  scripts/recordmcount.c         | 20 --------------------

Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>

-- Steve


>  tools/perf/perf-sys.h          |  4 ----
>  8 files changed, 5 insertions(+), 39 deletions(-)



> diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
> index dbe1bb058c09..a81cffb76d89 100644
> --- a/include/trace/events/mmflags.h
> +++ b/include/trace/events/mmflags.h
> @@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle,		"idle"		)
>  #define __VM_ARCH_SPECIFIC_1 {VM_PAT,     "pat"           }
>  #elif defined(CONFIG_PPC)
>  #define __VM_ARCH_SPECIFIC_1 {VM_SAO,     "sao"           }
> -#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
> +#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
>  #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP,	"growsup"	}
>  #elif !defined(CONFIG_MMU)
>  #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy"	}


> diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
> index 16e086dcc567..8c9691c3329e 100644
> --- a/scripts/recordmcount.c
> +++ b/scripts/recordmcount.c
> @@ -33,20 +33,6 @@
>  #include <string.h>
>  #include <unistd.h>
>  
> -/*
> - * glibc synced up and added the metag number but didn't add the relocations.
> - * Work around this in a crude manner for now.
> - */
> -#ifndef EM_METAG
> -#define EM_METAG      174
> -#endif
> -#ifndef R_METAG_ADDR32
> -#define R_METAG_ADDR32                   2
> -#endif
> -#ifndef R_METAG_NONE
> -#define R_METAG_NONE                     3
> -#endif
> -
>  #ifndef EM_AARCH64
>  #define EM_AARCH64	183
>  #define R_AARCH64_NONE		0
> @@ -538,12 +524,6 @@ do_file(char const *const fname)
>  			gpfx = '_';
>  			break;
>  	case EM_IA_64:	 reltype = R_IA64_IMM64;   gpfx = '_'; break;
> -	case EM_METAG:	 reltype = R_METAG_ADDR32;
> -			 altmcount = "_mcount_wrapper";
> -			 rel_type_nop = R_METAG_NONE;
> -			 /* We happen to have the same requirement as MIPS */
> -			 is_fake_mcount32 = MIPS32_is_fake_mcount;
> -			 break;
>  	case EM_MIPS:	 /* reltype: e_class    */ gpfx = '_'; break;
>  	case EM_PPC:	 reltype = R_PPC_ADDR32;   gpfx = '_'; break;
>  	case EM_PPC64:	 reltype = R_PPC64_ADDR64; gpfx = '_'; break;

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
  2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
@ 2018-02-22  9:26 ` Peter Zijlstra
  2018-02-22  9:48   ` James Hogan
  2018-02-23 10:26 ` Arnd Bergmann
  2018-03-07 21:24 ` [PATCH 00/13] " Arnd Bergmann
  3 siblings, 1 reply; 13+ messages in thread
From: Peter Zijlstra @ 2018-02-22  9:26 UTC (permalink / raw)
  To: James Hogan
  Cc: linux-metag, linux-kernel, Guenter Roeck, Jonathan Corbet,
	Steven Rostedt, Ingo Molnar, Arnaldo Carvalho de Melo,
	Alexander Shishkin, Jiri Olsa, Namhyung Kim, Thomas Gleixner,
	Jason Cooper, Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman,
	Jiri Slaby, Linus Walleij, Wim Van Sebroeck,
	Mauro Carvalho Chehab, Mauro Carvalho Chehab, Wolfram Sang,
	linux-doc, linux-mm, linux-gpio, linux-watchdog, linux-media,
	linux-i2c

On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.

So long, and thanks for all the fish!

Nice cleanup though, most welcome :-)

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-22  9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
@ 2018-02-22  9:48   ` James Hogan
  2018-02-22 10:42     ` Graham Whaley
  0 siblings, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-22  9:48 UTC (permalink / raw)
  To: Peter Zijlstra
  Cc: linux-metag, linux-kernel, Guenter Roeck, Jonathan Corbet,
	Steven Rostedt, Ingo Molnar, Arnaldo Carvalho de Melo,
	Alexander Shishkin, Jiri Olsa, Namhyung Kim, Thomas Gleixner,
	Jason Cooper, Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman,
	Jiri Slaby, Linus Walleij, Wim Van Sebroeck,
	Mauro Carvalho Chehab, Mauro Carvalho Chehab, Wolfram Sang,
	linux-doc, linux-mm, linux-gpio, linux-watchdog, linux-media,
	linux-i2c

[-- Attachment #1: Type: text/plain, Size: 427 bytes --]

On Thu, Feb 22, 2018 at 10:26:54AM +0100, Peter Zijlstra wrote:
> On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
> > So lets call it a day and drop the Meta architecture port from the
> > kernel. RIP Meta.
> 
> So long, and thanks for all the fish!
> 
> Nice cleanup though, most welcome :-)

I thought you might like it ;-)

> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>

Thanks
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-22  9:48   ` James Hogan
@ 2018-02-22 10:42     ` Graham Whaley
  0 siblings, 0 replies; 13+ messages in thread
From: Graham Whaley @ 2018-02-22 10:42 UTC (permalink / raw)
  To: James Hogan
  Cc: Peter Zijlstra, linux-metag, linux-kernel, Guenter Roeck,
	Jonathan Corbet, Steven Rostedt, Ingo Molnar,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
	Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
	Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
	Wolfram Sang, linux-doc, linux-mm, linux-gpio, linux-watchdog,
	linux-media, linux-i2c

On 22 February 2018 at 09:48, James Hogan <jhogan@kernel.org> wrote:
> On Thu, Feb 22, 2018 at 10:26:54AM +0100, Peter Zijlstra wrote:
>> On Wed, Feb 21, 2018 at 11:38:12PM +0000, James Hogan wrote:
>> > So lets call it a day and drop the Meta architecture port from the
>> > kernel. RIP Meta.
>>
>> So long, and thanks for all the fish!
>>
>> Nice cleanup though, most welcome :-)
>
> I thought you might like it ;-)
>
>> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
>
> Thanks
> James

RIP indeed. As I sit here listening to my META powered radio.... for
the series in general:

Acked-by: Graham Whaley <graham.whaley@gmail.com>

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
  2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
  2018-02-22  9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
@ 2018-02-23 10:26 ` Arnd Bergmann
  2018-02-23 11:02   ` James Hogan
  2018-03-07 21:24 ` [PATCH 00/13] " Arnd Bergmann
  3 siblings, 1 reply; 13+ messages in thread
From: Arnd Bergmann @ 2018-02-23 10:26 UTC (permalink / raw)
  To: James Hogan
  Cc: linux-metag, Linux Kernel Mailing List, Guenter Roeck,
	Jonathan Corbet, Steven Rostedt, Ingo Molnar, Peter Zijlstra,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
	Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
	Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
	Wolfram Sang, open list:DOCUMENTATION, Linux-MM, linux-gpio,
	linux-watchdog, Linux Media Mailing List, linux-i2c

On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> These patches remove the metag architecture and tightly dependent
> drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
> based metag toolchain we have been using is hitting compiler bugs, so
> now seems a good time to drop it altogether.
>
> Quoting from patch 1:
>
> The earliest Meta architecture port of Linux I have a record of was an
> import of a Meta port of Linux v2.4.1 in February 2004, which was worked
> on significantly over the next few years by Graham Whaley, Will Newton,
> Matt Fleming, myself and others.
>
> Eventually the port was merged into mainline in v3.9 in March 2013, not
> long after Imagination Technologies bought MIPS Technologies and shifted
> its CPU focus over to the MIPS architecture.
>
> As a result, though the port was maintained for a while, kept on life
> support for a while longer, and useful for testing a few specific
> drivers for which I don't have ready access to the equivalent MIPS
> hardware, it is now essentially dead with no users.
>
> It is also stuck using an out-of-tree toolchain based on GCC 4.2.4 which
> is no longer maintained, now struggles to build modern kernels due to
> toolchain bugs, and doesn't itself build with a modern GCC. The latest
> buildroot port is still using an old uClibc snapshot which is no longer
> served, and the latest uClibc doesn't build with GCC 4.2.4.
>
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.

Since I brought up the architecture removal independently, I could
pick this up into a git tree that also has the removal of some of the
other architectures.

I see your tree is part of linux-next, so you could also just put it
in there and send a pull request at the merge window if you prefer.

The only real reason I see for a shared git tree would be to avoid
conflicts when we touch the same Kconfig files or #ifdefs in driver,
but Meta only appears in

config FRAME_POINTER
        bool "Compile the kernel with frame pointers"
        depends on DEBUG_KERNEL && \
                (CRIS || M68K || FRV || UML || \
                 SUPERH || BLACKFIN || MN10300 || METAG) || \
                ARCH_WANT_FRAME_POINTERS

and

include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
defined(CONFIG_METAG) || defined(CONFIG_IA64)

so there is little risk.

      Arnd

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* [PATCH v2 04/13] Drop a bunch of metag references
  2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
  2018-02-22  1:52   ` Steven Rostedt
@ 2018-02-23 10:53   ` James Hogan
  2018-02-23 14:28     ` Guenter Roeck
  1 sibling, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-23 10:53 UTC (permalink / raw)
  To: linux-metag
  Cc: linux-kernel, Arnd Bergmann, Steven Rostedt, Peter Zijlstra,
	James Hogan, Ingo Molnar, Arnaldo Carvalho de Melo,
	Alexander Shishkin, Jiri Olsa, Namhyung Kim, Guenter Roeck,
	linux-mm

Now that arch/metag/ has been removed, drop a bunch of metag references
in various codes across the whole tree:
 - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
 - MT_METAG_* ELF note types.
 - METAG Kconfig dependencies (FRAME_POINTER) and ranges
   (MAX_STACK_SIZE_MB).
 - metag cases in tools (checkstack.pl, recordmcount.c, perf).

Signed-off-by: James Hogan <jhogan@kernel.org>
Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: linux-mm@kvack.org
Cc: linux-metag@vger.kernel.org
---
Changes in v2:
 - Drop CPUHP_AP_PERF_METAG_STARTING too (Guenter).
---
 include/linux/cpuhotplug.h     |  1 -
 include/linux/mm.h             |  2 --
 include/trace/events/mmflags.h |  2 +-
 include/uapi/linux/elf.h       |  3 ---
 lib/Kconfig.debug              |  2 +-
 mm/Kconfig                     |  7 +++----
 scripts/checkstack.pl          |  4 ----
 scripts/recordmcount.c         | 20 --------------------
 tools/perf/perf-sys.h          |  4 ----
 9 files changed, 5 insertions(+), 40 deletions(-)

diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
index 5172ad0daa7c..c7a950681f3a 100644
--- a/include/linux/cpuhotplug.h
+++ b/include/linux/cpuhotplug.h
@@ -108,7 +108,6 @@ enum cpuhp_state {
 	CPUHP_AP_PERF_X86_CQM_STARTING,
 	CPUHP_AP_PERF_X86_CSTATE_STARTING,
 	CPUHP_AP_PERF_XTENSA_STARTING,
-	CPUHP_AP_PERF_METAG_STARTING,
 	CPUHP_AP_MIPS_OP_LOONGSON3_STARTING,
 	CPUHP_AP_ARM_SDEI_STARTING,
 	CPUHP_AP_ARM_VFP_STARTING,
diff --git a/include/linux/mm.h b/include/linux/mm.h
index ad06d42adb1a..ccac10682ce5 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
 # define VM_SAO		VM_ARCH_1	/* Strong Access Ordering (powerpc) */
 #elif defined(CONFIG_PARISC)
 # define VM_GROWSUP	VM_ARCH_1
-#elif defined(CONFIG_METAG)
-# define VM_GROWSUP	VM_ARCH_1
 #elif defined(CONFIG_IA64)
 # define VM_GROWSUP	VM_ARCH_1
 #elif !defined(CONFIG_MMU)
diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
index dbe1bb058c09..a81cffb76d89 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle,		"idle"		)
 #define __VM_ARCH_SPECIFIC_1 {VM_PAT,     "pat"           }
 #elif defined(CONFIG_PPC)
 #define __VM_ARCH_SPECIFIC_1 {VM_SAO,     "sao"           }
-#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
+#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
 #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP,	"growsup"	}
 #elif !defined(CONFIG_MMU)
 #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy"	}
diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
index 3bf73fb58045..e2535d6dcec7 100644
--- a/include/uapi/linux/elf.h
+++ b/include/uapi/linux/elf.h
@@ -420,9 +420,6 @@ typedef struct elf64_shdr {
 #define NT_ARM_HW_WATCH	0x403		/* ARM hardware watchpoint registers */
 #define NT_ARM_SYSTEM_CALL	0x404	/* ARM system call number */
 #define NT_ARM_SVE	0x405		/* ARM Scalable Vector Extension registers */
-#define NT_METAG_CBUF	0x500		/* Metag catch buffer registers */
-#define NT_METAG_RPIPE	0x501		/* Metag read pipeline state */
-#define NT_METAG_TLS	0x502		/* Metag TLS pointer */
 #define NT_ARC_V2	0x600		/* ARCv2 accumulator/extra registers */
 
 /* Note header in a PT_NOTE section */
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6088408ef26c..d1c523e408e9 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -356,7 +356,7 @@ config FRAME_POINTER
 	bool "Compile the kernel with frame pointers"
 	depends on DEBUG_KERNEL && \
 		(CRIS || M68K || FRV || UML || \
-		 SUPERH || BLACKFIN || MN10300 || METAG) || \
+		 SUPERH || BLACKFIN || MN10300) || \
 		ARCH_WANT_FRAME_POINTERS
 	default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
 	help
diff --git a/mm/Kconfig b/mm/Kconfig
index c782e8fb7235..abefa573bcd8 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
 config MAX_STACK_SIZE_MB
 	int "Maximum user stack size for 32-bit processes (MB)"
 	default 80
-	range 8 256 if METAG
 	range 8 2048
 	depends on STACK_GROWSUP && (!64BIT || COMPAT)
 	help
 	  This is the maximum stack size in Megabytes in the VM layout of 32-bit
 	  user processes when the stack grows upwards (currently only on parisc
-	  and metag arch). The stack will be located at the highest memory
-	  address minus the given value, unless the RLIMIT_STACK hard limit is
-	  changed to a smaller value in which case that is used.
+	  arch). The stack will be located at the highest memory address minus
+	  the given value, unless the RLIMIT_STACK hard limit is changed to a
+	  smaller value in which case that is used.
 
 	  A sane initial value is 80 MB.
 
diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
index cb993801e4b2..eeb9ac8dbcfb 100755
--- a/scripts/checkstack.pl
+++ b/scripts/checkstack.pl
@@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
 		#    2b6c:       4e56 fb70       linkw %fp,#-1168
 		#  1df770:       defc ffe4       addaw #-28,%sp
 		$re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
-	} elsif ($arch eq 'metag') {
-		#400026fc:       40 00 00 82     ADD       A0StP,A0StP,#0x8
-		$re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
-		$funcre = qr/^$x* <[^\$](.*)>:$/;
 	} elsif ($arch eq 'mips64') {
 		#8800402c:       67bdfff0        daddiu  sp,sp,-16
 		$re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
index 16e086dcc567..8c9691c3329e 100644
--- a/scripts/recordmcount.c
+++ b/scripts/recordmcount.c
@@ -33,20 +33,6 @@
 #include <string.h>
 #include <unistd.h>
 
-/*
- * glibc synced up and added the metag number but didn't add the relocations.
- * Work around this in a crude manner for now.
- */
-#ifndef EM_METAG
-#define EM_METAG      174
-#endif
-#ifndef R_METAG_ADDR32
-#define R_METAG_ADDR32                   2
-#endif
-#ifndef R_METAG_NONE
-#define R_METAG_NONE                     3
-#endif
-
 #ifndef EM_AARCH64
 #define EM_AARCH64	183
 #define R_AARCH64_NONE		0
@@ -538,12 +524,6 @@ do_file(char const *const fname)
 			gpfx = '_';
 			break;
 	case EM_IA_64:	 reltype = R_IA64_IMM64;   gpfx = '_'; break;
-	case EM_METAG:	 reltype = R_METAG_ADDR32;
-			 altmcount = "_mcount_wrapper";
-			 rel_type_nop = R_METAG_NONE;
-			 /* We happen to have the same requirement as MIPS */
-			 is_fake_mcount32 = MIPS32_is_fake_mcount;
-			 break;
 	case EM_MIPS:	 /* reltype: e_class    */ gpfx = '_'; break;
 	case EM_PPC:	 reltype = R_PPC_ADDR32;   gpfx = '_'; break;
 	case EM_PPC64:	 reltype = R_PPC64_ADDR64; gpfx = '_'; break;
diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
index 36673f98d66b..3eb7a39169f6 100644
--- a/tools/perf/perf-sys.h
+++ b/tools/perf/perf-sys.h
@@ -46,10 +46,6 @@
 #define CPUINFO_PROC	{"Processor"}
 #endif
 
-#ifdef __metag__
-#define CPUINFO_PROC	{"CPU"}
-#endif
-
 #ifdef __xtensa__
 #define CPUINFO_PROC	{"core ID"}
 #endif
-- 
2.13.6

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-23 10:26 ` Arnd Bergmann
@ 2018-02-23 11:02   ` James Hogan
  2018-02-23 12:26     ` Arnd Bergmann
  0 siblings, 1 reply; 13+ messages in thread
From: James Hogan @ 2018-02-23 11:02 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: linux-metag, Linux Kernel Mailing List, Guenter Roeck,
	Jonathan Corbet, Steven Rostedt, Ingo Molnar, Peter Zijlstra,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, Thomas Gleixner, Jason Cooper, Marc Zyngier,
	Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby, Linus Walleij,
	Wim Van Sebroeck, Mauro Carvalho Chehab, Mauro Carvalho Chehab,
	Wolfram Sang, open list:DOCUMENTATION, Linux-MM, linux-gpio,
	linux-watchdog, Linux Media Mailing List, linux-i2c

[-- Attachment #1: Type: text/plain, Size: 1494 bytes --]

On Fri, Feb 23, 2018 at 11:26:58AM +0100, Arnd Bergmann wrote:
> On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> > So lets call it a day and drop the Meta architecture port from the
> > kernel. RIP Meta.
> 
> Since I brought up the architecture removal independently, I could
> pick this up into a git tree that also has the removal of some of the
> other architectures.
> 
> I see your tree is part of linux-next, so you could also just put it
> in there and send a pull request at the merge window if you prefer.
> 
> The only real reason I see for a shared git tree would be to avoid
> conflicts when we touch the same Kconfig files or #ifdefs in driver,
> but Meta only appears in
> 
> config FRAME_POINTER
>         bool "Compile the kernel with frame pointers"
>         depends on DEBUG_KERNEL && \
>                 (CRIS || M68K || FRV || UML || \
>                  SUPERH || BLACKFIN || MN10300 || METAG) || \
>                 ARCH_WANT_FRAME_POINTERS
> 
> and
> 
> include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
> defined(CONFIG_METAG) || defined(CONFIG_IA64)
> 
> so there is little risk.

I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
sent an updated version), and send you a pull request early next week so
you can take it from there. The patches can't be directly applied with
git-am anyway thanks to the -D option to make them more concise.

Sound okay?

Thanks
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-23 11:02   ` James Hogan
@ 2018-02-23 12:26     ` Arnd Bergmann
  2018-02-27 13:36       ` [GIT PULL] " James Hogan
  0 siblings, 1 reply; 13+ messages in thread
From: Arnd Bergmann @ 2018-02-23 12:26 UTC (permalink / raw)
  To: James Hogan
  Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
	Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
	Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
	Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
	Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
	Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
	Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
	linux-i2c

On Fri, Feb 23, 2018 at 12:02 PM, James Hogan <jhogan@kernel.org> wrote:
> On Fri, Feb 23, 2018 at 11:26:58AM +0100, Arnd Bergmann wrote:
>> On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
>> > So lets call it a day and drop the Meta architecture port from the
>> > kernel. RIP Meta.
>>
>> Since I brought up the architecture removal independently, I could
>> pick this up into a git tree that also has the removal of some of the
>> other architectures.
>>
>> I see your tree is part of linux-next, so you could also just put it
>> in there and send a pull request at the merge window if you prefer.
>>
>> The only real reason I see for a shared git tree would be to avoid
>> conflicts when we touch the same Kconfig files or #ifdefs in driver,
>> but Meta only appears in
>>
>> config FRAME_POINTER
>>         bool "Compile the kernel with frame pointers"
>>         depends on DEBUG_KERNEL && \
>>                 (CRIS || M68K || FRV || UML || \
>>                  SUPERH || BLACKFIN || MN10300 || METAG) || \
>>                 ARCH_WANT_FRAME_POINTERS
>>
>> and
>>
>> include/trace/events/mmflags.h:#elif defined(CONFIG_PARISC) ||
>> defined(CONFIG_METAG) || defined(CONFIG_IA64)
>>
>> so there is little risk.
>
> I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
> sent an updated version), and send you a pull request early next week so
> you can take it from there. The patches can't be directly applied with
> git-am anyway thanks to the -D option to make them more concise.
>
> Sound okay?

Yes, sounds good, thanks!

       Arnd

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* Re: [PATCH v2 04/13] Drop a bunch of metag references
  2018-02-23 10:53   ` [PATCH v2 " James Hogan
@ 2018-02-23 14:28     ` Guenter Roeck
  0 siblings, 0 replies; 13+ messages in thread
From: Guenter Roeck @ 2018-02-23 14:28 UTC (permalink / raw)
  To: James Hogan, linux-metag
  Cc: linux-kernel, Arnd Bergmann, Steven Rostedt, Peter Zijlstra,
	Ingo Molnar, Arnaldo Carvalho de Melo, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, linux-mm

On 02/23/2018 02:53 AM, James Hogan wrote:
> Now that arch/metag/ has been removed, drop a bunch of metag references
> in various codes across the whole tree:
>   - VM_GROWSUP and __VM_ARCH_PECIFIC_1.
>   - MT_METAG_* ELF note types.
>   - METAG Kconfig dependencies (FRAME_POINTER) and ranges
>     (MAX_STACK_SIZE_MB).
>   - metag cases in tools (checkstack.pl, recordmcount.c, perf).
> 
> Signed-off-by: James Hogan <jhogan@kernel.org>
> Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> Cc: Jiri Olsa <jolsa@redhat.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: linux-mm@kvack.org
> Cc: linux-metag@vger.kernel.org

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
> Changes in v2:
>   - Drop CPUHP_AP_PERF_METAG_STARTING too (Guenter).
> ---
>   include/linux/cpuhotplug.h     |  1 -
>   include/linux/mm.h             |  2 --
>   include/trace/events/mmflags.h |  2 +-
>   include/uapi/linux/elf.h       |  3 ---
>   lib/Kconfig.debug              |  2 +-
>   mm/Kconfig                     |  7 +++----
>   scripts/checkstack.pl          |  4 ----
>   scripts/recordmcount.c         | 20 --------------------
>   tools/perf/perf-sys.h          |  4 ----
>   9 files changed, 5 insertions(+), 40 deletions(-)
> 
> diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
> index 5172ad0daa7c..c7a950681f3a 100644
> --- a/include/linux/cpuhotplug.h
> +++ b/include/linux/cpuhotplug.h
> @@ -108,7 +108,6 @@ enum cpuhp_state {
>   	CPUHP_AP_PERF_X86_CQM_STARTING,
>   	CPUHP_AP_PERF_X86_CSTATE_STARTING,
>   	CPUHP_AP_PERF_XTENSA_STARTING,
> -	CPUHP_AP_PERF_METAG_STARTING,
>   	CPUHP_AP_MIPS_OP_LOONGSON3_STARTING,
>   	CPUHP_AP_ARM_SDEI_STARTING,
>   	CPUHP_AP_ARM_VFP_STARTING,
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index ad06d42adb1a..ccac10682ce5 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -241,8 +241,6 @@ extern unsigned int kobjsize(const void *objp);
>   # define VM_SAO		VM_ARCH_1	/* Strong Access Ordering (powerpc) */
>   #elif defined(CONFIG_PARISC)
>   # define VM_GROWSUP	VM_ARCH_1
> -#elif defined(CONFIG_METAG)
> -# define VM_GROWSUP	VM_ARCH_1
>   #elif defined(CONFIG_IA64)
>   # define VM_GROWSUP	VM_ARCH_1
>   #elif !defined(CONFIG_MMU)
> diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
> index dbe1bb058c09..a81cffb76d89 100644
> --- a/include/trace/events/mmflags.h
> +++ b/include/trace/events/mmflags.h
> @@ -115,7 +115,7 @@ IF_HAVE_PG_IDLE(PG_idle,		"idle"		)
>   #define __VM_ARCH_SPECIFIC_1 {VM_PAT,     "pat"           }
>   #elif defined(CONFIG_PPC)
>   #define __VM_ARCH_SPECIFIC_1 {VM_SAO,     "sao"           }
> -#elif defined(CONFIG_PARISC) || defined(CONFIG_METAG) || defined(CONFIG_IA64)
> +#elif defined(CONFIG_PARISC) || defined(CONFIG_IA64)
>   #define __VM_ARCH_SPECIFIC_1 {VM_GROWSUP,	"growsup"	}
>   #elif !defined(CONFIG_MMU)
>   #define __VM_ARCH_SPECIFIC_1 {VM_MAPPED_COPY,"mappedcopy"	}
> diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
> index 3bf73fb58045..e2535d6dcec7 100644
> --- a/include/uapi/linux/elf.h
> +++ b/include/uapi/linux/elf.h
> @@ -420,9 +420,6 @@ typedef struct elf64_shdr {
>   #define NT_ARM_HW_WATCH	0x403		/* ARM hardware watchpoint registers */
>   #define NT_ARM_SYSTEM_CALL	0x404	/* ARM system call number */
>   #define NT_ARM_SVE	0x405		/* ARM Scalable Vector Extension registers */
> -#define NT_METAG_CBUF	0x500		/* Metag catch buffer registers */
> -#define NT_METAG_RPIPE	0x501		/* Metag read pipeline state */
> -#define NT_METAG_TLS	0x502		/* Metag TLS pointer */
>   #define NT_ARC_V2	0x600		/* ARCv2 accumulator/extra registers */
>   
>   /* Note header in a PT_NOTE section */
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 6088408ef26c..d1c523e408e9 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -356,7 +356,7 @@ config FRAME_POINTER
>   	bool "Compile the kernel with frame pointers"
>   	depends on DEBUG_KERNEL && \
>   		(CRIS || M68K || FRV || UML || \
> -		 SUPERH || BLACKFIN || MN10300 || METAG) || \
> +		 SUPERH || BLACKFIN || MN10300) || \
>   		ARCH_WANT_FRAME_POINTERS
>   	default y if (DEBUG_INFO && UML) || ARCH_WANT_FRAME_POINTERS
>   	help
> diff --git a/mm/Kconfig b/mm/Kconfig
> index c782e8fb7235..abefa573bcd8 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -627,15 +627,14 @@ config GENERIC_EARLY_IOREMAP
>   config MAX_STACK_SIZE_MB
>   	int "Maximum user stack size for 32-bit processes (MB)"
>   	default 80
> -	range 8 256 if METAG
>   	range 8 2048
>   	depends on STACK_GROWSUP && (!64BIT || COMPAT)
>   	help
>   	  This is the maximum stack size in Megabytes in the VM layout of 32-bit
>   	  user processes when the stack grows upwards (currently only on parisc
> -	  and metag arch). The stack will be located at the highest memory
> -	  address minus the given value, unless the RLIMIT_STACK hard limit is
> -	  changed to a smaller value in which case that is used.
> +	  arch). The stack will be located at the highest memory address minus
> +	  the given value, unless the RLIMIT_STACK hard limit is changed to a
> +	  smaller value in which case that is used.
>   
>   	  A sane initial value is 80 MB.
>   
> diff --git a/scripts/checkstack.pl b/scripts/checkstack.pl
> index cb993801e4b2..eeb9ac8dbcfb 100755
> --- a/scripts/checkstack.pl
> +++ b/scripts/checkstack.pl
> @@ -64,10 +64,6 @@ my (@stack, $re, $dre, $x, $xs, $funcre);
>   		#    2b6c:       4e56 fb70       linkw %fp,#-1168
>   		#  1df770:       defc ffe4       addaw #-28,%sp
>   		$re = qr/.*(?:linkw %fp,|addaw )#-([0-9]{1,4})(?:,%sp)?$/o;
> -	} elsif ($arch eq 'metag') {
> -		#400026fc:       40 00 00 82     ADD       A0StP,A0StP,#0x8
> -		$re = qr/.*ADD.*A0StP,A0StP,\#(0x$x{1,8})/o;
> -		$funcre = qr/^$x* <[^\$](.*)>:$/;
>   	} elsif ($arch eq 'mips64') {
>   		#8800402c:       67bdfff0        daddiu  sp,sp,-16
>   		$re = qr/.*daddiu.*sp,sp,-(([0-9]{2}|[3-9])[0-9]{2})/o;
> diff --git a/scripts/recordmcount.c b/scripts/recordmcount.c
> index 16e086dcc567..8c9691c3329e 100644
> --- a/scripts/recordmcount.c
> +++ b/scripts/recordmcount.c
> @@ -33,20 +33,6 @@
>   #include <string.h>
>   #include <unistd.h>
>   
> -/*
> - * glibc synced up and added the metag number but didn't add the relocations.
> - * Work around this in a crude manner for now.
> - */
> -#ifndef EM_METAG
> -#define EM_METAG      174
> -#endif
> -#ifndef R_METAG_ADDR32
> -#define R_METAG_ADDR32                   2
> -#endif
> -#ifndef R_METAG_NONE
> -#define R_METAG_NONE                     3
> -#endif
> -
>   #ifndef EM_AARCH64
>   #define EM_AARCH64	183
>   #define R_AARCH64_NONE		0
> @@ -538,12 +524,6 @@ do_file(char const *const fname)
>   			gpfx = '_';
>   			break;
>   	case EM_IA_64:	 reltype = R_IA64_IMM64;   gpfx = '_'; break;
> -	case EM_METAG:	 reltype = R_METAG_ADDR32;
> -			 altmcount = "_mcount_wrapper";
> -			 rel_type_nop = R_METAG_NONE;
> -			 /* We happen to have the same requirement as MIPS */
> -			 is_fake_mcount32 = MIPS32_is_fake_mcount;
> -			 break;
>   	case EM_MIPS:	 /* reltype: e_class    */ gpfx = '_'; break;
>   	case EM_PPC:	 reltype = R_PPC_ADDR32;   gpfx = '_'; break;
>   	case EM_PPC64:	 reltype = R_PPC64_ADDR64; gpfx = '_'; break;
> diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h
> index 36673f98d66b..3eb7a39169f6 100644
> --- a/tools/perf/perf-sys.h
> +++ b/tools/perf/perf-sys.h
> @@ -46,10 +46,6 @@
>   #define CPUINFO_PROC	{"Processor"}
>   #endif
>   
> -#ifdef __metag__
> -#define CPUINFO_PROC	{"CPU"}
> -#endif
> -
>   #ifdef __xtensa__
>   #define CPUINFO_PROC	{"core ID"}
>   #endif
> 

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

* [GIT PULL] Remove metag architecture
  2018-02-23 12:26     ` Arnd Bergmann
@ 2018-02-27 13:36       ` James Hogan
  0 siblings, 0 replies; 13+ messages in thread
From: James Hogan @ 2018-02-27 13:36 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
	Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
	Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
	Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
	Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
	Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
	Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
	linux-i2c

[-- Attachment #1: Type: text/plain, Size: 29060 bytes --]

Hi Arnd,

On Fri, Feb 23, 2018 at 01:26:09PM +0100, Arnd Bergmann wrote:
> On Fri, Feb 23, 2018 at 12:02 PM, James Hogan <jhogan@kernel.org> wrote:
> > I'm happy to put v2 in linux-next now (only patch 4 has changed, I just
> > sent an updated version), and send you a pull request early next week so
> > you can take it from there. The patches can't be directly applied with
> > git-am anyway thanks to the -D option to make them more concise.
> >
> > Sound okay?
> 
> Yes, sounds good, thanks!

As discussed, here is a tagged branch to remove arch/metag and dependent
drivers. Its basically v2 with some acks added.

Cheers
James

The following changes since commit 91ab883eb21325ad80f3473633f794c78ac87f51:

  Linux 4.16-rc2 (2018-02-18 17:29:42 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag.git tags/metag_remove

for you to fetch changes up to ef9fb83815db7d7e03da9a0904b4ef352e633922:

  i2c: img-scb: Drop METAG dependency (2018-02-26 14:58:09 +0000)

----------------------------------------------------------------
Remove metag architecture

These patches remove the metag architecture and tightly dependent
drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
based metag toolchain we have been using is hitting compiler bugs, so
now seems a good time to drop it altogether.

----------------------------------------------------------------
James Hogan (13):
      metag: Remove arch/metag/
      docs: Remove metag docs
      docs: Remove remaining references to metag
      Drop a bunch of metag references
      irqchip: Remove metag irqchip drivers
      clocksource: Remove metag generic timer driver
      tty: Remove metag DA TTY and console driver
      MAINTAINERS/CREDITS: Drop METAG ARCHITECTURE
      pinctrl: Drop TZ1090 drivers
      gpio: Drop TZ1090 drivers
      watchdog: imgpdc: Drop METAG dependency
      media: img-ir: Drop METAG dependency
      i2c: img-scb: Drop METAG dependency

 CREDITS                                            |    5 +
 Documentation/00-INDEX                             |    2 -
 Documentation/admin-guide/kernel-parameters.txt    |    4 -
 Documentation/dev-tools/kmemleak.rst               |    2 +-
 .../devicetree/bindings/gpio/gpio-tz1090-pdc.txt   |   45 -
 .../devicetree/bindings/gpio/gpio-tz1090.txt       |   88 -
 Documentation/devicetree/bindings/metag/meta.txt   |   30 -
 .../bindings/pinctrl/img,tz1090-pdc-pinctrl.txt    |  127 --
 .../bindings/pinctrl/img,tz1090-pinctrl.txt        |  227 ---
 .../features/core/BPF-JIT/arch-support.txt         |    1 -
 .../core/generic-idle-thread/arch-support.txt      |    1 -
 .../features/core/jump-labels/arch-support.txt     |    1 -
 .../features/core/tracehook/arch-support.txt       |    1 -
 .../features/debug/KASAN/arch-support.txt          |    1 -
 .../debug/gcov-profile-all/arch-support.txt        |    1 -
 Documentation/features/debug/kgdb/arch-support.txt |    1 -
 .../debug/kprobes-on-ftrace/arch-support.txt       |    1 -
 .../features/debug/kprobes/arch-support.txt        |    1 -
 .../features/debug/kretprobes/arch-support.txt     |    1 -
 .../features/debug/optprobes/arch-support.txt      |    1 -
 .../features/debug/stackprotector/arch-support.txt |    1 -
 .../features/debug/uprobes/arch-support.txt        |    1 -
 .../debug/user-ret-profiler/arch-support.txt       |    1 -
 .../features/io/dma-api-debug/arch-support.txt     |    1 -
 .../features/io/dma-contiguous/arch-support.txt    |    1 -
 .../features/io/sg-chain/arch-support.txt          |    1 -
 .../features/lib/strncasecmp/arch-support.txt      |    1 -
 .../locking/cmpxchg-local/arch-support.txt         |    1 -
 .../features/locking/lockdep/arch-support.txt      |    1 -
 .../locking/queued-rwlocks/arch-support.txt        |    1 -
 .../locking/queued-spinlocks/arch-support.txt      |    1 -
 .../locking/rwsem-optimized/arch-support.txt       |    1 -
 .../features/perf/kprobes-event/arch-support.txt   |    1 -
 .../features/perf/perf-regs/arch-support.txt       |    1 -
 .../features/perf/perf-stackdump/arch-support.txt  |    1 -
 .../sched/membarrier-sync-core/arch-support.txt    |    1 -
 .../features/sched/numa-balancing/arch-support.txt |    1 -
 .../seccomp/seccomp-filter/arch-support.txt        |    1 -
 .../time/arch-tick-broadcast/arch-support.txt      |    1 -
 .../features/time/clockevents/arch-support.txt     |    1 -
 .../time/context-tracking/arch-support.txt         |    1 -
 .../features/time/irq-time-acct/arch-support.txt   |    1 -
 .../time/modern-timekeeping/arch-support.txt       |    1 -
 .../features/time/virt-cpuacct/arch-support.txt    |    1 -
 .../features/vm/ELF-ASLR/arch-support.txt          |    1 -
 .../features/vm/PG_uncached/arch-support.txt       |    1 -
 Documentation/features/vm/THP/arch-support.txt     |    1 -
 Documentation/features/vm/TLB/arch-support.txt     |    1 -
 .../features/vm/huge-vmap/arch-support.txt         |    1 -
 .../features/vm/ioremap_prot/arch-support.txt      |    1 -
 .../features/vm/numa-memblock/arch-support.txt     |    1 -
 .../features/vm/pte_special/arch-support.txt       |    1 -
 Documentation/metag/00-INDEX                       |    4 -
 Documentation/metag/kernel-ABI.txt                 |  256 ---
 MAINTAINERS                                        |   14 -
 arch/metag/Kconfig                                 |  287 ---
 arch/metag/Kconfig.debug                           |   34 -
 arch/metag/Kconfig.soc                             |   69 -
 arch/metag/Makefile                                |   89 -
 arch/metag/boot/.gitignore                         |    3 -
 arch/metag/boot/Makefile                           |   68 -
 arch/metag/boot/dts/Makefile                       |   16 -
 arch/metag/boot/dts/skeleton.dts                   |   10 -
 arch/metag/boot/dts/skeleton.dtsi                  |   15 -
 arch/metag/boot/dts/tz1090.dtsi                    |  108 --
 arch/metag/boot/dts/tz1090_generic.dts             |   10 -
 arch/metag/configs/meta1_defconfig                 |   39 -
 arch/metag/configs/meta2_defconfig                 |   40 -
 arch/metag/configs/meta2_smp_defconfig             |   41 -
 arch/metag/configs/tz1090_defconfig                |   42 -
 arch/metag/include/asm/Kbuild                      |   33 -
 arch/metag/include/asm/atomic.h                    |   49 -
 arch/metag/include/asm/atomic_lnkget.h             |  204 --
 arch/metag/include/asm/atomic_lock1.h              |  157 --
 arch/metag/include/asm/barrier.h                   |   85 -
 arch/metag/include/asm/bitops.h                    |  127 --
 arch/metag/include/asm/bug.h                       |   13 -
 arch/metag/include/asm/cache.h                     |   24 -
 arch/metag/include/asm/cacheflush.h                |  251 ---
 arch/metag/include/asm/cachepart.h                 |   43 -
 arch/metag/include/asm/checksum.h                  |   93 -
 arch/metag/include/asm/clock.h                     |   59 -
 arch/metag/include/asm/cmpxchg.h                   |   64 -
 arch/metag/include/asm/cmpxchg_irq.h               |   43 -
 arch/metag/include/asm/cmpxchg_lnkget.h            |   87 -
 arch/metag/include/asm/cmpxchg_lock1.h             |   49 -
 arch/metag/include/asm/core_reg.h                  |   36 -
 arch/metag/include/asm/cpu.h                       |   15 -
 arch/metag/include/asm/da.h                        |   44 -
 arch/metag/include/asm/delay.h                     |   30 -
 arch/metag/include/asm/div64.h                     |   13 -
 arch/metag/include/asm/dma-mapping.h               |   12 -
 arch/metag/include/asm/elf.h                       |  126 --
 arch/metag/include/asm/fixmap.h                    |   69 -
 arch/metag/include/asm/ftrace.h                    |   24 -
 arch/metag/include/asm/global_lock.h               |  101 -
 arch/metag/include/asm/highmem.h                   |   62 -
 arch/metag/include/asm/hugetlb.h                   |   75 -
 arch/metag/include/asm/hwthread.h                  |   41 -
 arch/metag/include/asm/io.h                        |  170 --
 arch/metag/include/asm/irq.h                       |   38 -
 arch/metag/include/asm/irqflags.h                  |   94 -
 arch/metag/include/asm/l2cache.h                   |  259 ---
 arch/metag/include/asm/linkage.h                   |    8 -
 arch/metag/include/asm/mach/arch.h                 |   86 -
 arch/metag/include/asm/metag_isa.h                 |   81 -
 arch/metag/include/asm/metag_mem.h                 | 1109 -----------
 arch/metag/include/asm/metag_regs.h                | 1184 ------------
 arch/metag/include/asm/mman.h                      |   12 -
 arch/metag/include/asm/mmu.h                       |   78 -
 arch/metag/include/asm/mmu_context.h               |  115 --
 arch/metag/include/asm/mmzone.h                    |   43 -
 arch/metag/include/asm/module.h                    |   38 -
 arch/metag/include/asm/page.h                      |  129 --
 arch/metag/include/asm/perf_event.h                |    4 -
 arch/metag/include/asm/pgalloc.h                   |   83 -
 arch/metag/include/asm/pgtable-bits.h              |  105 -
 arch/metag/include/asm/pgtable.h                   |  270 ---
 arch/metag/include/asm/processor.h                 |  201 --
 arch/metag/include/asm/ptrace.h                    |   61 -
 arch/metag/include/asm/setup.h                     |   10 -
 arch/metag/include/asm/smp.h                       |   28 -
 arch/metag/include/asm/sparsemem.h                 |   14 -
 arch/metag/include/asm/spinlock.h                  |   19 -
 arch/metag/include/asm/spinlock_lnkget.h           |  213 ---
 arch/metag/include/asm/spinlock_lock1.h            |  165 --
 arch/metag/include/asm/spinlock_types.h            |   21 -
 arch/metag/include/asm/stacktrace.h                |   21 -
 arch/metag/include/asm/string.h                    |   14 -
 arch/metag/include/asm/switch.h                    |   21 -
 arch/metag/include/asm/syscall.h                   |  104 -
 arch/metag/include/asm/syscalls.h                  |   40 -
 arch/metag/include/asm/tbx.h                       | 1420 --------------
 arch/metag/include/asm/tcm.h                       |   31 -
 arch/metag/include/asm/thread_info.h               |  141 --
 arch/metag/include/asm/tlb.h                       |   37 -
 arch/metag/include/asm/tlbflush.h                  |   78 -
 arch/metag/include/asm/topology.h                  |   28 -
 arch/metag/include/asm/traps.h                     |   48 -
 arch/metag/include/asm/uaccess.h                   |  213 ---
 arch/metag/include/asm/unistd.h                    |   12 -
 arch/metag/include/asm/user_gateway.h              |   45 -
 arch/metag/include/uapi/asm/Kbuild                 |   31 -
 arch/metag/include/uapi/asm/byteorder.h            |    2 -
 arch/metag/include/uapi/asm/ech.h                  |   16 -
 arch/metag/include/uapi/asm/ptrace.h               |  114 --
 arch/metag/include/uapi/asm/sigcontext.h           |   32 -
 arch/metag/include/uapi/asm/siginfo.h              |   16 -
 arch/metag/include/uapi/asm/swab.h                 |   27 -
 arch/metag/include/uapi/asm/unistd.h               |   24 -
 arch/metag/kernel/.gitignore                       |    1 -
 arch/metag/kernel/Makefile                         |   40 -
 arch/metag/kernel/asm-offsets.c                    |   15 -
 arch/metag/kernel/cachepart.c                      |  132 --
 arch/metag/kernel/clock.c                          |  110 --
 arch/metag/kernel/core_reg.c                       |  118 --
 arch/metag/kernel/da.c                             |   25 -
 arch/metag/kernel/devtree.c                        |   57 -
 arch/metag/kernel/dma.c                            |  588 ------
 arch/metag/kernel/ftrace.c                         |  121 --
 arch/metag/kernel/ftrace_stub.S                    |   62 -
 arch/metag/kernel/head.S                           |   66 -
 arch/metag/kernel/irq.c                            |  293 ---
 arch/metag/kernel/kick.c                           |  110 --
 arch/metag/kernel/machines.c                       |   21 -
 arch/metag/kernel/metag_ksyms.c                    |   55 -
 arch/metag/kernel/module.c                         |  284 ---
 arch/metag/kernel/perf/Makefile                    |    3 -
 arch/metag/kernel/perf/perf_event.c                |  879 ---------
 arch/metag/kernel/perf/perf_event.h                |  106 --
 arch/metag/kernel/perf_callchain.c                 |   97 -
 arch/metag/kernel/process.c                        |  448 -----
 arch/metag/kernel/ptrace.c                         |  427 -----
 arch/metag/kernel/setup.c                          |  622 ------
 arch/metag/kernel/signal.c                         |  336 ----
 arch/metag/kernel/smp.c                            |  668 -------
 arch/metag/kernel/stacktrace.c                     |  187 --
 arch/metag/kernel/sys_metag.c                      |  181 --
 arch/metag/kernel/tbiunexp.S                       |   23 -
 arch/metag/kernel/tcm.c                            |  152 --
 arch/metag/kernel/time.c                           |   26 -
 arch/metag/kernel/topology.c                       |   78 -
 arch/metag/kernel/traps.c                          |  992 ----------
 arch/metag/kernel/user_gateway.S                   |   98 -
 arch/metag/kernel/vmlinux.lds.S                    |   74 -
 arch/metag/lib/Makefile                            |   23 -
 arch/metag/lib/ashldi3.S                           |   34 -
 arch/metag/lib/ashrdi3.S                           |   34 -
 arch/metag/lib/checksum.c                          |  167 --
 arch/metag/lib/clear_page.S                        |   18 -
 arch/metag/lib/cmpdi2.S                            |   33 -
 arch/metag/lib/copy_page.S                         |   21 -
 arch/metag/lib/delay.c                             |   57 -
 arch/metag/lib/div64.S                             |  109 --
 arch/metag/lib/divsi3.S                            |  101 -
 arch/metag/lib/ip_fast_csum.S                      |   33 -
 arch/metag/lib/lshrdi3.S                           |   34 -
 arch/metag/lib/memcpy.S                            |  186 --
 arch/metag/lib/memmove.S                           |  346 ----
 arch/metag/lib/memset.S                            |   87 -
 arch/metag/lib/modsi3.S                            |   39 -
 arch/metag/lib/muldi3.S                            |   45 -
 arch/metag/lib/ucmpdi2.S                           |   28 -
 arch/metag/lib/usercopy.c                          | 1257 ------------
 arch/metag/mm/Kconfig                              |  147 --
 arch/metag/mm/Makefile                             |   20 -
 arch/metag/mm/cache.c                              |  521 -----
 arch/metag/mm/extable.c                            |   15 -
 arch/metag/mm/fault.c                              |  247 ---
 arch/metag/mm/highmem.c                            |  122 --
 arch/metag/mm/hugetlbpage.c                        |  251 ---
 arch/metag/mm/init.c                               |  408 ----
 arch/metag/mm/ioremap.c                            |   90 -
 arch/metag/mm/l2cache.c                            |  193 --
 arch/metag/mm/maccess.c                            |   69 -
 arch/metag/mm/mmu-meta1.c                          |  157 --
 arch/metag/mm/mmu-meta2.c                          |  208 --
 arch/metag/mm/numa.c                               |   82 -
 arch/metag/oprofile/Makefile                       |   18 -
 arch/metag/oprofile/backtrace.c                    |   63 -
 arch/metag/oprofile/backtrace.h                    |    7 -
 arch/metag/oprofile/common.c                       |   66 -
 arch/metag/tbx/Makefile                            |   22 -
 arch/metag/tbx/tbicore.S                           |  136 --
 arch/metag/tbx/tbictx.S                            |  366 ----
 arch/metag/tbx/tbictxfpu.S                         |  190 --
 arch/metag/tbx/tbidefr.S                           |  175 --
 arch/metag/tbx/tbidspram.S                         |  161 --
 arch/metag/tbx/tbilogf.S                           |   48 -
 arch/metag/tbx/tbipcx.S                            |  451 -----
 arch/metag/tbx/tbiroot.S                           |   87 -
 arch/metag/tbx/tbisoft.S                           |  237 ---
 arch/metag/tbx/tbistring.c                         |  114 --
 arch/metag/tbx/tbitimer.S                          |  207 --
 drivers/clocksource/Kconfig                        |    5 -
 drivers/clocksource/Makefile                       |    1 -
 drivers/clocksource/metag_generic.c                |  161 --
 drivers/gpio/Kconfig                               |   15 -
 drivers/gpio/Makefile                              |    2 -
 drivers/gpio/gpio-tz1090-pdc.c                     |  231 ---
 drivers/gpio/gpio-tz1090.c                         |  602 ------
 drivers/i2c/busses/Kconfig                         |    2 +-
 drivers/irqchip/Makefile                           |    2 -
 drivers/irqchip/irq-metag-ext.c                    |  871 ---------
 drivers/irqchip/irq-metag.c                        |  343 ----
 drivers/media/rc/img-ir/Kconfig                    |    2 +-
 drivers/pinctrl/Kconfig                            |   12 -
 drivers/pinctrl/Makefile                           |    2 -
 drivers/pinctrl/pinctrl-tz1090-pdc.c               |  989 ----------
 drivers/pinctrl/pinctrl-tz1090.c                   | 2005 --------------------
 drivers/tty/Kconfig                                |   13 -
 drivers/tty/Makefile                               |    1 -
 drivers/tty/metag_da.c                             |  665 -------
 drivers/watchdog/Kconfig                           |    2 +-
 include/clocksource/metag_generic.h                |   21 -
 include/linux/cpuhotplug.h                         |    2 -
 include/linux/irqchip/metag-ext.h                  |   34 -
 include/linux/irqchip/metag.h                      |   25 -
 include/linux/mm.h                                 |    2 -
 include/trace/events/mmflags.h                     |    2 +-
 include/uapi/linux/elf.h                           |    3 -
 lib/Kconfig.debug                                  |    2 +-
 mm/Kconfig                                         |    7 +-
 scripts/checkstack.pl                              |    4 -
 scripts/recordmcount.c                             |   20 -
 tools/perf/perf-sys.h                              |    4 -
 266 files changed, 14 insertions(+), 31963 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090-pdc.txt
 delete mode 100644 Documentation/devicetree/bindings/gpio/gpio-tz1090.txt
 delete mode 100644 Documentation/devicetree/bindings/metag/meta.txt
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pdc-pinctrl.txt
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/img,tz1090-pinctrl.txt
 delete mode 100644 Documentation/metag/00-INDEX
 delete mode 100644 Documentation/metag/kernel-ABI.txt
 delete mode 100644 arch/metag/Kconfig
 delete mode 100644 arch/metag/Kconfig.debug
 delete mode 100644 arch/metag/Kconfig.soc
 delete mode 100644 arch/metag/Makefile
 delete mode 100644 arch/metag/boot/.gitignore
 delete mode 100644 arch/metag/boot/Makefile
 delete mode 100644 arch/metag/boot/dts/Makefile
 delete mode 100644 arch/metag/boot/dts/skeleton.dts
 delete mode 100644 arch/metag/boot/dts/skeleton.dtsi
 delete mode 100644 arch/metag/boot/dts/tz1090.dtsi
 delete mode 100644 arch/metag/boot/dts/tz1090_generic.dts
 delete mode 100644 arch/metag/configs/meta1_defconfig
 delete mode 100644 arch/metag/configs/meta2_defconfig
 delete mode 100644 arch/metag/configs/meta2_smp_defconfig
 delete mode 100644 arch/metag/configs/tz1090_defconfig
 delete mode 100644 arch/metag/include/asm/Kbuild
 delete mode 100644 arch/metag/include/asm/atomic.h
 delete mode 100644 arch/metag/include/asm/atomic_lnkget.h
 delete mode 100644 arch/metag/include/asm/atomic_lock1.h
 delete mode 100644 arch/metag/include/asm/barrier.h
 delete mode 100644 arch/metag/include/asm/bitops.h
 delete mode 100644 arch/metag/include/asm/bug.h
 delete mode 100644 arch/metag/include/asm/cache.h
 delete mode 100644 arch/metag/include/asm/cacheflush.h
 delete mode 100644 arch/metag/include/asm/cachepart.h
 delete mode 100644 arch/metag/include/asm/checksum.h
 delete mode 100644 arch/metag/include/asm/clock.h
 delete mode 100644 arch/metag/include/asm/cmpxchg.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_irq.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_lnkget.h
 delete mode 100644 arch/metag/include/asm/cmpxchg_lock1.h
 delete mode 100644 arch/metag/include/asm/core_reg.h
 delete mode 100644 arch/metag/include/asm/cpu.h
 delete mode 100644 arch/metag/include/asm/da.h
 delete mode 100644 arch/metag/include/asm/delay.h
 delete mode 100644 arch/metag/include/asm/div64.h
 delete mode 100644 arch/metag/include/asm/dma-mapping.h
 delete mode 100644 arch/metag/include/asm/elf.h
 delete mode 100644 arch/metag/include/asm/fixmap.h
 delete mode 100644 arch/metag/include/asm/ftrace.h
 delete mode 100644 arch/metag/include/asm/global_lock.h
 delete mode 100644 arch/metag/include/asm/highmem.h
 delete mode 100644 arch/metag/include/asm/hugetlb.h
 delete mode 100644 arch/metag/include/asm/hwthread.h
 delete mode 100644 arch/metag/include/asm/io.h
 delete mode 100644 arch/metag/include/asm/irq.h
 delete mode 100644 arch/metag/include/asm/irqflags.h
 delete mode 100644 arch/metag/include/asm/l2cache.h
 delete mode 100644 arch/metag/include/asm/linkage.h
 delete mode 100644 arch/metag/include/asm/mach/arch.h
 delete mode 100644 arch/metag/include/asm/metag_isa.h
 delete mode 100644 arch/metag/include/asm/metag_mem.h
 delete mode 100644 arch/metag/include/asm/metag_regs.h
 delete mode 100644 arch/metag/include/asm/mman.h
 delete mode 100644 arch/metag/include/asm/mmu.h
 delete mode 100644 arch/metag/include/asm/mmu_context.h
 delete mode 100644 arch/metag/include/asm/mmzone.h
 delete mode 100644 arch/metag/include/asm/module.h
 delete mode 100644 arch/metag/include/asm/page.h
 delete mode 100644 arch/metag/include/asm/perf_event.h
 delete mode 100644 arch/metag/include/asm/pgalloc.h
 delete mode 100644 arch/metag/include/asm/pgtable-bits.h
 delete mode 100644 arch/metag/include/asm/pgtable.h
 delete mode 100644 arch/metag/include/asm/processor.h
 delete mode 100644 arch/metag/include/asm/ptrace.h
 delete mode 100644 arch/metag/include/asm/setup.h
 delete mode 100644 arch/metag/include/asm/smp.h
 delete mode 100644 arch/metag/include/asm/sparsemem.h
 delete mode 100644 arch/metag/include/asm/spinlock.h
 delete mode 100644 arch/metag/include/asm/spinlock_lnkget.h
 delete mode 100644 arch/metag/include/asm/spinlock_lock1.h
 delete mode 100644 arch/metag/include/asm/spinlock_types.h
 delete mode 100644 arch/metag/include/asm/stacktrace.h
 delete mode 100644 arch/metag/include/asm/string.h
 delete mode 100644 arch/metag/include/asm/switch.h
 delete mode 100644 arch/metag/include/asm/syscall.h
 delete mode 100644 arch/metag/include/asm/syscalls.h
 delete mode 100644 arch/metag/include/asm/tbx.h
 delete mode 100644 arch/metag/include/asm/tcm.h
 delete mode 100644 arch/metag/include/asm/thread_info.h
 delete mode 100644 arch/metag/include/asm/tlb.h
 delete mode 100644 arch/metag/include/asm/tlbflush.h
 delete mode 100644 arch/metag/include/asm/topology.h
 delete mode 100644 arch/metag/include/asm/traps.h
 delete mode 100644 arch/metag/include/asm/uaccess.h
 delete mode 100644 arch/metag/include/asm/unistd.h
 delete mode 100644 arch/metag/include/asm/user_gateway.h
 delete mode 100644 arch/metag/include/uapi/asm/Kbuild
 delete mode 100644 arch/metag/include/uapi/asm/byteorder.h
 delete mode 100644 arch/metag/include/uapi/asm/ech.h
 delete mode 100644 arch/metag/include/uapi/asm/ptrace.h
 delete mode 100644 arch/metag/include/uapi/asm/sigcontext.h
 delete mode 100644 arch/metag/include/uapi/asm/siginfo.h
 delete mode 100644 arch/metag/include/uapi/asm/swab.h
 delete mode 100644 arch/metag/include/uapi/asm/unistd.h
 delete mode 100644 arch/metag/kernel/.gitignore
 delete mode 100644 arch/metag/kernel/Makefile
 delete mode 100644 arch/metag/kernel/asm-offsets.c
 delete mode 100644 arch/metag/kernel/cachepart.c
 delete mode 100644 arch/metag/kernel/clock.c
 delete mode 100644 arch/metag/kernel/core_reg.c
 delete mode 100644 arch/metag/kernel/da.c
 delete mode 100644 arch/metag/kernel/devtree.c
 delete mode 100644 arch/metag/kernel/dma.c
 delete mode 100644 arch/metag/kernel/ftrace.c
 delete mode 100644 arch/metag/kernel/ftrace_stub.S
 delete mode 100644 arch/metag/kernel/head.S
 delete mode 100644 arch/metag/kernel/irq.c
 delete mode 100644 arch/metag/kernel/kick.c
 delete mode 100644 arch/metag/kernel/machines.c
 delete mode 100644 arch/metag/kernel/metag_ksyms.c
 delete mode 100644 arch/metag/kernel/module.c
 delete mode 100644 arch/metag/kernel/perf/Makefile
 delete mode 100644 arch/metag/kernel/perf/perf_event.c
 delete mode 100644 arch/metag/kernel/perf/perf_event.h
 delete mode 100644 arch/metag/kernel/perf_callchain.c
 delete mode 100644 arch/metag/kernel/process.c
 delete mode 100644 arch/metag/kernel/ptrace.c
 delete mode 100644 arch/metag/kernel/setup.c
 delete mode 100644 arch/metag/kernel/signal.c
 delete mode 100644 arch/metag/kernel/smp.c
 delete mode 100644 arch/metag/kernel/stacktrace.c
 delete mode 100644 arch/metag/kernel/sys_metag.c
 delete mode 100644 arch/metag/kernel/tbiunexp.S
 delete mode 100644 arch/metag/kernel/tcm.c
 delete mode 100644 arch/metag/kernel/time.c
 delete mode 100644 arch/metag/kernel/topology.c
 delete mode 100644 arch/metag/kernel/traps.c
 delete mode 100644 arch/metag/kernel/user_gateway.S
 delete mode 100644 arch/metag/kernel/vmlinux.lds.S
 delete mode 100644 arch/metag/lib/Makefile
 delete mode 100644 arch/metag/lib/ashldi3.S
 delete mode 100644 arch/metag/lib/ashrdi3.S
 delete mode 100644 arch/metag/lib/checksum.c
 delete mode 100644 arch/metag/lib/clear_page.S
 delete mode 100644 arch/metag/lib/cmpdi2.S
 delete mode 100644 arch/metag/lib/copy_page.S
 delete mode 100644 arch/metag/lib/delay.c
 delete mode 100644 arch/metag/lib/div64.S
 delete mode 100644 arch/metag/lib/divsi3.S
 delete mode 100644 arch/metag/lib/ip_fast_csum.S
 delete mode 100644 arch/metag/lib/lshrdi3.S
 delete mode 100644 arch/metag/lib/memcpy.S
 delete mode 100644 arch/metag/lib/memmove.S
 delete mode 100644 arch/metag/lib/memset.S
 delete mode 100644 arch/metag/lib/modsi3.S
 delete mode 100644 arch/metag/lib/muldi3.S
 delete mode 100644 arch/metag/lib/ucmpdi2.S
 delete mode 100644 arch/metag/lib/usercopy.c
 delete mode 100644 arch/metag/mm/Kconfig
 delete mode 100644 arch/metag/mm/Makefile
 delete mode 100644 arch/metag/mm/cache.c
 delete mode 100644 arch/metag/mm/extable.c
 delete mode 100644 arch/metag/mm/fault.c
 delete mode 100644 arch/metag/mm/highmem.c
 delete mode 100644 arch/metag/mm/hugetlbpage.c
 delete mode 100644 arch/metag/mm/init.c
 delete mode 100644 arch/metag/mm/ioremap.c
 delete mode 100644 arch/metag/mm/l2cache.c
 delete mode 100644 arch/metag/mm/maccess.c
 delete mode 100644 arch/metag/mm/mmu-meta1.c
 delete mode 100644 arch/metag/mm/mmu-meta2.c
 delete mode 100644 arch/metag/mm/numa.c
 delete mode 100644 arch/metag/oprofile/Makefile
 delete mode 100644 arch/metag/oprofile/backtrace.c
 delete mode 100644 arch/metag/oprofile/backtrace.h
 delete mode 100644 arch/metag/oprofile/common.c
 delete mode 100644 arch/metag/tbx/Makefile
 delete mode 100644 arch/metag/tbx/tbicore.S
 delete mode 100644 arch/metag/tbx/tbictx.S
 delete mode 100644 arch/metag/tbx/tbictxfpu.S
 delete mode 100644 arch/metag/tbx/tbidefr.S
 delete mode 100644 arch/metag/tbx/tbidspram.S
 delete mode 100644 arch/metag/tbx/tbilogf.S
 delete mode 100644 arch/metag/tbx/tbipcx.S
 delete mode 100644 arch/metag/tbx/tbiroot.S
 delete mode 100644 arch/metag/tbx/tbisoft.S
 delete mode 100644 arch/metag/tbx/tbistring.c
 delete mode 100644 arch/metag/tbx/tbitimer.S
 delete mode 100644 drivers/clocksource/metag_generic.c
 delete mode 100644 drivers/gpio/gpio-tz1090-pdc.c
 delete mode 100644 drivers/gpio/gpio-tz1090.c
 delete mode 100644 drivers/irqchip/irq-metag-ext.c
 delete mode 100644 drivers/irqchip/irq-metag.c
 delete mode 100644 drivers/pinctrl/pinctrl-tz1090-pdc.c
 delete mode 100644 drivers/pinctrl/pinctrl-tz1090.c
 delete mode 100644 drivers/tty/metag_da.c
 delete mode 100644 include/clocksource/metag_generic.h
 delete mode 100644 include/linux/irqchip/metag-ext.h
 delete mode 100644 include/linux/irqchip/metag.h

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: [PATCH 00/13] Remove metag architecture
  2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
                   ` (2 preceding siblings ...)
  2018-02-23 10:26 ` Arnd Bergmann
@ 2018-03-07 21:24 ` Arnd Bergmann
  3 siblings, 0 replies; 13+ messages in thread
From: Arnd Bergmann @ 2018-03-07 21:24 UTC (permalink / raw)
  To: James Hogan
  Cc: open list:METAG ARCHITECTURE, Linux Kernel Mailing List,
	Guenter Roeck, Jonathan Corbet, Steven Rostedt, Ingo Molnar,
	Peter Zijlstra, Arnaldo Carvalho de Melo, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, Thomas Gleixner, Jason Cooper,
	Marc Zyngier, Daniel Lezcano, Greg Kroah-Hartman, Jiri Slaby,
	Linus Walleij, Wim Van Sebroeck, Mauro Carvalho Chehab,
	Mauro Carvalho Chehab, Wolfram Sang, open list:DOCUMENTATION,
	Linux-MM, linux-gpio, linux-watchdog, Linux Media Mailing List,
	linux-i2c

On Thu, Feb 22, 2018 at 12:38 AM, James Hogan <jhogan@kernel.org> wrote:
> These patches remove the metag architecture and tightly dependent
> drivers from the kernel. With the 4.16 kernel the ancient gcc 4.2.4
> based metag toolchain we have been using is hitting compiler bugs, so
> now seems a good time to drop it altogether.
>
> Quoting from patch 1:
>
> The earliest Meta architecture port of Linux I have a record of was an
> import of a Meta port of Linux v2.4.1 in February 2004, which was worked
> on significantly over the next few years by Graham Whaley, Will Newton,
> Matt Fleming, myself and others.
>
> Eventually the port was merged into mainline in v3.9 in March 2013, not
> long after Imagination Technologies bought MIPS Technologies and shifted
> its CPU focus over to the MIPS architecture.
>
> As a result, though the port was maintained for a while, kept on life
> support for a while longer, and useful for testing a few specific
> drivers for which I don't have ready access to the equivalent MIPS
> hardware, it is now essentially dead with no users.
>
> It is also stuck using an out-of-tree toolchain based on GCC 4.2.4 which
> is no longer maintained, now struggles to build modern kernels due to
> toolchain bugs, and doesn't itself build with a modern GCC. The latest
> buildroot port is still using an old uClibc snapshot which is no longer
> served, and the latest uClibc doesn't build with GCC 4.2.4.
>
> So lets call it a day and drop the Meta architecture port from the
> kernel. RIP Meta.

I've pulled it into my asm-generic tree now, which is also part of linux-next,
and followed up with patches removing frv, m32r, score, unicore32
and blackfin. I have not removed the device drivers yet, but I'm working
on that.

       Arnd

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

end of thread, other threads:[~2018-03-07 21:24 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-21 23:38 [PATCH 00/13] Remove metag architecture James Hogan
2018-02-21 23:38 ` [PATCH 04/13] Drop a bunch of metag references James Hogan
2018-02-22  1:52   ` Steven Rostedt
2018-02-23 10:53   ` [PATCH v2 " James Hogan
2018-02-23 14:28     ` Guenter Roeck
2018-02-22  9:26 ` [PATCH 00/13] Remove metag architecture Peter Zijlstra
2018-02-22  9:48   ` James Hogan
2018-02-22 10:42     ` Graham Whaley
2018-02-23 10:26 ` Arnd Bergmann
2018-02-23 11:02   ` James Hogan
2018-02-23 12:26     ` Arnd Bergmann
2018-02-27 13:36       ` [GIT PULL] " James Hogan
2018-03-07 21:24 ` [PATCH 00/13] " Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).