All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alistair Francis <alistair23@gmail.com>
To: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>,
	Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <kernel@pengutronix.de>,
	dl-linux-imx <linux-imx@nxp.com>,
	b.zolnierkie@samsung.com,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Alistair Francis <alistair@alistair23.me>,
	Sam Ravnborg <sam@ravnborg.org>
Subject: Re: Revert "video: fbdev: mxsfb: Remove driver"
Date: Mon, 16 Aug 2021 17:34:17 +1000	[thread overview]
Message-ID: <CAKmqyKOsUcta1cXxamJZnf01G9beCZrDKia068HR+J0AadgNiA@mail.gmail.com> (raw)
In-Reply-To: <d983217b-e117-361c-0306-b131695bb93f@denx.de>

On Sun, Aug 15, 2021 at 10:31 PM Marek Vasut <marex@denx.de> wrote:
>
> On 8/15/21 2:16 PM, Alistair Francis wrote:
> > Hello,
> >
> > Commit f225f1393f034 "video: fbdev: mxsfb: Remove driver" removed the
> > mxsfb fbdev driver.
> >
> > I am now working on getting mainline Linux running on the reMarkable 2
> > eInk reader [1]. Unfortunately the rM2 doesn't use the standard EPD
> > controller on the i.MX SoC, but instead uses the LCD controller.
> >
> > eInk panels are complex to control and require writing temperature
> > dependent waveforms. As these waveforms are proprietary [2] the rM
> > team runs closed source software called SWTCON in userspace to control
> > the panel [3].
> >
> > This closed source software expects the fbdev mxsfb driver and it
> > doesn't work with the DRM mxsfb driver (at least not that I can get it
> > to).
> >
> > The NXP fork of Linux also re-adds the fbdev driver [4], so they also
> > see some uses for it.
> >
> > I was wondering if the community would be open to re-adding the fbdev
> > mxsfb driver to mainline? It could be re-added with a different
> > dt-binding so that it is not used by default and only enabled for
> > boards when required (like for the rM2).
> >
> > 1: https://remarkable.com/store/remarkable-2
> > 2: https://goodereader.com/blog/e-paper/e-ink-waveforms-are-a-closely-guarded-secret
> > 3: https://remarkablewiki.com/tech/rm2_framebuffer
> > 4: https://source.codeaurora.org/external/imx/linux-imx/log/drivers/video/fbdev/mxsfb.c?h=lf-5.10.35-2.0.0
>
> +CC Sam.
>
> What sort of special thing does your proprietary userspace do that
> cannot be added to the DRM driver or the fbdev emulation (if needed) ?

It's hard to tell. When using the DRM driver I get cryptic errors
about the frame buffer not being available. It's difficult to know
what is going on as I don't have access to any of the source. I
suspect the userspace code could be updated to use the DRM driver, but
we would need the reMarkable devs to do that.

There is some effort to re-implement the proprietary user space swtcon
(https://github.com/timower/rM2-stuff#swtcon), but it seems to have
stalled. It wouldn't be impossible to get swtcon to work with the DRM
driver, but it would require a very large amount of reverse
engineering, that probably will never happen.

I wanted to see what the thoughts were on re-adding the fbdev mxsfb
driver. The commit message just says that because there is a DRM
driver we no longer need the fbdev one, but here is a case for the
fbdev driver. I was thinking that continuing to support the fbdev
mxsfb driver wouldn't be too much of a maintenance burden (but that's
obviously up to you). The NXP tree also seems to think the fbdev
driver is worth keeping around.

Alistair

  reply	other threads:[~2021-08-16  7:34 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-15 12:16 Revert "video: fbdev: mxsfb: Remove driver" Alistair Francis
2021-08-15 12:31 ` Marek Vasut
2021-08-16  7:34   ` Alistair Francis [this message]
2021-08-16  7:55     ` Marek Vasut
2021-08-17  9:08       ` Alistair Francis
2021-08-17 10:03         ` Marek Vasut
2021-08-17 12:16           ` Alistair Francis
     [not found]             ` <YR1R7/nIUIN3LA7t@ravnborg.org>
2021-08-19  8:16               ` Alistair Francis
     [not found]             ` <YR1Th65KKRS4D/6+@ravnborg.org>
2021-08-19  9:10               ` Alistair Francis
     [not found]                 ` <YR58MvAYYEjBQ7l5@ravnborg.org>
2021-08-19 22:36                   ` Alistair Francis
2021-10-14  9:56                     ` Alistair Francis
2021-10-21 10:42                       ` Alistair Francis

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=CAKmqyKOsUcta1cXxamJZnf01G9beCZrDKia068HR+J0AadgNiA@mail.gmail.com \
    --to=alistair23@gmail.com \
    --cc=alistair@alistair23.me \
    --cc=b.zolnierkie@samsung.com \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marex@denx.de \
    --cc=sam@ravnborg.org \
    --cc=shawnguo@kernel.org \
    /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.