Hi, On Sat, Dec 26, 2020 at 10:58:45AM +0100, Ralf Schlatterbeck wrote: > This patch makes additional GPIOs usable as chipselects for SPI. > It is available for years on the linux-sunxi SPIdev page at > http://linux-sunxi.org/SPIdev and probably is originally by the user > "Mirko" there. I've tried unsuccessfully to contact the author. > Note that contrary to what is stated on the page above, the bug doesn't > have cosmetic implications only: > > The SPI-Driver for the H2 Allwinner processor in the Linux kernel is > supposed to support normal GPIOs as additional chipselects but fails to > do so without the patch. > > For oscilloscope screenshots with/without the patch, see my blog post > https://blog.runtux.com/posts/2019/04/18/ > or the discussion in the armbian forum at > https://forum.armbian.com/topic/4330-spi-gpio-chip-select-support/ > (my logo there is a penguin). > Please bear with me if I'm not following proper procedures, this is my > first patch to the kernel in years. > > Thanks > Ralf Schlatterbeck > > From 682ae1848b0df00cceb4c76486b971826b2737a9 Mon Sep 17 00:00:00 2001 > From: Ralf Schlatterbeck <rsc@xxxxxxxxxx> > Date: Thu, 11 Apr 2019 16:21:54 +0200 > Subject: [PATCH] Fix SPI Chipselect/Clock bug for sun6i > Signed-off-by: Ralf Schlatterbeck <rsc@xxxxxxxxxx> > > The current sun6i SPI implementation initializes the transfer too early, > resulting in SCK going high before the transer. When using an additional > (gpio) chipselect with sun6i, the chipselect is asserted at a time when > clock is high, making the SPI transfer fail. This patch from the sunxi > spidev page http://linux-sunxi.org/SPIdev fixes this, without the patch > no additional gpio chipselects can be used. The relevant code seems to > be from the user "Mirko" of the linux-sunxi wiki page, I was unable to > contact the original author. Unfortunately, without the author's Signed-off-by (and yours), we can't merge that patch. Maxime