Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3230985ybz; Sun, 19 Apr 2020 21:28:58 -0700 (PDT) X-Google-Smtp-Source: APiQypLCI+2zROKY7UAY6SztkNnFSPxn9/HwYSTaI+hMwmKLYHx/OcXfKNQU5uT82Aa2FxKL7Ji0 X-Received: by 2002:a17:906:5c43:: with SMTP id c3mr13856760ejr.3.1587356938635; Sun, 19 Apr 2020 21:28:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587356938; cv=none; d=google.com; s=arc-20160816; b=hkI+CfqMrkU5OMEr69tSpTRi0XtwUAPvn4V+zfrWxuBLo2jWe5Rj+jMlrxQfKwuefI NvGWg4V5bQn2w0UAS62G5AXPQ7JTSX9Y6B/P9Bol2UdYFjgLIpZmQFCw/LS8IHqrCoSO GY+NgYRc3EYp0Nrr7O3WHol5P17N+UcFzFSJEh7OACAt+UjbCCdeLpxuqC4UBG7lu+TF OInuLyWeZUgglRN0+wIoPXaHHuHeRyrtR6e95iBDptTgXMJI9OynKx4wSmZyXXP8I/K5 c/sESwGQMYE+48XvKtt65FX9m7++8eMX57BZXYa1yZeTkZhKyJwh81DN/ND/HJMRSYRS OsUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=jGLnZrVFRb2lZ+mJoxwgHKrJo4ZMQCKeWPbYNvzsYeE=; b=tUas3qPPmzdCNwnZrkgsrzWiVsX3BmwbCL0eLhK4i959sOPrjtykjQW77AOeWrsFqf zAoswwCw8DSqYsRkUBecVhQQWgWTK0WmglCqOqEz5wNsMLOwu86Yx45oj66XaD7I+n3p ul4cTxCRm/3yYqg49qNJmdIvsE8CMPz71qQyrtPH9z0+E+LSwFzFSyrfVDImHNk2JiSA 9CZtDlSpkhldrcw8oICWcgqWzYLd1jOUxRklDkr1eKE+fiGhyOmMMaKRzVmYbfuvdqW5 K2LYBpHbGODa6n5qmHPNg6svDLk1yRITet5Z2G5CT/VNoxdEXejgPGIxqLX4xQHITpWk alRQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dk9si12199160edb.403.2020.04.19.21.28.36; Sun, 19 Apr 2020 21:28:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726262AbgDTE1F (ORCPT + 99 others); Mon, 20 Apr 2020 00:27:05 -0400 Received: from server-x.ipv4.hkg02.ds.network ([27.111.83.178]:55070 "EHLO mail.gtsys.com.hk" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1726012AbgDTE1E (ORCPT ); Mon, 20 Apr 2020 00:27:04 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.gtsys.com.hk (Postfix) with ESMTP id 012F82027885; Mon, 20 Apr 2020 12:27:02 +0800 (HKT) X-Virus-Scanned: Debian amavisd-new at gtsys.com.hk Received: from mail.gtsys.com.hk ([127.0.0.1]) by localhost (mail.gtsys.com.hk [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HmT-3T3mwiW5; Mon, 20 Apr 2020 12:27:01 +0800 (HKT) Received: from s01.gtsys.com.hk (unknown [10.128.4.2]) by mail.gtsys.com.hk (Postfix) with ESMTP id D5A0A2027883; Mon, 20 Apr 2020 12:27:01 +0800 (HKT) Received: from armhf2.gtsys.com.hk (unknown [10.128.4.15]) by s01.gtsys.com.hk (Postfix) with ESMTP id D032BC01F9E; Mon, 20 Apr 2020 12:27:01 +0800 (HKT) Received: by armhf2.gtsys.com.hk (Postfix, from userid 1000) id CB924201602; Mon, 20 Apr 2020 12:27:01 +0800 (HKT) From: Chris Ruehl To: Chris Ruehl Cc: devicetree@vger.kernel.org, Michael Hennerich , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Jonathan Cameron , Hartmut Knaack , Lars-Peter Clausen , Peter Meerwald-Stadler , Rob Herring , Alexandru Ardelean , Alexandru Tachici , Stefan Popa , Thomas Gleixner , Richard Fontana , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v5 2/3] iio: DAC extension for ltc2634-12/10/8 Date: Mon, 20 Apr 2020 12:26:07 +0800 Message-Id: <20200420042612.27752-3-chris.ruehl@gtsys.com.hk> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200420042612.27752-1-chris.ruehl@gtsys.com.hk> References: <20200420042612.27752-1-chris.ruehl@gtsys.com.hk> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch add support for Analog Devices (Linear Technology) LTC2634 Quad 12-/10-/8-Bit Rail-to-Rail DAC. The SPI functionality based on them from LTC2632 therefor add the definitions only and update the Kconfig. Signed-off-by: Chris Ruehl Acked-by: Uwe Kleine-König --- v5: -add Acked-by v4: -hide version from commit text v3: -Consistens decimal separator in help text v2: -Send the documentation fix in a extra patch -Kconfig simplify the driver description, details to the help text -ltc2632.txt add to this patch-set (prepare to convert to yaml) .../devicetree/bindings/iio/dac/ltc2632.txt | 8 ++- drivers/iio/dac/Kconfig | 6 +- drivers/iio/dac/ltc2632.c | 60 +++++++++++++++++++ 3 files changed, 70 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/iio/dac/ltc2632.txt b/Documentation/devicetree/bindings/iio/dac/ltc2632.txt index 338c3220f01a..1ab9570cf219 100644 --- a/Documentation/devicetree/bindings/iio/dac/ltc2632.txt +++ b/Documentation/devicetree/bindings/iio/dac/ltc2632.txt @@ -1,4 +1,4 @@ -Linear Technology LTC2632/2636 DAC +Linear Technology LTC2632/2634/2636 DAC Required properties: - compatible: Has to contain one of the following: @@ -8,6 +8,12 @@ Required properties: lltc,ltc2632-h12 lltc,ltc2632-h10 lltc,ltc2632-h8 + lltc,ltc2634-l12 + lltc,ltc2634-l10 + lltc,ltc2634-l8 + lltc,ltc2634-h12 + lltc,ltc2634-h10 + lltc,ltc2634-h8 lltc,ltc2636-l12 lltc,ltc2636-l10 lltc,ltc2636-l8 diff --git a/drivers/iio/dac/Kconfig b/drivers/iio/dac/Kconfig index 93744011b63f..3728f6325501 100644 --- a/drivers/iio/dac/Kconfig +++ b/drivers/iio/dac/Kconfig @@ -279,12 +279,12 @@ config LTC1660 module will be called ltc1660. config LTC2632 - tristate "Linear Technology LTC2632-12/10/8 and LTC2636-12/10/8 DAC spi driver" + tristate "Linear Technology LTC2632-12/10/8 and similar DAC spi driver" depends on SPI help Say yes here to build support for Linear Technology - LTC2632-12, LTC2632-10, LTC2632-8, LTC2636-12, LTC2636-10 and - LTC2636-8 converters (DAC). + LTC2632, LTC2634 and LTC2636 DAC resolution 12/10/8 bit + low 0-2.5V and high 0-4.096V range converters. To compile this driver as a module, choose M here: the module will be called ltc2632. diff --git a/drivers/iio/dac/ltc2632.c b/drivers/iio/dac/ltc2632.c index 2a84ea654645..e939d7f81014 100644 --- a/drivers/iio/dac/ltc2632.c +++ b/drivers/iio/dac/ltc2632.c @@ -54,6 +54,12 @@ enum ltc2632_supported_device_ids { ID_LTC2632H12, ID_LTC2632H10, ID_LTC2632H8, + ID_LTC2634L12, + ID_LTC2634L10, + ID_LTC2634L8, + ID_LTC2634H12, + ID_LTC2634H10, + ID_LTC2634H8, ID_LTC2636L12, ID_LTC2636L10, ID_LTC2636L8, @@ -236,6 +242,36 @@ static const struct ltc2632_chip_info ltc2632_chip_info_tbl[] = { .num_channels = 2, .vref_mv = 4096, }, + [ID_LTC2634L12] = { + .channels = ltc2632x12_channels, + .num_channels = 4, + .vref_mv = 2500, + }, + [ID_LTC2634L10] = { + .channels = ltc2632x10_channels, + .num_channels = 4, + .vref_mv = 2500, + }, + [ID_LTC2634L8] = { + .channels = ltc2632x8_channels, + .num_channels = 4, + .vref_mv = 2500, + }, + [ID_LTC2634H12] = { + .channels = ltc2632x12_channels, + .num_channels = 4, + .vref_mv = 4096, + }, + [ID_LTC2634H10] = { + .channels = ltc2632x10_channels, + .num_channels = 4, + .vref_mv = 4096, + }, + [ID_LTC2634H8] = { + .channels = ltc2632x8_channels, + .num_channels = 4, + .vref_mv = 4096, + }, [ID_LTC2636L12] = { .channels = ltc2632x12_channels, .num_channels = 8, @@ -357,6 +393,12 @@ static const struct spi_device_id ltc2632_id[] = { { "ltc2632-h12", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2632H12] }, { "ltc2632-h10", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2632H10] }, { "ltc2632-h8", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2632H8] }, + { "ltc2634-l12", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634L12] }, + { "ltc2634-l10", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634L10] }, + { "ltc2634-l8", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634L8] }, + { "ltc2634-h12", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634H12] }, + { "ltc2634-h10", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634H10] }, + { "ltc2634-h8", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2634H8] }, { "ltc2636-l12", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2636L12] }, { "ltc2636-l10", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2636L10] }, { "ltc2636-l8", (kernel_ulong_t)<c2632_chip_info_tbl[ID_LTC2636L8] }, @@ -386,6 +428,24 @@ static const struct of_device_id ltc2632_of_match[] = { }, { .compatible = "lltc,ltc2632-h8", .data = <c2632_chip_info_tbl[ID_LTC2632H8] + }, { + .compatible = "lltc,ltc2634-l12", + .data = <c2632_chip_info_tbl[ID_LTC2634L12] + }, { + .compatible = "lltc,ltc2634-l10", + .data = <c2632_chip_info_tbl[ID_LTC2634L10] + }, { + .compatible = "lltc,ltc2634-l8", + .data = <c2632_chip_info_tbl[ID_LTC2634L8] + }, { + .compatible = "lltc,ltc2634-h12", + .data = <c2632_chip_info_tbl[ID_LTC2634H12] + }, { + .compatible = "lltc,ltc2634-h10", + .data = <c2632_chip_info_tbl[ID_LTC2634H10] + }, { + .compatible = "lltc,ltc2634-h8", + .data = <c2632_chip_info_tbl[ID_LTC2634H8] }, { .compatible = "lltc,ltc2636-l12", .data = <c2632_chip_info_tbl[ID_LTC2636L12] -- 2.20.1