[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdUZR9A+nCYL_uUOJt48FQnJTJ9eMwWUuV-Z0UWJZ8SaSA@mail.gmail.com>
Date: Mon, 20 Apr 2020 16:40:02 +0200
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Arnd Bergmann <arnd@...db.de>
Cc: Linux-sh list <linux-sh@...r.kernel.org>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>,
Rich Felker <dalias@...c.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Al Viro <viro@...iv.linux.org.uk>,
Magnus Damm <magnus.damm@...il.com>
Subject: Re: [PATCH 1/2] sh: remove sh5 support
Hi Arnd,
On Mon, Apr 20, 2020 at 2:40 PM Arnd Bergmann <arnd@...db.de> wrote:
> sh5 never became a product and has probably never really worked.
>
> Remove it by recursively deleting all associated Kconfig options
> and all corresponding files.
Thanks a lot!
> For review purposes, this leaves out the files that can now be
> removed, in particular
>
> arch/sh/drivers/pci/*-sh5.c
> arch/sh/include/asm/*_64.h
> arch/sh/include/uapi/asm/*_64.h
> arch/sh/include/cpu-sh5/*
> arch/sh/kernel/cpu/sh5/*
> arch/sh/lib64/*
> arch/sh/mm/*-sh5.c
>
> Signed-off-by: Arnd Bergmann <arnd@...db.de>
Reviewed-by: Geert Uytterhoeven <geert+renesas@...der.be>
A few nits below...
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -62,7 +62,7 @@ config SUPERH
> <http://www.linux-sh.org/>.
>
> config SUPERH32
Why keep the SUPERH32 symbol?
Because you forgot to clean a few files?
arch/sh/include/asm/bl_bit.h:#ifdef CONFIG_SUPERH32
arch/sh/include/asm/cache_insns.h:#ifdef CONFIG_SUPERH32
arch/sh/include/asm/checksum.h:#ifdef CONFIG_SUPERH32
> - def_bool "$(ARCH)" = "sh"
> + def_bool y
> select ARCH_32BIT_OFF_T
> select GUP_GET_PTE_LOW_HIGH if X2TLB
> select HAVE_KPROBES
> --- a/arch/sh/include/asm/syscalls.h
> +++ b/arch/sh/include/asm/syscalls.h
> @@ -2,8 +2,6 @@
> #ifndef __ASM_SH_SYSCALLS_H
> #define __ASM_SH_SYSCALLS_H
>
> -#ifdef __KERNEL__
Unrelated change, but I guess it doesn't hurt ;-)
> -
> asmlinkage int old_mmap(unsigned long addr, unsigned long len,
> unsigned long prot, unsigned long flags,
> int fd, unsigned long off);
> @@ -11,11 +9,6 @@ asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,
> unsigned long prot, unsigned long flags,
> unsigned long fd, unsigned long pgoff);
>
> -#ifdef CONFIG_SUPERH32
> -# include <asm/syscalls_32.h>
> -#else
> -# include <asm/syscalls_64.h>
> -#endif
> +#include <asm/syscalls_32.h>
>
> -#endif /* __KERNEL__ */
> #endif /* __ASM_SH_SYSCALLS_H */
> --- a/arch/sh/include/asm/vmlinux.lds.h
> +++ b/arch/sh/include/asm/vmlinux.lds.h
> @@ -15,12 +15,6 @@
> #define DWARF_EH_FRAME
> #endif
>
> -#ifdef CONFIG_SUPERH64
> -#define EXTRA_TEXT \
> - *(.text64) \
> - *(.text..SHmedia32)
> -#else
> #define EXTRA_TEXT
> -#endif
You might remove the empty definition, too, as you removed the sole user...
> --- a/arch/sh/kernel/vmlinux.lds.S
> +++ b/arch/sh/kernel/vmlinux.lds.S
> @@ -28,14 +21,13 @@ SECTIONS
>
> _text = .; /* Text and read-only data */
>
> - .empty_zero_page : AT(ADDR(.empty_zero_page) - LOAD_OFFSET) {
> + .empty_zero_page : AT(ADDR(.empty_zero_page)) {
> *(.empty_zero_page)
> } = 0
>
> - .text : AT(ADDR(.text) - LOAD_OFFSET) {
> + .text : AT(ADDR(.text)) {
> HEAD_TEXT
> TEXT_TEXT
> - EXTRA_TEXT
... here.
> SCHED_TEXT
> CPUIDLE_TEXT
> LOCK_TEXT
I think at least some of the following should be cleant, too:
arch/sh/include/asm/elf.h:#ifdef __SH5__
arch/sh/include/uapi/asm/posix_types.h:# ifdef __SH5__
arch/sh/include/uapi/asm/swab.h:#ifdef __SH5__
arch/sh/include/uapi/asm/swab.h:#ifdef __SH5__
arch/sh/include/uapi/asm/unistd.h:# ifdef __SH5__
tools/arch/sh/include/asm/barrier.h:#if defined(__SH4A__) || defined(__SH5__)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists