All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rich Felker <dalias@libc.org>
To: Rob Landley <rob@landley.net>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	linux-sh@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [J-core] [PATCH v5 00/22] sh: LANDISK and R2Dplus convert to device tree
Date: Mon, 07 May 2018 15:52:26 +0000	[thread overview]
Message-ID: <20180507155226.GI1392@brightrain.aerifal.cx> (raw)
In-Reply-To: <775bc754-0181-6a13-d625-825bf601eb77@landley.net>

On Mon, May 07, 2018 at 10:13:32AM -0500, Rob Landley wrote:
> 
> 
> On 05/07/2018 09:43 AM, Rich Felker wrote:
> > On Mon, May 07, 2018 at 08:40:35AM -0500, Rob Landley wrote:
> >> On 05/07/2018 06:00 AM, John Paul Adrian Glaubitz wrote:
> >>> I have been able to boot my own kernel on my USL-5P device, but
> >>> I could never get it to detect the IDE controller. Do I need
> >>> an additional patch for that?
> >>
> >> On a related note, is there a list of boards anywhere? I'm working on a 7760
> >> system at $DAYJOB, Rich has a landisk which according to
> >> https://www.openbsd.org/landisk.html is an SH7751R, and Sato-san says that
> >> QEMU's -r2d emulates that too? ("RTS7751R2Dplus is QEMU-SH4 target. So easy
> >> trying.")
> >>
> >> What other boards do we need to covert to device tree? arch/sh/boards has 15 C
> >> files and 19 subdirectories, but I dunno the status of any of them...
> > 
> > I think asking "what we need to convert" is at least slightly
> > mis-framed. Once the basics for device tree support are in place
> > (basically patches 06-09), which boards are supported by device tree
> > is mostly a matter of (1) whether the hardware drivers you want to use
> > have bindings and use modern kernel interfaces, and (2) someone
> > writing the dts files.
> 
> (3) being able to test the result on real hardware.
> 
> We can _add_ device tree support without that, but can we remove the old board
> files without it?

As far as what Linus told me when I joined as maintainer, we can
remove whatever we like. But I don't want to be user-hostile.

OTOH I don't think there are SH users keeping up with bleeding-edge
kernels, and I don't think distros (Debian?) are shipping kernels
anyway since the kernel is currently highly board-specific. So the
only users who would be affected by removal are ones building their
own latest kernels, and it seems plausible they'd be happy with doing
a little testing to provide feedback to get things working with DT if
they don't work out of the box.

> > I don't mind holding off a little bit on removal of the legacy board
> > file support if it's hard to get enough hardware working right away
> > with device tree, but I do want to move towards getting rid of it as
> > soon as we can, since it's a large volume of code cutting into my
> > ability to have a good maintainer-level understanding of the arch/sh
> > tree and has a lot of crufty, unmaintained parallel infrastructure
> > duplicating stuff that can be done in cleaner and more modern ways
> > (see the threads on early platform device stuff, rtc drivers, etc.).
> 
> The process may include a deprecation of hardware nobody has anymore, with call
> for testers, for a year or so before deleting stuff. (And then the old stuff's
> in git if somebody finds a board and wants to fish it out.)
> 
> Also, I'd really like QEMU support to act as a first class board. At least 256
> megs of ram (so you can do native compiles on it),

Unfortunately the r2d has some hardware mapped just above 64M
physical, so it's not easy to extend its memory size. I think device
tree will solve this by letting us pass multiple physical ranges that
can be used as ram, which I don't know how to do with the old
kconfig-based memory base/size.

Of course there's no limit (except the usual 2G one) on virtual
memory, so another solution is just adding large swap. I think with a
virtio block device it would be fast.

> serial support that works
> (enabling the FIFO broke it because they don't implement the '15 bits of silence
> triggers a flush timer' part, so data gets stranded in the buffer until enough
> comes in to fill it the rest of the way which is a pain to type at when it's a
> serial console), multiple hard drives, and so on.

Let's look at how the kernel detects the buffer capability. It might
be a one-line fix on the qemu side, telling it to claim to emulate an
older model, and it's probably easy to add a kernel cmdline option to
work around it too.

> I'd be fine with virtio but there's no virtio devices on that target I've
> noticed yet, although maybe I just haven't figured out how to enable it...

