Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp253785pxb; Wed, 4 Nov 2020 21:51:37 -0800 (PST) X-Google-Smtp-Source: ABdhPJyPlY8rzURkjaLPZmKqvF5uKRwsHsVu7251meoJlftEflxx4UnPyJqdRDgEY8zMt4x8pY8p X-Received: by 2002:a17:906:fcdb:: with SMTP id qx27mr738067ejb.470.1604555496888; Wed, 04 Nov 2020 21:51:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1604555496; cv=none; d=google.com; s=arc-20160816; b=Su6mangXhxMjOZwMETtaxqqoteUOvHnbchDvPZY/D8JnsETN0ePQi8uH5izdwtgKBy QfTOMGAYabLwrjrXqseUOzyUxEIhGGb+SKAzq59WUMtkfCkXWNvkjvm0cIjXG4wNbtDK 9IqZ5e/z9NaS186nv9GLRId7wU0KGuYcEqky2AAFYOFPoqdLVq7wqb9WACMGpexaWdjf ItIU+KYBFDIe+iK7xkBRAgkO6sgWEagiuV6zhGKNkYP6aSLnsCQx1002YMvAnx03Lifi QqEcdPG6K5fOz+fRaaxbSLiy3JD4Uu8NC3TVrZ/pET4mPYdL+i0LVLa068htucAcHbJw NPEg== 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:ironport-sdr:ironport-sdr; bh=bBgRf/JX4NPv7ug2S/YrcsKzsErTezktabeDGrKtG0s=; b=i0Bci4ij6gC907Qc5/OgSYMmUGZefvT+142wl7mrKzjkyx7B7ikJ1jF+hh9ehBJP6+ gLtb0+TvUjV07yWCD3VWmAiJ39HRgOQNSu62Q53S98lQ4hh5H56yCnfqZL4NgMqZxaiE zTMSnd0t/DRbBA7LAoNqB4069kJmi4+H6pVK4xftDfyT0GcSpJBMn2QJOJLaU9DYjQ+p Bdy//zyAIm1Pp8QMxNSEFqS83qAYZzngHpHwEa3esOl73BYbn7VpkwLcEcbSA8J1mDFt WhT32SCTStR+zCgonziBAzofRlRdN29/tzvrxEiS4fLrXBqepAXso2DucHtPa42U1gGp DxPg== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a27si369741ejd.485.2020.11.04.21.51.13; Wed, 04 Nov 2020 21:51:36 -0800 (PST) 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726330AbgKEFtx (ORCPT + 99 others); Thu, 5 Nov 2020 00:49:53 -0500 Received: from mga04.intel.com ([192.55.52.120]:28363 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725287AbgKEFtx (ORCPT ); Thu, 5 Nov 2020 00:49:53 -0500 IronPort-SDR: /wqm9nXX2AMb0Hovh+GQXgA3NQUzqlFRYWVhq/1Qw0o/rPVRXg5kGAxIa4CJzasg1H6D2n5ziC qWLW/HoSYIsQ== X-IronPort-AV: E=McAfee;i="6000,8403,9795"; a="166742388" X-IronPort-AV: E=Sophos;i="5.77,452,1596524400"; d="scan'208";a="166742388" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Nov 2020 21:49:48 -0800 IronPort-SDR: buOrznqQZj88HlI22V+86sPcSpwbbPG0oTZV9KiJhe+M0uXzgYbWh4YdPdjhuP0Sib93Jil9xa ku+RgHwemoUw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,452,1596524400"; d="scan'208";a="354153890" Received: from sgsxdev001.isng.intel.com (HELO localhost) ([10.226.88.11]) by fmsmga004.fm.intel.com with ESMTP; 04 Nov 2020 21:49:44 -0800 From: Rahul Tanwar To: u.kleine-koenig@pengutronix.de, linux-pwm@vger.kernel.org, lee.jones@linaro.org Cc: thierry.reding@gmail.com, p.zabel@pengutronix.de, robh+dt@kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, andriy.shevchenko@intel.com, songjun.Wu@intel.com, cheol.yong.kim@intel.com, qi-ming.wu@intel.com, rahul.tanwar.linux@gmail.com, Rahul Tanwar Subject: [PATCH v15 0/2] pwm: intel: Add PWM driver for a new SoC Date: Thu, 5 Nov 2020 13:49:38 +0800 Message-Id: X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 Content-Type: text/plain; charset=yes Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Patch 1 adds dt binding document in YAML format. Patch 2 add PWM fan controller driver for LGM SoC. v15: - Rebase to latest linux 5.10-rc2 v14: - Address below review concerns from Uwe Kleine-K?nig. * Add limitations info about fixed 2-wire mode support. * Rename clk/reset _disable function names to _release. * Remove clk & rst from driver data structure. Instead use them as arguments. * Add pwm_chip.base = -1. - Resolve missing MODULE_LICENSE warning. v13: - Address below review concerns (Philipp Zabel) * Make unnecessary 2 line comment as 1 line comment. * Move reset_deassert at the last after clk_enable. * Remove unnecessary return ret statement from .remove() - Move platform_set_drvdata() at the top of probe. v12: - Rebase to linux 5.9-rc4 - Add Reviewed-by tags from Andy Shevchenko & Rob Herring. v11: - Address below review concerns (Andy Shevchenko) * Fix a issue with dev_err_probe() usage & improve the usage. * Fix & improve a ordering issue with clk_enable/disable & reset_control assert/deassert. v10: - Removed unused of_device.h and added platform_device.h & mod_devicetable.h v9: - Address code quality related review concerns (Andy Shevchenko) - Use devm_add_action_or_reset() instead of explicit unwind calls. v8: - Remove fan related optional properties usage, keep them as default. If needed, change pwm-fan driver separately in future to add them as generic properties. v7: - Address code quality related review concerns. - Rename fan related property to pwm-*. - Fix one make dt_binding_check reported error. v6: - Readjust .apply op as per review feedback. - Add back pwm-cells property to resolve make dt_binding_check error. pwm-cells is a required property for PWM driver. - Add back fan related optional properties. v5: - Address below review concerns from Uwe Kleine-K?nig. * Improve comments about Limitations. * Use return value of regmap_update_bits if container function returns error code. * Modify .apply op to have strict checking for fixed period supported by PWM HW. * Use u64 as type when use min_t for duty_cycle. * Add reset_control_assert() in failure case in probe where it was missing earlier. - Remove fan specific optional properties from pwm dt binding document (Rob Herring) v4: - Address below review concerns from Uwe Kleine-K?nig. * Improve notes and limitations comments. * Add common prefixes for all #defines. * Modify/Improve logic in .apply & .get_state ops as advised. * Skip error messages in probe when error is -EPROBE_DEFER. * Add dependencies in Kconfig (OF & HAS_IOMEM) and add select REGMAP_MMIO. * Address other code quality related review concerns. - Fix make dt_binding_check reported error in YAML file. v3: - Address below review concerns from Uwe Kleine-K?nig. * Remove fan rpm calibration task from the driver. * Modify apply op as per the review feedback. * Add roundup & round down where necessary. * Address other misc code quality related review concerns. * Use devm_reset_control_get_exclusive(). (Philipp Zabel) * Improve dt binding document. v2: - Address below review concerns from Uwe Kleine-K?nig. * Add notes and limitations about PWM HW. * Rename all functions and structure to lgm_pwm_* * Readjust space aligninment in structure fields to single space. * Switch to using apply instead of config/enable/disable. * Address other code quality related concerns. * Rebase to 5.8-rc1. - Address review concerns in dt binding YAML from Rob Herring. v1: - Initial version. Rahul Tanwar (2): Add DT bindings YAML schema for PWM fan controller of LGM SoC Add PWM fan controller driver for LGM SoC .../devicetree/bindings/pwm/intel,lgm-pwm.yaml | 44 ++++ drivers/pwm/Kconfig | 11 + drivers/pwm/Makefile | 1 + drivers/pwm/pwm-intel-lgm.c | 244 +++++++++++++++++++++ 4 files changed, 300 insertions(+) create mode 100644 Documentation/devicetree/bindings/pwm/intel,lgm-pwm.yaml create mode 100644 drivers/pwm/pwm-intel-lgm.c -- 2.11.0