From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753590AbdEIMYW (ORCPT ); Tue, 9 May 2017 08:24:22 -0400 Received: from mail-wr0-f194.google.com ([209.85.128.194]:36740 "EHLO mail-wr0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752552AbdEIMYU (ORCPT ); Tue, 9 May 2017 08:24:20 -0400 From: Seraphime Kirkovski To: linux-kernel@vger.kernel.org Cc: linux-spi@vger.kernel.org, broonie@kernel.org, Seraphime Kirkovski Subject: [PATCH 0/2] spi: spidev: Introduce SPI_IOC_WR_DEFAULT_MAX_SPEED_HZ command Date: Tue, 9 May 2017 14:23:59 +0200 Message-Id: <20170509122401.2561-1-kirkseraph@gmail.com> X-Mailer: git-send-email 2.13.0.rc1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Historically SPI_IOC_WR_MAX_SPEED_HZ was changing the ->max_speed_hz field of the underlying struct spi_dev, which made the effects last way after releasing one particular /dev/spidev* fd. This changed in 9169051617df7 ("spi: spidev: Don't mangle max_speed_hz in underlying spi device") or 7 years after the introduction of SPI_IOC_WR_MAX_SPEED_HZ ! In the mean time there were userspace tools developped with the assumptions that the effects of this particular command are system-wide. [1] is a suite of two small programs for reading, writing and configuring SPI interfaces. The `spi-config -s` part was working good in our setup with old 3.x kernels. We discovered this "regression" when we tried to port our workflow to newer kernels. I think, this change is necessary, on the one hand, because there are still a lot of longterm[2] supported kernels out there, whose users may be relying on SPI_IOC_WR_MAX_SPEED being system-wide and, on the other hand, this same command has been exhibiting a different behaviour for 3 years now, so its users may break, if 9169051617df7 is reverted in one way or another. The semantics of the proposed command are the same as the old SPI_IOC_WR_MAX_SPEED_HZ. [1] https://github.com/cpb-/spi-tools [2] A quick check on kernel.org shows that all 3.x with longterm support have not applied 9169051617df7 Seraphime Kirkovski (2): spi: spidev: introduce SPI_IOC_WR_DEFAULT_MAX_SPEED_HZ command spi: spidev: document SPI_IOC_WR_DEFAULT_MAX_SPEED_HZ Documentation/spi/spidev | 7 +++++++ drivers/spi/spidev.c | 8 ++++++-- include/uapi/linux/spi/spidev.h | 4 +++- 3 files changed, 16 insertions(+), 3 deletions(-) -- 2.13.0.rc1