I'm running qemu-sh4-system with -M r2d and virtio 9p & network,
rootfs on 9p. If you want to try reproducing my setup I can run
through my .config and command line options with you and see if we can
get something in suitable form for writeup.

Rich

WARNING: multiple messages have this Message-ID (diff)
From: Rich Felker <dalias@libc.org>
To: Rob Landley <rob@landley.net>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	linux-sh@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [J-core] [PATCH v5 00/22] sh: LANDISK and R2Dplus convert to device tree
Date: Mon, 7 May 2018 11:52:26 -0400	[thread overview]
Message-ID: <20180507155226.GI1392@brightrain.aerifal.cx> (raw)
In-Reply-To: <775bc754-0181-6a13-d625-825bf601eb77@landley.net>

On Mon, May 07, 2018 at 10:13:32AM -0500, Rob Landley wrote:
> 
> 
> On 05/07/2018 09:43 AM, Rich Felker wrote:
> > On Mon, May 07, 2018 at 08:40:35AM -0500, Rob Landley wrote:
> >> On 05/07/2018 06:00 AM, John Paul Adrian Glaubitz wrote:
> >>> I have been able to boot my own kernel on my USL-5P device, but
> >>> I could never get it to detect the IDE controller. Do I need
> >>> an additional patch for that?
> >>
> >> On a related note, is there a list of boards anywhere? I'm working on a 7760
> >> system at $DAYJOB, Rich has a landisk which according to
> >> https://www.openbsd.org/landisk.html is an SH7751R, and Sato-san says that
> >> QEMU's -r2d emulates that too? ("RTS7751R2Dplus is QEMU-SH4 target. So easy
> >> trying.")
> >>
> >> What other boards do we need to covert to device tree? arch/sh/boards has 15 C
> >> files and 19 subdirectories, but I dunno the status of any of them...
> > 
> > I think asking "what we need to convert" is at least slightly
> > mis-framed. Once the basics for device tree support are in place
> > (basically patches 06-09), which boards are supported by device tree
> > is mostly a matter of (1) whether the hardware drivers you want to use
> > have bindings and use modern kernel interfaces, and (2) someone
> > writing the dts files.
> 
> (3) being able to test the result on real hardware.
> 
> We can _add_ device tree support without that, but can we remove the old board
> files without it?

As far as what Linus told me when I joined as maintainer, we can
remove whatever we like. But I don't want to be user-hostile.

OTOH I don't think there are SH users keeping up with bleeding-edge
kernels, and I don't think distros (Debian?) are shipping kernels
anyway since the kernel is currently highly board-specific. So the
only users who would be affected by removal are ones building their
own latest kernels, and it seems plausible they'd be happy with doing
a little testing to provide feedback to get things working with DT if
they don't work out of the box.

> > I don't mind holding off a little bit on removal of the legacy board
> > file support if it's hard to get enough hardware working right away
> > with device tree, but I do want to move towards getting rid of it as
> > soon as we can, since it's a large volume of code cutting into my
> > ability to have a good maintainer-level understanding of the arch/sh
> > tree and has a lot of crufty, unmaintained parallel infrastructure
> > duplicating stuff that can be done in cleaner and more modern ways
> > (see the threads on early platform device stuff, rtc drivers, etc.).
> 
> The process may include a deprecation of hardware nobody has anymore, with call
> for testers, for a year or so before deleting stuff. (And then the old stuff's
> in git if somebody finds a board and wants to fish it out.)
> 
> Also, I'd really like QEMU support to act as a first class board. At least 256
> megs of ram (so you can do native compiles on it),

Unfortunately the r2d has some hardware mapped just above 64M
physical, so it's not easy to extend its memory size. I think device
tree will solve this by letting us pass multiple physical ranges that
can be used as ram, which I don't know how to do with the old
kconfig-based memory base/size.

Of course there's no limit (except the usual 2G one) on virtual
memory, so another solution is just adding large swap. I think with a
virtio block device it would be fast.

> serial support that works
> (enabling the FIFO broke it because they don't implement the '15 bits of silence
> triggers a flush timer' part, so data gets stranded in the buffer until enough
> comes in to fill it the rest of the way which is a pain to type at when it's a
> serial console), multiple hard drives, and so on.

