From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751878AbdEEJmU (ORCPT ); Fri, 5 May 2017 05:42:20 -0400 Received: from mail-it0-f67.google.com ([209.85.214.67]:35244 "EHLO mail-it0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750710AbdEEJmR (ORCPT ); Fri, 5 May 2017 05:42:17 -0400 MIME-Version: 1.0 In-Reply-To: <1493919951-32122-5-git-send-email-geert+renesas@glider.be> References: <1493919951-32122-1-git-send-email-geert+renesas@glider.be> <1493919951-32122-5-git-send-email-geert+renesas@glider.be> From: Geert Uytterhoeven Date: Fri, 5 May 2017 11:42:15 +0200 X-Google-Sender-Auth: M71NrCLvBaDKgR4_JDays5JyRAw Message-ID: Subject: Re: [PATCH v3 4/6] spi: sh-msiof: Add slave mode support To: Geert Uytterhoeven Cc: Mark Brown , Rob Herring , Mark Rutland , Magnus Damm , Wolfram Sang , Hiromitsu Yamasaki , Jiada Wang , Matt Porter , linux-spi , "devicetree@vger.kernel.org" , Linux-Renesas , "linux-kernel@vger.kernel.org" , Wu Fengguang Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 4, 2017 at 7:45 PM, Geert Uytterhoeven wrote: > From: Hisashi Nakamura > > Add slave mode support to the MSIOF driver, in both PIO and DMA mode. > > For now this only supports the transmission of messages with a size > that is known in advance. > > Signed-off-by: Hisashi Nakamura > Signed-off-by: Hiromitsu Yamasaki > [geert: Timeout handling cleanup, spi core integration, cancellation, > rewording] > Signed-off-by: Geert Uytterhoeven > index 2ce15ca977828668..7c4e8c4f3a9bddfd 100644 > --- a/drivers/spi/spi-sh-msiof.c > +++ b/drivers/spi/spi-sh-msiof.c > +static int sh_msiof_slave_abort(struct spi_master *master) > +{ > + struct sh_msiof_spi_priv *p = spi_master_get_devdata(master); > + unsigned long flags; > + > + spin_lock_irqsave(&p->done.wait.lock, flags); > + if (!p->done.done) { > + wait_queue_t *curr, *next; > + > + list_for_each_entry_safe(curr, next, &p->done.wait.task_list, > + task_list) { > + signal_wake_up(curr->private, 1); 0day reported a build failure in the modular case (thanks!): ERROR: "signal_wake_up_state" [drivers/spi/spi-sh-msiof.ko] undefined! signal_wake_up() is a static inline function calling signal_wake_up_state(), but the latter is not exported to modules. I'll bring it up with the scheduler people... > + break; > + } > + } > + spin_unlock_irqrestore(&p->done.wait.lock, flags); > + return 0; > +} Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds