Message ID | 20221020204251.108565-1-sebastian.reichel@collabora.com |
---|---|
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp314343wrr; Thu, 20 Oct 2022 13:44:12 -0700 (PDT) X-Google-Smtp-Source: AMsMyM42l93FKn60dGj7VXKslwdXbe8KV3oOpcahUq0oktcbkqIuAW/ab2ya4wSbSmhoeJIxYSHi X-Received: by 2002:a17:907:94c3:b0:78e:2866:f89f with SMTP id dn3-20020a17090794c300b0078e2866f89fmr12270998ejc.617.1666298652476; Thu, 20 Oct 2022 13:44:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666298652; cv=none; d=google.com; s=arc-20160816; b=cdYpZMwrwtyxaPXgU808K2gQqYWZtf3yNwD6R/sl/2V+MmauYcPIimrc/z7dj75BHI SxMUUeubeB47njNYeKGlNiFqlvjXLph7cCnQ/BOxPsjVQS5jLH0OSgp6bg/+MUcbGS2i /U7EseYfHBVRNMYdfOoBVOf/90rSr2JJS2VeSPJ8LR23WvG1Njlhd4m15GAsVtIAfGoh n6I07NhuSyviykFdlgRu7DfK1fVwOq9ThoQIhCLhDp/xrGOWko8x7PwFvcJd7boL/9W7 prqZZ68nzlDt8MeG8/VNgtiLdri0o9hNp33A4bpR0QhHWwS2uKongpogGo2VbuWlAZCI JTOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=JnhiKC1NQeTGrYN9jlovwwWL+FI15huTdA3WM6lPywE=; b=qON0PWmhpbA0Dugp8DBEgZK8trg2/lrR710EhqZdDrr1ek/g3cdJOmV8zsyXk5ZIGP idJAbehqB/uj+/UnkL4UnzUKRdROnvVB8s740N/urz9Af5HbMwyHo5HRIFFP6VKa9/Lp BpZ4MeUyOEQ9dxc/AP7E3EjwHxc8KQ1MtzVbvphNhO5U75TQN8FwZT9AwIBb6CbacW4G 0XWfa3mhhArsYbxcpW3DbUCer32a711emwBjyUQ46qs0SNh+h3XKVHoixKNKBHlkZNUj 4RmQ5jztKP7xIpMLHeamhTd/q/g8BFeEcsKUCCsPtTzPwnrEvtYJDob9Oj7ZYohpMiWj fu/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=M8P+o5Db; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cs9-20020a170906dc8900b0078d4b88f122si20463338ejc.950.2022.10.20.13.43.47; Thu, 20 Oct 2022 13:44:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=M8P+o5Db; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229622AbiJTUnQ (ORCPT <rfc822;pwkd43@gmail.com> + 99 others); Thu, 20 Oct 2022 16:43:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33934 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229456AbiJTUnL (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Thu, 20 Oct 2022 16:43:11 -0400 Received: from madras.collabora.co.uk (madras.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e5ab]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6D0811F1836; Thu, 20 Oct 2022 13:42:56 -0700 (PDT) Received: from jupiter.universe (dyndsl-091-096-059-009.ewe-ip-backbone.de [91.96.59.9]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: sre) by madras.collabora.co.uk (Postfix) with ESMTPSA id 8B8FB6602482; Thu, 20 Oct 2022 21:42:54 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1666298574; bh=SXFHuXAImIW5KxKaa3GfthpiL4VGK2Iq7UKJ0GqtMv0=; h=From:To:Cc:Subject:Date:From; b=M8P+o5Dbg/xCPJ0gGa4vlt5/cbMUwmFVowfEXaAUEMQk0kCanz4V7yfM+mRJw1Ijy XEvAs+9rYBs9MPJDmEtrjUjwWoPDZxQFzG64AUobM8sywepSFRvIxhJkjDRwoNtt8i AnBy3fgdkVX+0JbUEzsMWu2jAHOU39zsHLaP0Dj2kTuqEM4LfpA7GEQ23c/Gtxmxq7 de1G6k/iyboT9hHtXd9dSB9s96vAFTAhM5xb1wDNcac498VU7EHuGhB4C7PqEIpa4h sKuRuyzLhzmkML9Ud18F0ZxA9gOSzN8ICSRUrAwB0UM44zJ+2CpD6+BKnu+RIqRGcy 6mdoUtQGNnJWg== Received: by jupiter.universe (Postfix, from userid 1000) id 4E51048082E; Thu, 20 Oct 2022 22:42:52 +0200 (CEST) From: Sebastian Reichel <sebastian.reichel@collabora.com> To: Heiko Stuebner <heiko@sntech.de>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Lee Jones <lee@kernel.org> Cc: Michael Turquette <mturquette@baylibre.com>, Stephen Boyd <sboyd@kernel.org>, Linus Walleij <linus.walleij@linaro.org>, Mark Brown <broonie@kernel.org>, Liam Girdwood <lgirdwood@gmail.com>, Alexandre Belloni <alexandre.belloni@bootlin.com>, Alessandro Zummo <a.zummo@towertech.it>, linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel <sebastian.reichel@collabora.com>, kernel@collabora.com Subject: [PATCHv4 00/13] Introduce RK806 Support Date: Thu, 20 Oct 2022 22:42:38 +0200 Message-Id: <20221020204251.108565-1-sebastian.reichel@collabora.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747240775561908243?= X-GMAIL-MSGID: =?utf-8?q?1747240775561908243?= |
Series |
Introduce RK806 Support
|
|
Message
Sebastian Reichel
Oct. 20, 2022, 8:42 p.m. UTC
Hi, The Rockchip RK3588 Evaluation Boards use SPI connected RK806 PMICs. Downstream this is handled by a new driver, but apart from being SPI connected this chip is quite similar to the ther Rockchip PMICs (also RK806 is promoted to also support I2C). Thus this series instead updates the RK808 driver(s). Changelog since PATCHv3: * https://lore.kernel.org/all/20220909175522.179175-1-sebastian.reichel@collabora.com/ * Dropped removing REGMAP_I2C dependency from RK817 ASoC driver (applied) * Rename MFD_RK808 to MFD_RK8XX to be consistent. It makes sense to do this now, since the patchset touches all the child drivers anyways. * rebase to v6.1-rc1 * collected a couple of Acks * update rk806 DT binding according to DT maintainer feedback * add missing pinmux config to the rk806 DT binding * update rk806_spi_bus_write and rk806_spi_bus_read * replaced some constants with sizeof or defines * used capitalized comments * rename regmap_find_closest_bigger to regulator_find_closest_bigger, not sure why I prefixed it with regmap_ in the first place * use rk8xx_is_enabled_wmsk_regmap instead of regulator_is_enabled_regmap for the switching regulators to correctly report the state * reordered the first few patches grouping the MFD patches together Changelog since PATCHv2: * https://lore.kernel.org/all/20220908003107.220143-1-sebastian.reichel@collabora.com/ * Change DT binding to not allow nldo-reg6 * Fix DT binding to check for [np]ldo-reg instead of [np]ldo_reg * remove rk806_get_voltage_sel_regmap in favour of regulator_get_voltage_sel_regmap * drop rk806_set_voltage in favour of regulator_set_voltage_sel_regmap * use regulator_set_ramp_delay_regmap * drop possibly incorrect printing of chip id register address in case of errors Changelog since PATCHv1: * https://lore.kernel.org/all/20220831215437.117880-1-sebastian.reichel@collabora.com/ * Collect Acked-by * Avoid if/else checks for regulator id in rk806 regulator driver * Fix indentation in DTS example section of the rk806 binding * Use absolute path for regulator.yaml referencing in the rk806 binding * Reduce pattern for DCDC regulators to only allow 1-10 * replace uppercase name with lowercase ones in regulator names * replace _ with - in regulator names -- Sebastian Sebastian Reichel (13): clk: RK808: reduce 'struct rk808' usage regulator: rk808: reduce 'struct rk808' usage rtc: rk808: reduce 'struct rk808' usage mfd: rk808: convert to device managed resources mfd: rk808: use dev_err_probe mfd: rk808: replace 'struct i2c_client' with 'struct device' mfd: rk808: split into core and i2c dt-bindings: mfd: add rk806 binding mfd: rk8xx: add rk806 support pinctrl: rk805: add rk806 pinctrl support regulator: rk808: Use dev_err_probe regulator: expose regulator_find_closest_bigger regulator: rk808: add rk806 support .../bindings/mfd/rockchip,rk806.yaml | 405 +++++++++++++++++ drivers/clk/Kconfig | 2 +- drivers/clk/clk-rk808.c | 34 +- drivers/input/misc/Kconfig | 2 +- drivers/mfd/Kconfig | 21 +- drivers/mfd/Makefile | 4 +- drivers/mfd/{rk808.c => rk8xx-core.c} | 351 +++++---------- drivers/mfd/rk8xx-i2c.c | 209 +++++++++ drivers/mfd/rk8xx-spi.c | 115 +++++ drivers/pinctrl/Kconfig | 2 +- drivers/pinctrl/pinctrl-rk805.c | 189 +++++++- drivers/power/supply/Kconfig | 2 +- drivers/regulator/Kconfig | 2 +- drivers/regulator/helpers.c | 22 +- drivers/regulator/rk808-regulator.c | 409 ++++++++++++++++- drivers/rtc/Kconfig | 2 +- drivers/rtc/rtc-rk808.c | 47 +- include/linux/mfd/rk808.h | 417 +++++++++++++++++- include/linux/regulator/driver.h | 2 + sound/soc/codecs/Kconfig | 2 +- 20 files changed, 1913 insertions(+), 326 deletions(-) create mode 100644 Documentation/devicetree/bindings/mfd/rockchip,rk806.yaml rename drivers/mfd/{rk808.c => rk8xx-core.c} (70%) create mode 100644 drivers/mfd/rk8xx-i2c.c create mode 100644 drivers/mfd/rk8xx-spi.c
Comments
On Thu, 20 Oct 2022 22:42:38 +0200, Sebastian Reichel wrote: > The Rockchip RK3588 Evaluation Boards use SPI connected RK806 > PMICs. Downstream this is handled by a new driver, but apart > from being SPI connected this chip is quite similar to the > ther Rockchip PMICs (also RK806 is promoted to also support > I2C). Thus this series instead updates the RK808 driver(s). > > Changelog since PATCHv3: > * https://lore.kernel.org/all/20220909175522.179175-1-sebastian.reichel@collabora.com/ > * Dropped removing REGMAP_I2C dependency from RK817 ASoC driver (applied) > * Rename MFD_RK808 to MFD_RK8XX to be consistent. It makes sense to do this now, > since the patchset touches all the child drivers anyways. > * rebase to v6.1-rc1 > * collected a couple of Acks > * update rk806 DT binding according to DT maintainer feedback > * add missing pinmux config to the rk806 DT binding > * update rk806_spi_bus_write and rk806_spi_bus_read > * replaced some constants with sizeof or defines > * used capitalized comments > * rename regmap_find_closest_bigger to regulator_find_closest_bigger, not sure > why I prefixed it with regmap_ in the first place > * use rk8xx_is_enabled_wmsk_regmap instead of regulator_is_enabled_regmap for > the switching regulators to correctly report the state > * reordered the first few patches grouping the MFD patches together > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git for-next Thanks! [02/13] regulator: rk808: reduce 'struct rk808' usage commit: 647e57351f8ebc37d8e12cbc0f4bf7471754a0cc [11/13] regulator: rk808: Use dev_err_probe commit: f39f8709c217d82aabbf51d8669731137ce09aea All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark
On Thu, 20 Oct 2022 22:42:38 +0200, Sebastian Reichel wrote: > The Rockchip RK3588 Evaluation Boards use SPI connected RK806 > PMICs. Downstream this is handled by a new driver, but apart > from being SPI connected this chip is quite similar to the > ther Rockchip PMICs (also RK806 is promoted to also support > I2C). Thus this series instead updates the RK808 driver(s). > > Changelog since PATCHv3: > * https://lore.kernel.org/all/20220909175522.179175-1-sebastian.reichel@collabora.com/ > * Dropped removing REGMAP_I2C dependency from RK817 ASoC driver (applied) > * Rename MFD_RK808 to MFD_RK8XX to be consistent. It makes sense to do this now, > since the patchset touches all the child drivers anyways. > * rebase to v6.1-rc1 > * collected a couple of Acks > * update rk806 DT binding according to DT maintainer feedback > * add missing pinmux config to the rk806 DT binding > * update rk806_spi_bus_write and rk806_spi_bus_read > * replaced some constants with sizeof or defines > * used capitalized comments > * rename regmap_find_closest_bigger to regulator_find_closest_bigger, not sure > why I prefixed it with regmap_ in the first place > * use rk8xx_is_enabled_wmsk_regmap instead of regulator_is_enabled_regmap for > the switching regulators to correctly report the state > * reordered the first few patches grouping the MFD patches together > > [...] Applied, thanks! [03/13] rtc: rk808: reduce 'struct rk808' usage commit: 2e830ccc21eb67a4c2490279d907e5e9199e5156 Best regards,