Let's look at how the kernel detects the buffer capability. It might
be a one-line fix on the qemu side, telling it to claim to emulate an
older model, and it's probably easy to add a kernel cmdline option to
work around it too.

> I'd be fine with virtio but there's no virtio devices on that target I've
> noticed yet, although maybe I just haven't figured out how to enable it...

I'm running qemu-sh4-system with -M r2d and virtio 9p & network,
rootfs on 9p. If you want to try reproducing my setup I can run
through my .config and command line options with you and see if we can
get something in suitable form for writeup.

Rich

  reply	other threads:[~2018-05-07 15:52 UTC|newest]

Thread overview: 138+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-03 16:46 [PATCH v5 00/22] sh: LANDISK and R2Dplus convert to device tree Yoshinori Sato
2016-07-03 16:46 ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 01/22] sh: Add sh-specific early_init_dt_reserve_memory_arch Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-04  2:03   ` Rich Felker
2016-07-04  2:03     ` Rich Felker
2016-07-06 13:53     ` Yoshinori Sato
2016-07-06 13:53       ` Yoshinori Sato
2016-07-06 14:50       ` Rich Felker
2016-07-06 14:50         ` Rich Felker
2016-07-03 16:46 ` [PATCH v5 02/22] sh: More early unflatten device tree Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 03/22] sh: set preset_lpj Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 04/22] sh: Use P1SEGADDR Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-04  1:48   ` Rich Felker
2016-07-04  1:48     ` Rich Felker
2016-07-06 14:11     ` Yoshinori Sato
2016-07-06 14:11       ` Yoshinori Sato
2016-07-06 14:53       ` Rich Felker
2016-07-06 14:53         ` Rich Felker
2016-07-03 16:46 ` [PATCH v5 05/22] sh: command line passing chosen/bootargs in devicetree Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 06/22] sh: FDT address save before bank change Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 07/22] sh: Passing FDT address on zImage Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 08/22] sh: Disable board specific code on device tree mode Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 09/22] sh: Use GENERIC_IOMAP " Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 10/22] sh: Add board specific initialize of of-generic Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-04  1:35   ` Rich Felker
2016-07-04  1:35     ` Rich Felker
2016-07-06 14:27     ` Yoshinori Sato
2016-07-06 14:27       ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 11/22] sh: SH7750/51 CPG Driver Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
     [not found] ` <1467564402-2649-1-git-send-email-ysato-Rn4VEauK+AKRv+LV9MX5uooqe+aC9MnS@public.gmane.org>
2016-07-03 16:46   ` [PATCH v6 12/22] sh: Add PCI host bridge driver for SH7751 Yoshinori Sato
2016-07-03 16:46     ` Yoshinori Sato
2016-07-03 16:46     ` Yoshinori Sato
2016-07-05 15:53     ` Rob Herring
2016-07-05 15:53       ` Rob Herring
2016-07-06 16:19       ` Yoshinori Sato
2016-07-06 16:19         ` Yoshinori Sato
     [not found]     ` <1467564402-2649-13-git-send-email-ysato-Rn4VEauK+AKRv+LV9MX5uooqe+aC9MnS@public.gmane.org>
2016-07-22 22:59       ` Bjorn Helgaas
2016-07-22 22:59         ` Bjorn Helgaas
2016-07-22 22:59         ` Bjorn Helgaas
2016-07-03 16:46   ` [PATCH v5 13/22] sh: irqchip: SH7751 IRQCHIP Driver Yoshinori Sato
2016-07-03 16:46     ` Yoshinori Sato
2016-07-03 16:46     ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 14/22] sh: SH7751 core dtsi Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 15/22] sh: Move common PCI stuff to arch/sh/kernel Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-04  1:55   ` Rich Felker
2016-07-04  1:55     ` Rich Felker
2016-07-06 16:17     ` Yoshinori Sato
2016-07-06 16:17       ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 16/22] pci: pci_config_window move to linux/pci.h Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 17/22] pci: PCI_HOST_GENERIC enable for SH Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 18/22] sh: Add separate DTB build rule Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 19/22] sh: IO-DATA HDL-U (a.k.a landisk) IRQCHIP driver Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-11 14:02   ` Rob Herring
2016-07-11 14:02     ` Rob Herring
2016-07-03 16:46 ` [PATCH v5 20/22] sh: IO-DATA HDL-U (a.k.a landisk) DeviceTree Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 19:00   ` Sergei Shtylyov
2016-07-03 19:00     ` Sergei Shtylyov
2016-07-06 16:18     ` Yoshinori Sato
2016-07-06 16:18       ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 21/22] sh: Renesas RTS7751R2Dplus (a.k.a R2Dplus) IRQCHIP Driver Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2016-07-03 16:46 ` [PATCH v5 22/22] sh: Renesas RTS7751R2Dplus (a,k.a R2Dplus) DeviceTree Yoshinori Sato
2016-07-03 16:46   ` Yoshinori Sato
2017-11-17 10:37 ` [PATCH v5 00/22] sh: LANDISK and R2Dplus convert to device tree John Paul Adrian Glaubitz
2017-11-17 10:37   ` John Paul Adrian Glaubitz
2017-11-17 17:39   ` [J-core] " Rob Landley
2017-11-17 17:39     ` Rob Landley
2017-11-17 17:49     ` John Paul Adrian Glaubitz
2017-11-17 17:49       ` John Paul Adrian Glaubitz
2017-11-17 19:17       ` Rich Felker
2017-11-17 19:17         ` Rich Felker
2017-11-17 19:54         ` John Paul Adrian Glaubitz
2018-01-05 21:28           ` Rich Felker
2018-01-05 21:28             ` Rich Felker
2018-01-05 21:47             ` John Paul Adrian Glaubitz
2018-01-05 21:47               ` John Paul Adrian Glaubitz
2018-01-05 22:00               ` Rich Felker
2018-01-05 22:00                 ` Rich Felker
2018-01-05 22:10                 ` John Paul Adrian Glaubitz
2018-01-05 22:10                   ` John Paul Adrian Glaubitz
2018-05-03  1:37             ` Rich Felker
2018-05-03  1:37               ` Rich Felker
2018-05-03  2:33               ` Rich Felker
2018-05-03  2:33                 ` Rich Felker
2018-05-03 10:07                 ` John Paul Adrian Glaubitz
2018-05-03 10:07                   ` John Paul Adrian Glaubitz
2018-05-03 15:41                   ` Rich Felker
2018-05-03 15:41                     ` Rich Felker
2018-05-07  1:40                   ` Yoshinori Sato
2018-05-07  1:40                     ` Yoshinori Sato
2018-05-07 11:00                     ` John Paul Adrian Glaubitz
2018-05-07 11:00                       ` John Paul Adrian Glaubitz
2018-05-07 13:40                       ` Rob Landley
2018-05-07 13:40                         ` Rob Landley
2018-05-07 13:50                         ` John Paul Adrian Glaubitz
2018-05-07 13:50                           ` John Paul Adrian Glaubitz
2018-05-07 14:05                           ` Geert Uytterhoeven
2018-05-07 14:05                             ` Geert Uytterhoeven
2018-05-07 14:43                         ` Rich Felker
2018-05-07 14:43                           ` Rich Felker
2018-05-07 15:13                           ` Rob Landley
2018-05-07 15:13                             ` Rob Landley
2018-05-07 15:52                             ` Rich Felker [this message]
2018-05-07 15:52                               ` Rich Felker
2018-05-07 14:45                       ` Rich Felker
2018-05-07 14:45                         ` Rich Felker
2018-05-07 15:28                         ` Rob Landley
2018-05-07 15:28                           ` Rob Landley
2018-05-07 15:55                           ` Rich Felker
2018-05-07 15:55                             ` Rich Felker
2018-05-07 20:01                             ` Rob Landley
2018-05-07 20:01                               ` Rob Landley
2018-05-08 12:05                       ` Yoshinori Sato
2018-05-08 12:05                         ` Yoshinori Sato
2018-05-15  1:41                     ` Rich Felker
2018-05-15  1:41                       ` Rich Felker
2018-05-16  6:42                       ` Yoshinori Sato
2018-05-16  6:42                         ` Yoshinori Sato
2018-05-18  7:51                         ` John Paul Adrian Glaubitz
2018-05-18  7:51                           ` John Paul Adrian Glaubitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180507155226.GI1392@brightrain.aerifal.cx \
    --to=dalias@libc.org \
    --cc=glaubitz@physik.fu-berlin.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=rob@landley.net \
    --cc=ysato@users.sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.