From nobody Sat May 30 12:35:57 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 992E3376BD1 for ; Fri, 8 May 2026 06:17:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221082; cv=none; b=Rr7OV+pKd3/qkBjZif23z6L2YtuY5X6ndJOrpkRuw6a67c/WiUJ1Id9uXivQVyK6wkuNOA2fYVpkCCgiIhIGlEN4Ft2eKlyhYyb+Nkf1xVNyYBUX69ZlzaMLpiGSbBqs/rvU7Gmb6M7Qp3Dsl277djfQsJccTxPLJmZz9p68pDE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221082; c=relaxed/simple; bh=du9luptkF1RMPunIoS83NkddF0URQJLyQE4jUAhjG3k=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rleFj73h8aCJ/mIEqGZF4YGsUdHQYHzgieXb1zEyr6NR6NZkEzlPSAN80c4W0dllO+hJzURFmSqAMOCyVoNUQws00Z9mHQ4bImG7Q5KPpGrTxGEofKzAmetBhCaE41MLLRYAQqTNS3FEzu8JwH6tuLOmoicooQ/2ap03u0ZAxEI= 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=ecBLSQ9c; arc=none smtp.client-ip=209.85.128.46 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="ecBLSQ9c" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-488af96f6b2so18476375e9.0 for ; Thu, 07 May 2026 23:17:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221071; x=1778825871; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4uJNehFBwWP73FrSYeNJ0QcPue1v1GrVxPAkYJ7F8Go=; b=ecBLSQ9c9E9LN5q0HiJE5FftLfU/1lntaTDOdkzOiKTsuWPre3qo1BVdPbGq7RlGnB fC4FUUZTXVfN+hMfwKHA5DfOB+30tegtvSS3l9AtfBsnN/GPRw69t7adUNa+pwRmGvmJ QIZdN95WWH+NMa0JcYHmMWWSRY6O3vvgYIICWUEJYOhNmZxfy3mPdPSNyhzatDDPAuzC ljBpLXCS8YgmTM7wfj0LQbDU7YHftaQ8jUCfiO+IGGBGz7aPZsLuPYQXhNfrHjQvd5I0 r67EZ3Mqk/UFhbPBzwTUB/sQvtOyZtITzXCBYE3dDe3+CUgBPa6GHzrkJ19x9xWOe45G jC+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221071; x=1778825871; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=4uJNehFBwWP73FrSYeNJ0QcPue1v1GrVxPAkYJ7F8Go=; b=WQie/lTGIFy2/PzW8lwPGrBEWv6CpJEin36pw8KIyq+HQVKwnKE2qpzSn3nlzhWFWi dqyy7Zw+c6bX0VkrPBDNRbUwgzBMGi8y2gyTJwCRddPr5Z9LKveHPt/QH8qHk+SdHVYv tlCKxKb9jyHilpSmAAEkz/mUQofRgdlssXPiqIh+LRfjS+t7p/wnAdvpAHnjd81nMxBc JvZdnZOGA2v8h7zZNnoljqsahjFyvNjpk28Fqz1x6vsxi1D1nHgLIkBAuJoUpe4GDrvA dPZjf3EplcyrLoK1sRgpQZDPq2Aub27YeiqNNagqsGQd18YWg1ADrZiOJXcOXSI/BZCr pFgg== X-Forwarded-Encrypted: i=1; AFNElJ+2XCJmm/oQLOLs+MXJZHZZPVgEw3e/tW1SjblvAN+IGX8vAyCik5PGnU48+Xub9j5jr/71jPRqPzDiQTk=@vger.kernel.org X-Gm-Message-State: AOJu0YwJMxBXRyrL2oWdPQOYXNG1O+dNCRv145vJzCHlv0/ah/OBDCj+ CN9CZH8kMrs1xVJ5ICzYc0vc1LXOczaJ0y/GDdQjld1n+mpNmJg42Pxi X-Gm-Gg: AeBDietuXoY6jkWs43HYDSO1vimZeoh9tz1GdqKmEGEPwcQud9Ia1M571ChLekTQa2Z kgiM596mx688xmpwE8Vx0ipa8IYu1/xFCGqCB5Vz7aZAemrhI2t8LiWt1Dad29Mo5QdnG+leM8z TVbr+Nv6hOb7xRa8EIIMNBtpzV/FxuAadEqQ9yFypEavUrMkTH1Ca71SBU311IDhuInlaS4b9vm K+7359eXJZUvP24jEb5wLV+Yi3IDDoNgyiCvXM2HwCXYNODFcste69eOMAzpM4ncnfu2kuDnVAb YSeOxizXA8psyu5RbEawFwiehFnZdpTQ7lcMGHmRwqJLe4v0g9R5N77xK8uUetec7cM2GA5q6L/ cTAFrX9GelJWoUgxNCPDDpq54ZWW1MOdr28EPHOUmVt9KQN5SAA01MADkiJ6euqIIZfCK6uezp5 cq/TY3DNuSpQQlSIE= X-Received: by 2002:a05:600c:3ba8:b0:48a:7676:30bc with SMTP id 5b1f17b1804b1-48e52bd5035mr196450835e9.14.1778221071083; Thu, 07 May 2026 23:17:51 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:50 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 1/6] ACPI: Move DEFINE_FREE(acpi_free) to global header Date: Fri, 8 May 2026 08:17:24 +0200 Message-ID: <20260508061729.9530-2-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Introduce DEFINE_FREE(acpi_free) in include/linux/acpi.h to provide a standard way to perform automated memory deallocation for ACPI objects. This enables the use of the __free(acpi_free) attribute wherever ACPI_FREE() is required. Signed-off-by: Marco Scardovi --- include/linux/acpi.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 67effb91fa98..f58e704ee850 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h @@ -234,6 +234,8 @@ static inline struct acpi_table_header *acpi_get_table_= pointer(char *signature, } DEFINE_FREE(acpi_put_table, struct acpi_table_header *, if (!IS_ERR_OR_NUL= L(_T)) acpi_put_table(_T)) =20 +DEFINE_FREE(acpi_free, void *, if (_T) ACPI_FREE(_T)) + int acpi_table_parse(char *id, acpi_tbl_table_handler handler); int __init_or_acpilib acpi_table_parse_entries(char *id, unsigned long table_size, int entry_id, --=20 2.54.0 From nobody Sat May 30 12:35:57 2026 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 12BB636EA9A for ; Fri, 8 May 2026 06:17:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221080; cv=none; b=g7m2xLKP1hz1GRg8VYmq53lDrx5Rd536QzbtyBdcsVFK8ExrOMRGUqTi8VGaMzjYS4/cfiZv8DfxtB37B270evoNa5Uq2aIhg/745h2zw758tCICBPQR/wBhl/luF6vPmS7EmBE/mlMGYF0US0DxZbjxGNV8xomemFGn53lwS14= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221080; c=relaxed/simple; bh=htgG8agL3qgdrhV6usqBHzQ8yuuUnR59c7IpqR6aYYY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ajUAgfQWiXgq+rRjQAAi8g7g5En5FhQEp1WZ2T89pgZ1nw8qEJ7fPVFsp4v84a5JnJDGSB3TasMRqpmH7bUR4MSxM3TLM2/0lcOX8lAt9XWa1QaSwDWUxnVDRFk74JvDstne+FeiyR9CQgCc57liHijFOe+vej0yNi999zwDFx4= 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=AyS28LDH; arc=none smtp.client-ip=209.85.128.49 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="AyS28LDH" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-4852a9c6309so13641025e9.0 for ; Thu, 07 May 2026 23:17:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221072; x=1778825872; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=kuh0TWbP7Q2PxqCNCqYvtEE1jwhkHwY8twT6/h1P3VM=; b=AyS28LDHAL1+CprIFjF4DZxtxibzVwoBEReC/4UthEhmYO6nM0HMm7CQ41LAVTvBGu RFZIKJpjI7ayh+EI9Um5M5ER0IMD9+80ja6sMFIO+I2tzZd2hxwvoj/POIXaTIVnr7Hx RbZJcBwoTPoHoBQ6dNhn0YUHb8eGsU3SWJEVHSRCFM86D5DxWfxKIOcaI74x9UVyocuT XXqW4d5mkEqTZO154+TFfqVU8Y09IENNP0KBUqFNLkrdlJHCp9It8rMVvwEXpT08ebik UcssL2JT0zeIm+gnpN7JxFaHxhraDln0blTkC+FC01jUIFsA0ZULVhFgMdgs6iEsm/aj IaUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221072; x=1778825872; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=kuh0TWbP7Q2PxqCNCqYvtEE1jwhkHwY8twT6/h1P3VM=; b=Qm7OK2fv8GY3Klb+RcEEG4Hemz49X9rBALVwbs3v++jU89cFpgeHLkpPH7A5vdNGcO NolpegY0KuASuFgj7jqOM3jz9HltVy6w15sHvdbZARM5icFacPQpC+shUaBn60qtPJut MWbdUjkaTrDYuriI2b48TwMMnSLoJ6p3syULS6FDGjMyjlQhcAvm3+X/dw3iES+sZN+q vrxqkvzFK011Hilv8wmpTinyfohPBdavrwuNAMA/wD81neN+R6Wel6vJ/UtTs6CxToUR 6/n41qqUhvr4I603iX5ArQkLWQu5Ll0NXn54WFIYDK9/wv1Oe30yohHtsu5Yq4WOaE/7 ufWQ== X-Forwarded-Encrypted: i=1; AFNElJ9DTAr8Y7CXZ7qp08mADyXJy3hkC8DdDvy+l7ZdIVWX/Z0lbBixsEDtC61W10Gxu/y1JLSuBXcC6ogPUaQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxVatAz1tr0B5dTVKhaVRHGW1qoBhcwv3Ifzx1uglYYGPlP7+Pm FVs2ePTPE9Y2QoS+iqbx0bNCFjhgi8smZxQPpRgDW27GOhkHOTioAmxz X-Gm-Gg: AeBDievMIxRFGP+vI+U4jXkUgo6ReDtzQ6nbozcR0ebNp/JO7uQTJdNVXA+3l9+miey fdhLBhqUHhNXPbL6Ux3n5BV0plU12oRQauTO/NpnPI9J08r1VT5Tulnxz+/pf2W5CnCr4rps3X9 oMeWD5cdqQ1WRXlnyUTR2CkTWpR1pSsPxPcNeMBwboJftGQS6QZRyXNpRm/0f2cgUsovRE2Sm+w H7LnxtcVbDV2kmmZ+axRqF4XqCQokq8j3AGhewxH+xmsQM9iZwuvAxul3ZgBjYDcTugSLBLUOVp m4X0TEzEskyKsV+HZo0l97IyySXfrA1HloMt+e1GR9IeJvHCAwVj6DQE9U4b9PJXGFz2IRzxeu2 aMCxhmp9DYuD6tJlbfG69XCxHj+Po+gNB6dL3SVyyoZlqtlV/PX/FUGKQ/DiWD4Pf9FeLbeTQmV dh61xh60yejixjR5Q= X-Received: by 2002:a05:600c:4512:b0:488:ac01:72b6 with SMTP id 5b1f17b1804b1-48e51f3a538mr171437455e9.21.1778221072181; Thu, 07 May 2026 23:17:52 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:51 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 2/6] gpiolib: Move DEFINE_FREE(free_gpio_desc) to driver header Date: Fri, 8 May 2026 08:17:25 +0200 Message-ID: <20260508061729.9530-3-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Define the free_gpio_desc cleanup handler in include/linux/gpio/driver.h. This allows drivers to use the __free(free_gpio_desc) attribute for automated deallocation of GPIO descriptors obtained via gpiochip_request_own_desc(). Signed-off-by: Marco Scardovi --- include/linux/gpio/driver.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 17511434ed07..7ee65b49056d 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -807,6 +807,8 @@ struct gpio_desc *gpiochip_request_own_desc(struct gpio= _chip *gc, enum gpiod_flags dflags); void gpiochip_free_own_desc(struct gpio_desc *desc); =20 +DEFINE_FREE(free_gpio_desc, struct gpio_desc *, if (!IS_ERR_OR_NULL(_T)) g= piochip_free_own_desc(_T)) + struct gpio_desc * gpio_device_get_desc(struct gpio_device *gdev, unsigned int hwnum); =20 --=20 2.54.0 From nobody Sat May 30 12:35:57 2026 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 7EAF63750D7 for ; Fri, 8 May 2026 06:18:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221088; cv=none; b=olNb0yES2imxicBBTSaaygh/cVgV2xuodOdEEXz+kWTnTnJmKr5ZPf80eAuRxLIthxOieesuAl+Nc0nDuzpmZ52Da+8am66NVMd7e8CjAJfSOshuuOyhM+iDu2mXGCqETaYh2qbMYyhfI7vxw2A6p6IiXlq+WdJpJOZtCXqLGp8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221088; c=relaxed/simple; bh=fne91szarOWdIvniaI9+UEt6vpPwm2FRb2JS2VMwdb4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RcCkvORFUFDQrRCcbhT4NGBw3yZwJxfjSSiDnwVTfR6nWlSw/9Z1+7tv1VNtWPbyeVKO2/Jsm8uOHWuyIXt7XZz6PqvEfMRCngiJzlNh/tt1UkaBKKsJO/ITTnbRngYCByUy4E2txiTyrD6bz+CcxoLNtDPeOrjJpYomAaza+NY= 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=VHGrunoM; arc=none smtp.client-ip=209.85.128.51 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="VHGrunoM" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-48909558b3aso18868805e9.0 for ; Thu, 07 May 2026 23:17:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221074; x=1778825874; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=btkeAG5X+48Uo58rvevp6gJltGqFkkONHOsVscYaKek=; b=VHGrunoMVLtvYYt6xSKBzpp0Wi1jszQ/g6/9wSP8iLL/8CThUZwcFCId+4lQXny+tO R6Oap6ho7m4jTAXjKCbdOoLRWtkg1qiNiPgmnu+ziKttUKQU22TIJG9RhpQtpRVBJDQn Bg7CcF37vorUbz7gcJ8jZogys+vOFViKwaq/je/SCDa9DJVKBIw99U0dJd8rLnNfMhQ4 FOh/7H7PtUJKqXXMmbXI/r8Em3p+omxnCg7J6Rhue5VDcUGJsGITBeOO0vVM1gSfwKeS A7Csr0PIEWK6UF7/ZBUV5jrIrV9yzHLYfwAxXy/ix21qBZ5uJBJsSaFdx1XEGN1vwIhT kp5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221074; x=1778825874; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=btkeAG5X+48Uo58rvevp6gJltGqFkkONHOsVscYaKek=; b=KxFNDR6HX4PRc0SQKT/tEvvdV8UmVgFbEBJx/jj7orquSxwzHNnNVUNo8xUlA46Fgk 2xXjnRzxS2HxK/EAL0pAgD5Z8GuVUCOOJ9R6vdoU+VU9wc56P4XP2K/abFokstB0cMaN vpa4TDOt75g2Ja5oDwU3/I1fe4BSww3NE9gdGeS/P4qIRQ6BhaRfkdRIvuHHPFNFXC27 bZNHpCOi2ojaZc2KvuvyY2cQ7aXqq0oWEvSWu/CslTOdTfgp+luFTaFDTAXoFMtI2NkR fNvKCJYz+BcD1KnE6ztYyrbXmBbXTq+rkUEIF2YiMbWZ8U4RiuoPvqvFK+cmwIvS6a+S 01eg== X-Forwarded-Encrypted: i=1; AFNElJ/oaVv9QAEalyxK9dZ3AHzO4r5A+W1RDEqAWRk+MnvPRHh0ZkF+f23sYRW0oyUXLusFrQ+tuzh9AEyGGxQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yzi0b+8eduyvB2Bdhacs2RDNUdN++WSq2h3tEEVL1AN0Zui2Xvg kvCMh7lwfyCR5oz+08aAbjq3uSwOZHyqiB62JVDxL2FLK7OkuVn8U2xs X-Gm-Gg: AeBDievE3lDLhI9o97irl4RBHOAPIA5v6FMj74Rsg3cXxYHsc5kpjdGjg0LuDcrVQbz KyH8WdAaxcPaI8Amgn9ubwTQzaA74MwYJRU7X1F0C/M7QGZhhAxCLk1rXz4Q5Uch/L/nQ52o94j cX1vvIfYRVleVqv6/eLcO16FEuBy8dETrvWTk4L95VsTIjwOBLWB6pVKeoBXI9t2k/ir514gD7F OR0JGF+fyY5ZJJUp8RvDQpJYD41BOrH46yyrEDDhtYc5gi2xeJzSCNvDpILaMsxchVL28BMbAU+ doR1qsrpd2mmW7bRMUG3iD3w9cDpI/aobUTI+mDaTxTWkrgMU2ZffkElNo0lgCbR3/t3XXyPIWT lqBoCTK/pEr7OrpakOIRWFzQ0jWGhuOhbkXR10X4by8AZqZXezYJt9nkAZMlrcntTKK4oVf6PAE PXMr58Z9kwBLoEfBE= X-Received: by 2002:a05:600c:8b65:b0:48a:53ea:140b with SMTP id 5b1f17b1804b1-48e51f4e5fdmr200842415e9.28.1778221073991; Thu, 07 May 2026 23:17:53 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:52 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 3/6] gpio: acpi: ignore out-of-range pins in acpi_gpiochip_alloc_event() Date: Fri, 8 May 2026 08:17:26 +0200 Message-ID: <20260508061729.9530-4-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add a check to verify that the pin index retrieved from ACPI is within the valid range for the GPIO chip (pin < chip->ngpio). If the pin is out of range, an error is logged and the function returns early to avoid invalid memory access. Signed-off-by: Marco Scardovi --- drivers/gpio/gpiolib-acpi-core.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpio/gpiolib-acpi-core.c b/drivers/gpio/gpiolib-acpi-c= ore.c index eb8a40cfb7a9..e53d68578024 100644 --- a/drivers/gpio/gpiolib-acpi-core.c +++ b/drivers/gpio/gpiolib-acpi-core.c @@ -370,6 +370,11 @@ static acpi_status acpi_gpiochip_alloc_event(struct ac= pi_resource *ares, handle =3D ACPI_HANDLE(chip->parent); pin =3D agpio->pin_table[0]; =20 + if (pin >=3D chip->ngpio) { + dev_err(chip->parent, "Failed to request GPIO for pin 0x%04X, out of ran= ge\n", pin); + return AE_OK; + } + if (pin <=3D 255) { char ev_name[8]; sprintf(ev_name, "_%c%02X", --=20 2.54.0 From nobody Sat May 30 12:35:57 2026 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (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 8187B37881C for ; Fri, 8 May 2026 06:17:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221087; cv=none; b=Gqn0bIcxkTWOPfTktHskqQxuicNUIyDHJX6Z1R4F9UFzepVxzjHU+3MYhciQ+gUL2W7jsj3g/qHtkfYypNcd9QBhT7ZsbZVVFJ+Y2iQLcHZP//mQO1NHZ9eDI+MLSvpxOOvgohjQN8jivQygBDzxC+KeNRXA5Tn5dwoWm/oNfPM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221087; c=relaxed/simple; bh=iAz3jJlPBsba8da3kwjpUIhKKIX2c5o7oUegAZLaLs8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZBItSGE0YRTNXfVgAADJIgHyOzxQm9G3yPWjUxMuS2oFWEV8HJs+VHRp4kGUY14fOkK3sfzAqWYNU8XcTogcn99eyPvLI3FxUcFY3vKcoinbxK4ZBqk8gD37VR84x/d6SIAmtK2i1PewYEx90/ZB7kI5HZHSeXAArqnm58Oh7i4= 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=bZLlb5Xm; arc=none smtp.client-ip=209.85.128.45 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="bZLlb5Xm" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-488ad135063so14004515e9.0 for ; Thu, 07 May 2026 23:17:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221075; x=1778825875; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=7/HBkO+y62XsV45mtLzlDevXxl0xhhsA9eRibM5h14I=; b=bZLlb5XmFI5aUFxtUyQJyuZaE3fA3eA3C/SAu+k5kxhItC5EjvAhgAUvCjqJ9kF+NY OzmFlXPYXSCe1jtrSxsLYiu0u7goCAbg1pu3FLUI/nFEgrDwRX3T61Tfx+VJoRWG94QV z/tRN/WsF3ab6LItv1YThZycu9mDO6lmAJ7xWzveADTpHhKJliDuxq21hs2wSb3z0l/N BpQiYVEQpTGvApanGRWRu8NdJd9qDCFrgGGy/rsGD6MxE+hjMjscTPOSvS96PXk5YpB1 gG+j45kP010HTcQ790KDFnIDOXQhxb3rk8VooSS1gQYlmPmt7NO9In6TK0661I1QydKF 3qFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221075; x=1778825875; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=7/HBkO+y62XsV45mtLzlDevXxl0xhhsA9eRibM5h14I=; b=ZTs9sQbrrGxASzpkY8zGNXDmbYvpEZMe3HoYxyix5S3txVbw5P7z80AIqGrjG9CqFd unCCQmCL6yt74d9qWI16/Bc0KanJAZHX3Lzc6zjfbPtzuCucuubzGtSH8JQQmlPjdD4g 9Eitw3OlxeEBkTifmqpr3QDgvYMi/OkDN/+qECgTn73m/ZgZpEo63k/QXbJr948fUV3Z G5YS9u25BW+WC5ARHBsCKaWBEBuSB2t7mIbBZq57iQq+xdaAeaXml6/xT629WmDhetdp 7a1CnQTlE7EZpx1hUQT/dRIxzgkGNS7SMGlxXUD3wTtr0WEcURl/QZIA1gVTRVlRdk+A mFSQ== X-Forwarded-Encrypted: i=1; AFNElJ/xiEURVR7YCRoPN+osYnuY+yUh6aRZzxeKe1NYghXlva+n/LL3Tb1/i9qomVdednL4xYTQ0gIT7PQ9060=@vger.kernel.org X-Gm-Message-State: AOJu0YyytXRvUJ2HC5/FnnGJ4Pds22LAWYR9KDFDK5jFwTi+NLAW3eVP LdTI++PxAmRLtYdAax8P+IGeRzIpzWpIGd+aJPN0gBoPTKQteh5dJKUo X-Gm-Gg: AeBDiet0slPZef8dDjBiVbtQWInWt1ekyOU7Dq7/PxtQZGHtSffdriHGTfUMUsJlVaq sINFOf8ZatA5ZMLDyRuR/bwu06YSD1lIY4jLEgOpG+guOpaUJmxm0TSH07A39kfOPZpUmr4xNEL TdU9STK9MYEBFlTX5Aw1A5I0QfcSZITIps7zMhj492uTQHnQiRkzqqSSaXbIm2q9nepEXWI5GB+ qYtoanXWrIc+OYYzQfJFJVxXoj2s4iGz1XHZQCwxNuCKebYDJjcA2kePahKIc6mx6bXb40mYrLb 86kzTgtJHrOVoJfm/hCUrFsRhJOg3Z1eCjAoJc1mX/wwv7MKxcpRVd2FfIwtmE3B5wJnxctL2aN TnMImYJPG7aco+euiRQKRFAU32EvD2/a+spughy/sTV1ZefL7rt9bEfNqT8KwI3sRe/V0h3OA0k suSh5W7rXc1+gsI5OdhvASzYI/ow== X-Received: by 2002:a05:600c:3f18:b0:487:2671:fb8f with SMTP id 5b1f17b1804b1-48e51e19668mr170774595e9.8.1778221074930; Thu, 07 May 2026 23:17:54 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:54 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 4/6] gpio: acpi: use guard(mutex) for conn_lock Date: Fri, 8 May 2026 08:17:27 +0200 Message-ID: <20260508061729.9530-5-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace manual mutex_lock() and mutex_unlock() calls in acpi_gpio_adr_space_handler() with the guard(mutex) helper. This ensures the conn_lock is automatically released when exiting the scope, preventing potential deadlocks and simplifying the logic. Signed-off-by: Marco Scardovi --- drivers/gpio/gpiolib-acpi-core.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/gpio/gpiolib-acpi-core.c b/drivers/gpio/gpiolib-acpi-c= ore.c index e53d68578024..33d6c3b6cdf0 100644 --- a/drivers/gpio/gpiolib-acpi-core.c +++ b/drivers/gpio/gpiolib-acpi-core.c @@ -1123,7 +1123,7 @@ acpi_gpio_adr_space_handler(u32 function, acpi_physic= al_address address, u16 word, shift; bool found; =20 - mutex_lock(&achip->conn_lock); + guard(mutex)(&achip->conn_lock); =20 found =3D false; list_for_each_entry(conn, &achip->conns, node) { @@ -1155,17 +1155,15 @@ acpi_gpio_adr_space_handler(u32 function, acpi_phys= ical_address address, if (!found) { desc =3D acpi_request_own_gpiod(chip, agpio, i, "ACPI:OpRegion"); if (IS_ERR(desc)) { - mutex_unlock(&achip->conn_lock); status =3D AE_ERROR; - goto out; + break; } =20 conn =3D kzalloc_obj(*conn); if (!conn) { gpiochip_free_own_desc(desc); - mutex_unlock(&achip->conn_lock); status =3D AE_NO_MEMORY; - goto out; + break; } =20 conn->pin =3D pin; @@ -1173,8 +1171,6 @@ acpi_gpio_adr_space_handler(u32 function, acpi_physic= al_address address, list_add_tail(&conn->node, &achip->conns); } =20 - mutex_unlock(&achip->conn_lock); - /* * For the cases when OperationRegion() consists of more than * 64 bits calculate the word and bit shift to use that one to --=20 2.54.0 From nobody Sat May 30 12:35:57 2026 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (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 07B2736D517 for ; Fri, 8 May 2026 06:18:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221092; cv=none; b=Kf5zH6SSqV+1S8V9UnGA9nuh3BfGeKwm8rAXADpFCEHTY6rJ0qr5NpbV+qCMvmqW5nIjj33s/scZOjttsGRmyfo/Gr8w8+VQE1Zs+tw3i32W1EXj5gl7XOAZvTzT3J/UeYtU0Qsg6qEAtKGVNtk0bFMIV+DFVEQmIPdRzSKAhF8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221092; c=relaxed/simple; bh=vXzQCDc9L1TnkgaJ2V/CUD7F8PnBdDZXe97ITMRJsds=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Sp7dKQS7E8IgpClli5QLDR7HXb7Y1NjPEytC0p/ksZGG5KRhTu2BzXBomKkboWQ1mY3Me9CoNFF192L70xKDBII6e+8hp3cCmh5LYtoYhS6SaCszz9dCn4CHEWxwJHpiBPd9KLsKWXTnIf+TZblyv9RYVwSjX4Z5EO1AGMEQbCs= 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=JTMjZQta; arc=none smtp.client-ip=209.85.221.50 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="JTMjZQta" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-453903ee4adso1094986f8f.3 for ; Thu, 07 May 2026 23:18:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221076; x=1778825876; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bw5+LRl2yUPLo+LV3S+sRIQay0YVPQ+KYOpW/ni1u98=; b=JTMjZQtaWmRHnFRdBIIPiIGNhMsXF1muMTkOcRVwcGVaN1/8uzU6iGjXvKQ4ZzKHtp gZ+ni/WMUaNcQOE6nLe/yHurfpVTjb0m/jgcKz746mgZ9SAwK1Y15W6W8qChrFMaj4ju uHgUCQycedRwT9LrFAv83T5Q+sxkLPqIXft7reU3BArExS5T67o+E8mkzVr66SisAcTd RksP+4pYAjFS4IxafY/dSQXSxYdVGb7yrwfVrvaec9MSS+1Q5FBNYu8mC64wAOOCYpZ1 FOft/Rgqz/RyXr4c1JCJqyA8iP3m481ImUO+eQrioLyz2/NVz3Rco3OyCwrdaT/aWHfW H4iw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221076; x=1778825876; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=bw5+LRl2yUPLo+LV3S+sRIQay0YVPQ+KYOpW/ni1u98=; b=PvzAx+A4a6Ffxja58XVaPpVYEwCymoSqwnuv8QhVKAVmjxjxQiUrw/pGeIXCfaAB3P PIa2db0R5sD9WOm2Yf5ODwIP1hgIisGAY3KNdMgIbcgPuD9ApSNCI+YYFcWODqq9MHlm jSwzf13WWmbNUVN8F0DZRGhUhjhrge8VcFgKdcqf//qh8I5JRVs1hiXLgE1mQBeSeoWl qoSWkOcFD564VQHodipaT5LHTc5q5VT2ZFjXlRK1S6mGh+d4BS3oZ3Qa/YBu8HoPzEgR 6YyR2tjlF3+TYf4OFFZpYuFBjLDF3ZCjbB8PxQ1WjUISIGw0wB80pdW3NK08MzhOe3sm ramg== X-Forwarded-Encrypted: i=1; AFNElJ+BR/DyYpl1rg4uing/PHGVV705pzGTFZ3OtUdfzx/lW7rWMX4QdnoPxcQ99c202Me3TGajfgzQrzwHWxs=@vger.kernel.org X-Gm-Message-State: AOJu0YyOiycyG4at5Fb9+U+OM2DOzwttMVTEBDTsdIPxlS4lmBJaDQme rw2fkDwzvaC8aWcZW7hWrcIlT6/aG8OQ95AmmvPCRSMl61/1p3vv+Fgb X-Gm-Gg: AeBDievnj9+9WMPcd+SAxCnYf3VKhmUzkLUWAxds4QDEKqpbtXCMCdhz/r/iCu2uf4C ujTV2zn9MJmWVF/+WdFt81OyyqD0m5KrdqDqGT74cjJkrGcWCef+QO/pQxA2TbyUG9/1pATLReX tvtpNP+kwgzoR/5u7Io87/o/Li+apdRDVSHqC//NOXD/A2xunNxxFiJZ3U6WEKFn4YsiPMvdUHD I3k0kV8FzLbMiZMapIABN7yTmahntH+XHdo+yyY3TMa/j0uIto3e4Nn0ramP8sj/YQxQvLElJnK TWk97femy8wjHI35yoI3st4f25mv7v/hzgbsuXg8FDCYrwS5el8S8PYtEWix7Svvex1d5C3jsl8 jTFWzZTwCyG+MTgv35G+Qs/NUVTCR+qaiT3lfgdR66lEtjTlU82j8q2gtN25Tgz+Q/7w8HvLhmP XxX2lUDLNM/LdhkLnGUGTgBWJx1g== X-Received: by 2002:a05:600c:3b17:b0:48a:568f:ae6d with SMTP id 5b1f17b1804b1-48e51e15c37mr163854705e9.8.1778221076095; Thu, 07 May 2026 23:17:56 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:55 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 5/6] gpio: acpi: use cleanup.h for automated resource deallocation Date: Fri, 8 May 2026 08:17:28 +0200 Message-ID: <20260508061729.9530-6-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Refactor acpi_gpiochip_alloc_event() and acpi_gpio_adr_space_handler() to use the __free() macro for GPIO descriptors and ACPI resources. This simplifies error handling by removing manual cleanup calls and reducing the need for goto labels. Signed-off-by: Marco Scardovi --- drivers/gpio/gpiolib-acpi-core.c | 40 +++++++++++--------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/drivers/gpio/gpiolib-acpi-core.c b/drivers/gpio/gpiolib-acpi-c= ore.c index 33d6c3b6cdf0..c9b12e24de14 100644 --- a/drivers/gpio/gpiolib-acpi-core.c +++ b/drivers/gpio/gpiolib-acpi-core.c @@ -397,31 +397,27 @@ static acpi_status acpi_gpiochip_alloc_event(struct a= cpi_resource *ares, =20 desc =3D acpi_request_own_gpiod(chip, agpio, 0, "ACPI:Event"); if (IS_ERR(desc)) { - dev_err(chip->parent, - "Failed to request GPIO for pin 0x%04X, err %pe\n", - pin, desc); + dev_err(chip->parent, "Failed to request GPIO for pin 0x%04X, err %pe\n"= , pin, desc); return AE_OK; } =20 + struct gpio_desc *desc_guard __free(free_gpio_desc) =3D desc; + ret =3D gpiochip_lock_as_irq(chip, pin); if (ret) { - dev_err(chip->parent, - "Failed to lock GPIO pin 0x%04X as interrupt, err %d\n", - pin, ret); - goto fail_free_desc; + dev_err(chip->parent, "Failed to lock GPIO pin 0x%04X as interrupt, err = %d\n", pin, ret); + return AE_OK; } =20 irq =3D gpiod_to_irq(desc); if (irq < 0) { - dev_err(chip->parent, - "Failed to translate GPIO pin 0x%04X to IRQ, err %d\n", - pin, irq); - goto fail_unlock_irq; + dev_err(chip->parent, "Failed to translate GPIO pin 0x%04X to IRQ, err %= d\n", pin, irq); + goto err_unlock; } =20 event =3D kzalloc_obj(*event); if (!event) - goto fail_unlock_irq; + goto err_unlock; =20 event->irqflags =3D IRQF_ONESHOT; if (agpio->triggering =3D=3D ACPI_LEVEL_SENSITIVE) { @@ -449,17 +445,15 @@ static acpi_status acpi_gpiochip_alloc_event(struct a= cpi_resource *ares, event->irq =3D irq; event->irq_is_wake =3D acpi_gpio_irq_is_wake(chip->parent, agpio); event->pin =3D pin; - event->desc =3D desc; + /* Transfer ownership to event, prevent auto-free */ + event->desc =3D no_free_ptr(desc_guard); =20 list_add_tail(&event->node, &acpi_gpio->events); =20 return AE_OK; =20 -fail_unlock_irq: +err_unlock: gpiochip_unlock_as_irq(chip, pin); -fail_free_desc: - gpiochip_free_own_desc(desc); - return AE_OK; } =20 @@ -1091,7 +1085,7 @@ acpi_gpio_adr_space_handler(u32 function, acpi_physic= al_address address, struct acpi_gpio_chip *achip =3D region_context; struct gpio_chip *chip =3D achip->chip; struct acpi_resource_gpio *agpio; - struct acpi_resource *ares; + struct acpi_resource *ares __free(acpi_free) =3D NULL; u16 pin_index =3D address; acpi_status status; int length; @@ -1102,18 +1096,14 @@ acpi_gpio_adr_space_handler(u32 function, acpi_phys= ical_address address, if (ACPI_FAILURE(status)) return status; =20 - if (WARN_ON(ares->type !=3D ACPI_RESOURCE_TYPE_GPIO)) { - ACPI_FREE(ares); + if (WARN_ON(ares->type !=3D ACPI_RESOURCE_TYPE_GPIO)) return AE_BAD_PARAMETER; - } =20 agpio =3D &ares->data.gpio; =20 if (WARN_ON(agpio->io_restriction =3D=3D ACPI_IO_RESTRICT_INPUT && - function =3D=3D ACPI_WRITE)) { - ACPI_FREE(ares); + function =3D=3D ACPI_WRITE)) return AE_BAD_PARAMETER; - } =20 length =3D min(agpio->pin_table_length, pin_index + bits); for (i =3D pin_index; i < length; ++i) { @@ -1189,8 +1179,6 @@ acpi_gpio_adr_space_handler(u32 function, acpi_physic= al_address address, } } =20 -out: - ACPI_FREE(ares); return status; } =20 --=20 2.54.0 From nobody Sat May 30 12:35:57 2026 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 AD1972D3EEB for ; Fri, 8 May 2026 06:18:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221092; cv=none; b=SKF4l2loE04t1M4lOJu0DSAOlWB9tu+N+8in2mTbVxGHZmhHiGw77Xn/PJZbTwUK8DWEz1RDGzwmVTIQ0xU8u2Z4SXyQRy2F8IxJrrb+7Ig+6Ce5sBjKHE+3ltGj3i6jmpSfatyieyjXCpN1T/k34FstZnEIynM5bqp0SW8yqaw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778221092; c=relaxed/simple; bh=/DEFkIW9I9NwWWfUVQdS9qd8W0IKdC3W81KyiTB7ETg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pq3bIgoh7sRMjMXSNl3SessdMJ5MdFnf6UtSv9EgTh/PbDjDZD4OfCSYpfj2wN6YhIw7Hri5gyxzyeqsMKMWhbRSUouu4gUZ0F+eG7tNWZqatSnra9dBMsEMqpdGyYjLscFXyuaZYK0vA3B8AGT/StNnKaD8P4xqIKsFFwza5/A= 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=Nt0yV9oF; arc=none smtp.client-ip=209.85.128.53 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="Nt0yV9oF" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4852b81c73aso14605175e9.3 for ; Thu, 07 May 2026 23:18:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778221077; x=1778825877; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OIgsaz/80F7YVh1co0erXVe0CBs1zSzj8RjSOOEqAps=; b=Nt0yV9oFYvcQdlpIVcBPIz+S5V2AVdvo7OlCMwpxJqakzKRFYEx0wGQl5QhioNGAee uYQf4GifnjFC2J7xiOFL03dCy0Lm8dVkAwOQiyWQ8nu2SZNyrCMTzzUsnuRGggxF8r8O y+c/u+50RjxwwLVHGKBW3899cvNsVoqWyKBImuwtGR/Iy77UFR2zMhLoez48TxBDRJd8 J9r97uEyipw/MCfrC+7cMGkRUamWEM/29FZmoH613I04NEM4UyB+PuJZRfTTv8pj0/2b jTDEfED9Nk0hKmUJou2UnRHuobn96Myawnw11v8UvxtxZ6SuTdh896hzx4VjE8XfuvTU hZZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778221077; x=1778825877; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=OIgsaz/80F7YVh1co0erXVe0CBs1zSzj8RjSOOEqAps=; b=IIJC2iq5JHvUaKuJ0pxcYGDhWkV5UyCY2pH/b+tAhGOlGB/TVw49ggXtJ2GZQYjfOZ SME0pQhvCiD+Ul3TCbUmnbzZ855rX2+szyWBWIGp1WxIgfq6U2GEmM2kcr3Yk3/pSThH xTrfEl0MkF6aa6KmulXGv8ugLIytktmq7JlF+9MMK42umhxivb3BuLmpYVHnopvIHwSP ciB/iURqFE8e4U7pwiwSWKYULtPQpsGuf7GoglRCTM2ZWoYm9VJssi1asP98E8ZfMvhY uZXy/Nh1u+k8sQE+bmk9w3b0AMJlkwMv8ABfLtaXk+y1Z2WocwIr3b4/uNLdfsGCJpsK MtxQ== X-Forwarded-Encrypted: i=1; AFNElJ+Qf91YG2VDC1EPaLsQGbG3vUFHR88WuED09DAqP/tyVc+3yyTWncAC+TMuMr8ioumkGYJ13DlRBjjRayY=@vger.kernel.org X-Gm-Message-State: AOJu0YwwS4nvUMfFvuINX0p3TUtoXFzERkcIFO/yaJBRKDHydEtw17eQ VZh7P5RKnaeEtP8Ykcm+C4jGvB+RBHV4vjsDyt4fKAFGk81Jwm20ZKS/ X-Gm-Gg: AeBDies5lrDDg4SDQQxm1g4yc+fmtAz2l9MU+fQpeI8g0JWinb3AFTjyOJ7m1TE51LV D9Zsza+cXNuR3SiTL2/YxE2ic/3RaB7dk0ohEBhO21V+EC0jYJc3hzWZ2rCXAGzXcgwOsz4II/h uCftldCm4iYtrp2mriD1et82M6gv7JuJX/EUtKfsnXLVZiahek20fxIJZ92c6loq1vUqMW/BlU+ nLfZd2gRIUm9+vAWo1FCuBicb3ymQaTnmXSNPybdkXJ7XPsxtsNHbFNXsT0VMN2khxbWqesxno8 0Rz0U5gIIDGi2Brk/y5csH+bBC0SJPJsqx07St4hpd+SfrMYpBUcfA2MZ66xIvOWItmCkFZr+qY mjiYvHMpkhDzqAwQUxlyEAok3QU8V8UNWHsuIa5wzHZDIGw9s7NIKBkpY/lYkutyszWw/b/g0EF B4NEzGrUNqmTXeDX8= X-Received: by 2002:a05:600c:a111:b0:488:79a3:f04c with SMTP id 5b1f17b1804b1-48e51f46d1bmr129939265e9.27.1778221077168; Thu, 07 May 2026 23:17:57 -0700 (PDT) Received: from ROG ([2a01:e11:202b:40:68b1:8d59:e348:c16e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e68f5d48fsm11251175e9.14.2026.05.07.23.17.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 23:17:56 -0700 (PDT) From: Marco Scardovi To: andriy.shevchenko@intel.com Cc: linux-acpi@vger.kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, mathias.nyman@intel.com, mika.westerberg@intel.com, Marco Scardovi Subject: [PATCH v4 6/6] gpio: acpi: sort header inclusion alphabetically Date: Fri, 8 May 2026 08:17:29 +0200 Message-ID: <20260508061729.9530-7-mscardovi95@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260508061729.9530-1-mscardovi95@gmail.com> References: <20260508061729.9530-1-mscardovi95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Reorder the #include directives in gpiolib-acpi-core.c to follow alphabetical order. This improves code readability and ensures consistency with kernel coding style for header management. Signed-off-by: Marco Scardovi --- drivers/gpio/gpiolib-acpi-core.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpio/gpiolib-acpi-core.c b/drivers/gpio/gpiolib-acpi-c= ore.c index c9b12e24de14..7b324dd4ae67 100644 --- a/drivers/gpio/gpiolib-acpi-core.c +++ b/drivers/gpio/gpiolib-acpi-core.c @@ -8,12 +8,14 @@ */ =20 #include +#include #include #include #include #include #include #include +#include #include =20 #include --=20 2.54.0