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 92C491C8611 for ; Fri, 5 Dec 2025 04:57:15 +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=1764910637; cv=none; b=R3k3hrhduF1QiHpUbw570TrVuhym+/oACRmf5uTdadsG9EiLRjfSxdJ7dMr4zjf+v2IZaJ1yN3gm+nvio8UI2l7FDV/jvDZLimdE6LcAm1AvnvK67CeJI2VMoH5U59CN5fBAxjqPFLqgQXUG6ODzeeR95oTIg8idpdZR/MuP5lM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764910637; c=relaxed/simple; bh=XflZZ0eJN5i6JYv1ASmATJAojj+Hmfy7X8dXENTM+Lw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=aW/It3I2gnJ0d072tcgdy6lmbMtC5lSxy9KLQlO6iZiG14NBB6HxxPbKski5ApGaFhphF71xZQ/JHvUxo/ZFgNJ5vvEjRHcgGwomJsSf7bv+ZQ2j1qAoyMV/cx4SB4h/dEyMwyRZ6zt6tK2emV6wwxqlGLf2BqMEBy1Ynt9o+mw= 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=MWI5vkfo; 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="MWI5vkfo" Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-7bb710d1d1dso2717374b3a.1 for ; Thu, 04 Dec 2025 20:57:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764910635; x=1765515435; 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=7Va3kjwW6M8pt1qwY5BOxl1vfmDqcPmuW5nN7OD/6aY=; b=MWI5vkfolTBeHdU38m3rmR/jxOV56sJusSAlwT7jSYbsTn91bsjIBlneIsct4eGRAR WsdMx31/YBGrEVe+cAiIlmCeS3x844cDp1T3GttXzwF7Xc0pqBXXMnrBj/zIPH6M5snX ew6JFD4si0zyS3TnAGgdav/+23SuypyhEPdP/kcmg7vRZ5Y2Q65wgYAIs5+sPXM4k095 ECKf8Kk3dvqKHxAZ9bMZY0KAQOBtYf3WE9v7aV0ZdNLfRPL5GhTtoBC609xov1AYC52r 5z5iDft9Vp7zlonFKKPLtuWEeIyWJeFfLl4c6hL8zItZaKnXSDlp3hkCsHhDAGBsv71m jTAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764910635; x=1765515435; 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=7Va3kjwW6M8pt1qwY5BOxl1vfmDqcPmuW5nN7OD/6aY=; b=k+6f/3OjWN5O2/L+H9XBDt4cPYBqvRtQGYnvYb6ikSMget3OWlkcX5c3IhPgum21Qp UqPMbgXXzdQVdQnSA44OC6C4VuYJ1eXtiyMDpLstifOdpbwmq+0QimKob1BpYJdtWZrV 8sfHln5AzZemmEAK2a3mQGFzRPmUykH4FOfGiQLDinqqXagTOCOsA+qen0+iWKNeGqid CnXKDtXAxhtsImMpLOd7r2lSOB1VGaOQ4RpAo10mp1HqsRX7QzgJ5vaeZv7iWmwDSxCv Et9dJdhz0qVOEzhYHB6E2a7xgEQvQcSb7zOygBDHKa9bF5orVfMk3x6+OSsM9x5yI5ff PDUw== X-Forwarded-Encrypted: i=1; AJvYcCWKvaeFSFI0FU6cE7xySgGIIA6fg9Hlz+kMCSsXVOy/PBykzFRbzsMEO79zezdAT1DxpbqwnC/R9EvggPM=@vger.kernel.org X-Gm-Message-State: AOJu0YzscYyB5BinGZgQhCThoPyf2VB7uFChzQyFw1qr6u7e58JFDmpH gcsafL3mi4Wl+LNrvbuCIY/xrvlu1f0vCSf4v9z84SZMxtXavnBTLMA9 X-Gm-Gg: ASbGncvMcGQ6281b/ObsV2zPN0AxPQXFEBt8w1uYJMILXoMvcUNjaitw6W84XWBOtmA 8ldxUliEN3Y3uU58fr+qTTmJDsjOjQaRd3zOAID39TicBft2kdGK/a8Vhc/JbsoEkdte8No86lc 0N3b9/UPo0VEBmAqtjLRF+MxIlie9vg9OMs984JrFONwEP9nyRRf2YJD1aVhpCy94jjk4pjQ1k3 +X5RR73FaYs3HHcsyKCS+89gQm44S6vONlD9eYtYPnlhP8WggSFjnNUA66lvJgoUwuuhjP2Pzdh zytN38HG7cCp/5brgwvwdMZFwxim3CT1MAYSqa2rmhUS2INF4q/0i0j/Cn9TllkIxCNd8A7TnR7 oKzQ92zFhsQ0++hzIEcQ0aTfMRIXN4Cxou193nF1T8qtc2Hqj7AbY6CmGX5Yq3tDqXlI+CchDpr grhfppD1K32ZtuwefjFojP2GJwQ6wLkF89K33uVCS/IA== X-Google-Smtp-Source: AGHT+IEAFmY0PICxcFoEOQoMQveetc+y4f6Ig0b7mZ8ZuucJLRYEcJgLiLSCMbsPEiftqgQZkC6U6A== X-Received: by 2002:a05:6a21:386:b0:364:1425:8099 with SMTP id adf61e73a8af0-364142580b5mr1643368637.24.1764910634843; Thu, 04 Dec 2025 20:57:14 -0800 (PST) Received: from HYB-iPCgmhaB8Cy.ad.analog.com ([122.35.77.229]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-bf6a32deff0sm3315936a12.34.2025.12.04.20.57.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Dec 2025 20:57:14 -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 v7 0/2] Add support for MAX77675 device Date: Fri, 5 Dec 2025 13:56:46 +0900 Message-Id: <20251205045648.3725-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 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