From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759886AbbCDRiX (ORCPT ); Wed, 4 Mar 2015 12:38:23 -0500 Received: from mail1.bemta14.messagelabs.com ([193.109.254.107]:28221 "EHLO mail1.bemta14.messagelabs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758450AbbCDRiV (ORCPT ); Wed, 4 Mar 2015 12:38:21 -0500 X-Greylist: delayed 378 seconds by postgrey-1.27 at vger.kernel.org; Wed, 04 Mar 2015 12:38:21 EST X-Env-Sender: Adam.Ward.opensource@diasemi.com X-Msg-Ref: server-8.tower-193.messagelabs.com!1425490320!22676717!1 X-Originating-IP: [82.210.246.133] X-StarScan-Received: X-StarScan-Version: 6.13.4; banners=-,-,- X-VirusChecked: Checked Message-ID: <856964c7285656c88f23d0bcd5dae8519c2a1227.1425490309.git.adam.ward.opensource@diasemi.com> In-Reply-To: References: From: Adam Ward Date: Wed, 4 Mar 2015 16:13:12 +0000 Subject: [PATCH v1 1/2] mfd: da9052: Fix register access via SPI To: Samuel Ortiz , Lee Jones CC: Support Opensource , MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The range of registers used by this driver exceeds that available via SPI with no paging (127), so we have to override the values from the default config which is set-up for I2C access. Also change SPI settings to match device's recommended OTP values. Signed-off-by: Adam Ward Tested-by: Adam Ward --- drivers/mfd/da9052-spi.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/da9052-spi.c b/drivers/mfd/da9052-spi.c index 45ae0b7..b5de8a6 100644 --- a/drivers/mfd/da9052-spi.c +++ b/drivers/mfd/da9052-spi.c @@ -32,7 +32,7 @@ static int da9052_spi_probe(struct spi_device *spi) if (!da9052) return -ENOMEM; - spi->mode = SPI_MODE_0 | SPI_CPOL; + spi->mode = SPI_MODE_0; spi->bits_per_word = 8; spi_setup(spi); @@ -43,6 +43,10 @@ static int da9052_spi_probe(struct spi_device *spi) config = da9052_regmap_config; config.read_flag_mask = 1; + config.reg_bits = 7; + config.pad_bits = 1; + config.val_bits = 8; + config.use_single_rw = 1; da9052->regmap = devm_regmap_init_spi(spi, &config); if (IS_ERR(da9052->regmap)) { -- end-of-patch for mfd: da9052: Fix SPI access and IRQ config