From: Lukasz Majewski <lukma@denx.de> To: Mark Brown <broonie@kernel.org> Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, krzk@kernel.org, Lukasz Majewski <lukma@denx.de> Subject: [PATCH 1/2] spi: Add call to spi_slave_abort() function when spidev driver is released Date: Tue, 24 Sep 2019 13:05:46 +0200 Message-ID: <20190924110547.14770-2-lukma@denx.de> (raw) In-Reply-To: <20190924110547.14770-1-lukma@denx.de> This change is necessary for spidev devices (e.g. /dev/spidev3.0) working in the slave mode (like NXP's dspi driver for Vybrid SoC). When SPI HW works in this mode - the master is responsible for providing CS and CLK signals. However, when some fault happens - like for example distortion on SPI lines - the SPI Linux driver needs a chance to recover from this abnormal situation and prepare itself for next (correct) transmission. This change doesn't pose any threat on drivers working in master mode as spi_slave_abort() function checks if SPI slave mode is supported. Signed-off-by: Lukasz Majewski <lukma@denx.de> --- drivers/spi/spidev.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c index 255786f2e844..fe9ea7e55e5b 100644 --- a/drivers/spi/spidev.c +++ b/drivers/spi/spidev.c @@ -627,6 +627,7 @@ static int spidev_release(struct inode *inode, struct file *filp) if (dofree) kfree(spidev); } + spi_slave_abort(spidev->spi); mutex_unlock(&device_list_lock); return 0; -- 2.20.1
next prev parent reply index Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-09-24 11:05 [PATCH 0/2] spi: Fix problem with interrupted slave transmission Lukasz Majewski 2019-09-24 11:05 ` Lukasz Majewski [this message] 2019-09-24 20:08 ` Applied "spi: Add call to spi_slave_abort() function when spidev driver is released" to the spi tree Mark Brown 2019-09-26 6:52 ` [PATCH 1/2] spi: Add call to spi_slave_abort() function when spidev driver is released Geert Uytterhoeven 2019-09-26 7:59 ` Lukasz Majewski 2019-09-24 11:05 ` [PATCH 2/2] spi: Introduce dspi_slave_abort() function for NXP's dspi SPI driver Lukasz Majewski 2019-10-01 11:41 ` Applied "spi: Introduce dspi_slave_abort() function for NXP's dspi SPI driver" to the spi tree Mark Brown 2019-09-25 9:11 ` [PATCH v2 0/2] spi: Fix problem with interrupted slave transmission Lukasz Majewski 2019-09-25 9:11 ` [PATCH v2 1/2] spi: Add call to spi_slave_abort() function when spidev driver is released Lukasz Majewski 2019-09-25 16:45 ` Mark Brown 2019-09-25 19:57 ` Lukasz Majewski 2019-09-25 16:47 ` Applied "spi: Add call to spi_slave_abort() function when spidev driver is released" to the spi tree Mark Brown 2019-09-25 9:11 ` [PATCH v2 2/2] spi: Introduce dspi_slave_abort() function for NXP's dspi SPI driver Lukasz Majewski
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=20190924110547.14770-2-lukma@denx.de \ --to=lukma@denx.de \ --cc=broonie@kernel.org \ --cc=krzk@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-spi@vger.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
Linux-SPI Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-spi/0 linux-spi/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-spi linux-spi/ https://lore.kernel.org/linux-spi \ linux-spi@vger.kernel.org public-inbox-index linux-spi Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-spi AGPL code for this site: git clone https://public-inbox.org/public-inbox.git