From patchwork Mon Oct 12 21:01:11 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Franklin Cooper X-Patchwork-Id: 7379101 Return-Path: X-Original-To: patchwork-linux-spi@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id D2B809F1B9 for ; Mon, 12 Oct 2015 21:01:55 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 03B3E20924 for ; Mon, 12 Oct 2015 21:01:55 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 350F020923 for ; Mon, 12 Oct 2015 21:01:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752162AbbJLVBd (ORCPT ); Mon, 12 Oct 2015 17:01:33 -0400 Received: from mail-oi0-f45.google.com ([209.85.218.45]:36796 "EHLO mail-oi0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751661AbbJLVBc (ORCPT ); Mon, 12 Oct 2015 17:01:32 -0400 Received: by oihr205 with SMTP id r205so21187881oih.3; Mon, 12 Oct 2015 14:01:31 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=9KYsCZO9WYoOP9iiAKyGf4s16WpwgFzybiuhqFmxWwA=; b=Tz530BwVOOd3P82Ca2lRYWxaSLBFjlmWbKJ4Zhqv9cGYY6Jh2JdYK/vUVhua/Uf0S5 bpo7rQadDtfGh4a2GO4GESM9p/JW7b8PLZ/gSz4ymEklzqCASWc2nqxKJZuq1iARVZL5 qe1fnsRPAlCRALmPGgWk3MfJFYiMxOk8YiYnjNEHiaP5USHpmgBLVc0D4XmwSolvcvlY P/pU/LYTeON7IthIA4wAboQe4GMySoqaiqj3KtmpYJPI0V6KfX6A//jJvrI2n6p718RQ MVR8P8nvPDT0xugf5RXM/n+FlpZ+2JUDjwr77akzqTo4rG0/FGr8lnSVuN12IImDlgXw cfJw== X-Received: by 10.202.79.204 with SMTP id d195mr3313815oib.88.1444683691511; Mon, 12 Oct 2015 14:01:31 -0700 (PDT) Received: from localhost.localdomain (pool-71-97-41-79.dllstx.fios.verizon.net. [71.97.41.79]) by smtp.gmail.com with ESMTPSA id fh3sm9400929obb.23.2015.10.12.14.01.30 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 12 Oct 2015 14:01:31 -0700 (PDT) From: Franklin S Cooper Jr To: linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org, broonie@kernel.org, nsekhar@ti.com, ssantosh@kernel.org, iivanov@mm-sol.com, m-karicheri2@ti.com Cc: Franklin S Cooper Jr Subject: [RFC][PATCH] spi: Setup the master controller driver before setting the chipselect Date: Mon, 12 Oct 2015 16:01:11 -0500 Message-Id: <1444683671-15570-2-git-send-email-fcooper@ti.com> X-Mailer: git-send-email 2.6.1 In-Reply-To: <1444683671-15570-1-git-send-email-fcooper@ti.com> References: <1444683671-15570-1-git-send-email-fcooper@ti.com> Sender: linux-spi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Some devices depend on the master controller driver setup function being called before calling any chipselect functions. Insure that this is done otherwise uninitialized structures may be accessed causing a kernel panic. Signed-off-by: Franklin S Cooper Jr Tested-by: Andy Shevchenko --- drivers/spi/spi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 38006cc..9374d82 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -2053,11 +2053,11 @@ int spi_setup(struct spi_device *spi) if (!spi->max_speed_hz) spi->max_speed_hz = spi->master->max_speed_hz; - spi_set_cs(spi, false); - if (spi->master->setup) status = spi->master->setup(spi); + spi_set_cs(spi, false); + dev_dbg(&spi->dev, "setup mode %d, %s%s%s%s%u bits/w, %u Hz max --> %d\n", (int) (spi->mode & (SPI_CPOL | SPI_CPHA)), (spi->mode & SPI_CS_HIGH) ? "cs_high, " : "",