From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 965A224A078 for ; Sun, 7 Dec 2025 03:29:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765078165; cv=none; b=gfgARFBeYOlg1UWsriwj2m+755xsUaSGuivSqeEBlqtgxxGJ3MUxRdG3yScoAx6cu726wYs2QRxfjCErmY1oOd39TOYfK2kSoNUahe+crVYVSc0Zxoh5paleoZer9dzrAmeo4GsZSAxsenKZhMF+wfNLTBSSpYmgZxsQw2OWPfI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765078165; c=relaxed/simple; bh=2m8JY89557sMMEVqOYKh58k1S9obQaPwBC0s4o56nDM=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=FhXoYlVNkfiPIkS2lyo8ibnfqsIoL8JpaxS4JKVkN+F6xPhGe8W+7rrpPNGdfFd7lTYWjLeQdmvxDPJR0XXFS75v0MEPKutVUUCy7yikPQ+9/j1j9ROOcoDxWov/+fj2fz+1p6yfj6sy9lGqfhajmoE6HChgYi2CnMz50bM84sE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=nEP3QApl; arc=none smtp.client-ip=209.85.210.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nEP3QApl" Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-7b89c1ce9easo3829248b3a.2 for ; Sat, 06 Dec 2025 19:29:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765078162; x=1765682962; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=lhYsWVlpI/3+mlNI3YGmU2xB9uwVHbcNM9pKSkS4yvs=; b=nEP3QApl4zIR9dQTLEhFpYwDb9FdwJ9YKc5XYWZKMarGNUN/Oyn6MqNybiA4MUInzG bUkdFY6XFcwB/baG0pQsHX7W7js1mSqr377oTvf+spWuGdSOt2LCzdYc1bk9IZYXZ1wn lhPt8f7EIJeLbWpvFDfMnHEw8/dhKbgEJcBr40sbs44KKdj88EjP/r8s/DJraBDxkKnQ Py9WzOuEb1dNzpG03BW7xeypvNb/BVmtIFu5QgpksCVZv0f//wJ9yPHw3QhZTbUlRjJY 4IWh4x0Xf2Bmac89iSD+A/gqfum6vA/av/GHEyQFLclvV9WGzwQRv1GAUeMGsoJ0816w bDQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765078162; x=1765682962; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=lhYsWVlpI/3+mlNI3YGmU2xB9uwVHbcNM9pKSkS4yvs=; b=A4e2qqY3rsOq9BCqX2PL79QAsMMrNTYuL7Ursn2omCT4GkpyeYbkSuQ92R8rD3pVU6 uCPGdrgUpPP15SK4+rXLrdn6B8+iU2ssIOgpir8nJfggglQDBEihYjphpMeeLCquB+Yn abqSpe1rvFFjXJVp3LDli+TWnLhk2A/Ts1kTIMjSd6tM9K59k8TMk1mJMccRmeQG+OTE dxZye3XxetIe4eufOcl7FIjIXDTNwiBckgj1FQwi7aKITpAK3aeKrsnGJa2wi3ua8Y5N ogQZug93px2JPw+cdypMAESWH0n0OZ7loMgPamcPWJpXgurvBN6QxPFx7j/R0S+A9gTk BqdA== X-Forwarded-Encrypted: i=1; AJvYcCWOhvZ5HjTqMEVX6nB0Ybb/kavPr+L33akb8PcXMDB7LdtovBaBS3oeaez4uIh59gZz/mWVzIovu9Vzxe4=@vger.kernel.org X-Gm-Message-State: AOJu0Yw/6n+BTljnfnaJrpHZSeJCoYQyZ2zQaEQzJU+sToZstAi+nHi8 OgVpuJf1n1j7L/3cocqXVucJ14VSeNejcRJmk7X9/epqZ/48/kyWBZq+ X-Gm-Gg: ASbGncvfApDWXvgRVnff68BrNOm4iqqUdLXxZw4J9qeL+TbUPpk4+X1kP8ipyOk/Rnr IOpF/fmKp7A1M1e/C0uO1GtR94vj/7wbhEVX516dvVFdZ5np4guZqoP1LnfvgqHbkElYvnNWr+s xzciDdM51oaZml1dGMn4+myWyaXyj4Z/qRQcG5Z2fDzETWSbuzNk9bhFyfcRp7aXy9rJ3zmsNtk V6aVd3+SoZgJSo6dmC9XSKGxdMoTST5ypxfUaspEy4G9PSXWVVkFQhDUlPwy6MkWr4BYACkS8Yi cUV59JvaDgg0M/Mw7BadS/ablNqAzLGPlW6N2vvMcek7D58+gBbFWTbqvZD2B0YbqNiv0Ak/aWy fwO4DqZ+ZCVwdf44lmGtHYuSLEOAsflJGEi6Fj9Q4NVWOT0rojrr234vLPzKkRj29pBEaTYVHNB lIsnCXpTy3J9y/cPeNSYmDODzfgUJ3oCM= X-Google-Smtp-Source: AGHT+IFoQGO9PDCm4ECz2dmGbfHtByr97lhJ001rQjp1vKmp/yQYSvJiggjoTMUmi51CYZSu7pHtkQ== X-Received: by 2002:a05:6a00:bd02:b0:7e8:4471:ae56 with SMTP id d2e1a72fcca58-7e8c5043fe6mr2831153b3a.34.1765078161921; Sat, 06 Dec 2025 19:29:21 -0800 (PST) Received: from HYB-iPCgmhaB8Cy.ad.analog.com ([122.35.77.229]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7e2adc5c355sm9036217b3a.33.2025.12.06.19.29.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 06 Dec 2025 19:29:21 -0800 (PST) From: Joan-Na-adi X-Google-Original-From: Joan-Na-adi To: Liam Girdwood Cc: Mark Brown , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Joan Na Subject: [PATCH v8 0/2] Add support for MAX77675 device Date: Sun, 7 Dec 2025 12:29:05 +0900 Message-Id: <20251207032907.4850-1-joan.na@analog.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Joan Na MAX77675 regulator driver and device tree bindings --- Changes in v8: - Remove NULL assignment when using __free() Changes in v7: - Remove 'default' which is not needed for boolean properties Changes in v6: - Updated DT property names to use "adi," prefix - Reference reset-time-sec from input.yaml and apply schema constraints - Reference bias-disable and input-debounce from pincfg-node.yaml and apply schema constraints - Improved descriptions in YAML bindings and wrapped lines to 80 chars - Introduced bitfield macros - Added parsing functions for EN mode, latency, slew rate, and drive strength - Separated configuration apply logic from DT parsing function for better maintainability - Refactored apply logic to use direct regmap updates - Enhanced FPS slot handling with string-based mapping - Improved probe function with resource cleanup and error handling - Removed unnecessary header files Changes in v5: - Fix subject prefix order to match subsystem ('regulator: dt-bindings: ...') - Drop unnecessary '|' from description fields - Drop repeated constraint descriptions from YAML - Rename 'maxim,en-debounce-time-us' to 'maxim,debounce-delay-us' for clearer naming - Used common 'reset-time-sec' property from input.yaml - Remove duplicate description for 'maxim,fps-slot' and wrap lines to 80 chars - Drop the node reference immediately after registering the regulator Changes in v4: - Remove the 'maxim,max77675-regulator.h' file as it is no longer used for bindings - Eliminate unnecessary '|' characters where they are not needed - Add and modify code to drop references that are no longer used - Remove dead code - Add detailed descriptions for each mode of 'maxim,en-mode' - Rename 'maxim,latency-mode' to 'maxim,voltage-change-latency-us' for clearer meaning - Update max77675_parse_latency_mode function to max77675_parse_voltage_change_latency accordingly - Fix errors detected by running make dt_binding_check - Fix incorrect indentation in the YAML file Changes in v3: - Removed unused variable 'value' - Removed duplicate .list_voltage initializer - Wrapped of_match_table with of_match_ptr() to fix build failure when CONFIG_OF is not set - Updated driver code to match new DT binding schema - Changed regmap_config from REGCACHE_NONE to REGCACHE_MAPLE for improved performance - Added volatile_reg() to mark status registers as non-cacheable - Missing explanation of `maxim,fps-slot` default value - Updated DT binding enums to use string values (e.g., "low", "high") instead of integers - Converted several binary properties to boolean typei - Renamed time-based properties to use standard unit suffixes (e.g., "-sec", "-us") - Added default values for properties - Removed unused macros - Renamed macros for clarity Changes in v2: - Fixed build error due to missing 'max77675_of_match' declaration - Removed duplicate '.list_voltage' initialization - Corrected value usage in regmap_update_bits call - Added CONFIG_OF guards and used of_match_ptr() --- Joan-Na-adi (2): regulator: dt-bindings: Add MAX77675 regulator regulator: max77675: Add MAX77675 regulator driver .../bindings/regulator/adi,max77675.yaml | 184 +++ drivers/regulator/Kconfig | 9 + drivers/regulator/Makefile | 1 + drivers/regulator/max77675-regulator.c | 1056 +++++++++++++++++ 4 files changed, 1250 insertions(+) create mode 100644 Documentation/devicetree/bindings/regulator/adi,max77675.yaml create mode 100644 drivers/regulator/max77675-regulator.c base-commit: 6548d364a3e850326831799d7e3ea2d7bb97ba08 -- 2.34.1