From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f169.google.com (mail-pf1-f169.google.com [209.85.210.169]) (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 32CB727A92D for ; Mon, 3 Aug 2026 22:35:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.169 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785796550; cv=none; b=K41b8VA/MlSqgIV8P/EnuMDPb+79dHebMOjCR2ArXXvG/5N3DFCs2eDkwa1hgoj1z3JL7/JuzuZoDUcY/mx0BXl+cbGYYTbZtMB3I+LQtZE+ArNGo6TvM5XXOHg/IhLY1Y2poMocryU1MKNI7mwRoTKUsCHls0IWn3Saq/dbWv8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785796550; c=relaxed/simple; bh=avdEkHwYugA5hQ0Jl8tKEInydmUHEAoZiw77MPCgVFY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rlqeo4xOYLI21Zn8uXbcvkkhumPGUdlKd85caP8+o6ehNHMVPpQD53oukfKwDZNVIS/NHk8lHBRt0AiMtI8OYqXvJRkL21SAOyARsa/WCYY+nRIPhtm9TVqBgUqpMIOkqudGiYTJ4/BZTUP6ot0kASSINftt/UuFYzATftoVAG0= 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=r1360Wr3; arc=none smtp.client-ip=209.85.210.169 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="r1360Wr3" Received: by mail-pf1-f169.google.com with SMTP id d2e1a72fcca58-84a4d8fd6ecso4222139b3a.1 for ; Mon, 03 Aug 2026 15:35:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785796548; x=1786401348; 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:content-type; bh=2Sj4NNt2oYO7Z5j3g1ICVeFL2IOOSPdBWqDyST2yYQk=; b=r1360Wr3sAmP1B4FQ+ut0HzLBklgTWwnJBWQsCipJrRijjfiSFx6l+MzNWncPYLjnJ oOi5JQhMQc5U4r8phXCPefpBe/P5BFU5jCYU1kjouLbFa+bisxdo8tdHaSQFyGpvzndC 4leg8Far1D4MosbjaRQMb4UA9W+5D8GaAaFpmKGHAK+s6fswSHswhYkp9i2ecyv8YTAC rzSgbX5mfK+kSfoCpgNZSChJ0Uok7UiHV28fvxHFURaPBaNfR+g8Fm20YZHoXO2Q+wd7 AxRvanZadLw8RMQcUdZ23wt9ErIE7Z2CGmpRa5BMrkrC+XSRCil4NdZLabBQdYnQtua2 /VtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785796548; x=1786401348; 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:content-type; bh=2Sj4NNt2oYO7Z5j3g1ICVeFL2IOOSPdBWqDyST2yYQk=; b=XBgMnczAONcZGjlxMT4hOLM+mU4xsMizvJP7zp/y/h2qKVIjI2bUK9d/F48+keA68m +yrjE34+F9N6WaRv2xODDDSN29/1ulUxpVcpnNCfRsuJ/DC7+SJnMgdZHZFvYTnBFBtb liFbTqEjYeQx1+dkfJ86jtIqfgNCYr8ClfCG9lobuWrxHoTqQgW6eGExmIu4kR/QwVFV 5wHKLhJk9jegKFraZjyHjfKwSHJ36NXe53t3MJ6eO6He/kLJvpUwQBqgjIvb2utRGIiL Vm/vwYMqB/eJ3Jef2la4yYFMk+C0/p3v4z3ElwyKZVtGaGY/ugEh01k/709qUi1TdNTs e4VQ== X-Forwarded-Encrypted: i=1; AHgh+RpvNh6M2P96TAQpZVBQI/S6RzJu2nniT1qYkSZtPHyB8KQmmUARZ6YNL7O9ajcoRFwdHttSGdZe8otBSGU=@vger.kernel.org X-Gm-Message-State: AOJu0YxH3JO11QPBkEQyzlrw8kmnzfbYkVvZfkvwEzO4gHPZ0Myh5e7v dy1eXevmftpYZd4CoZczKnN9wjkfUcIHT60nesVDeVBQGKD5cwU6kGah X-Gm-Gg: AR+sD102zdeBwAAmqwr3uzOjdQ/Q/D0syShwoo/AvZJjbzidgx4PRj71vHF35hm+/8a ky3HlDM6vIQ5Ko67zmgj55Uf+3wpugVnKlo6N0Dq23xdZi+VnRXF0270d0pigLsbhlU5ZtEKioO d0Dst7TIkR/vFhOymSXjzcnGGNeYFNKcEpI0KIiC1bb1l3PZNgw17MT0ZRDCTmttU59hXiHlqEJ 1L/GH6bVlI9n2RAli0HBLVOAqu3w0YNka24McAfhCgl2V0G5UrvikrJYIEZmbZtVX9uBm1nulLO /NyMHY4lxxWWRm50P3dENayHF7oDH7VKw9AL0va38y6MqY/aWlFuXXwZzsMELgXGpZoaW9cC6qr oqYo2Vp4eo8RDgOUl0ecQ/g6/1MuDC7JEnqsXl3+DlZGiLN9UECwa6XOZJOluxuAgVFgTL19P39 1zsZi86H7vEx+sMduinln7pgKCn98y+06n2PPfFI7sQrt9anFwOkZqqT0yKgloydNphmnaX4sSN gMAwhhTlIB0Ua87I0mk8B8pf7Yi/G4RyAx5t1yFc/ZN6As87bvzyTFpbudnmZNMyd/RzP5yIlIi h0jgv2+2pTDuU57LVG/Q5BaSXTPUZYV4BST7aEvoKbrr/FUr X-Received: by 2002:a05:6a00:4518:b0:848:637a:4cb0 with SMTP id d2e1a72fcca58-84ee49ac188mr10107343b3a.60.1785796548373; Mon, 03 Aug 2026 15:35:48 -0700 (PDT) Received: from ryzen.lan ([2601:644:8000:7a86::e35]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-84edc2d4473sm4186790b3a.40.2026.08.03.15.35.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Aug 2026 15:35:47 -0700 (PDT) From: Rosen Penev To: linux-gpio@vger.kernel.org Cc: Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , "Christophe Leroy (CS GROUP)" , Linus Walleij , Bartosz Golaszewski , linuxppc-dev@lists.ozlabs.org (open list:LINUX FOR POWERPC (32-BIT AND 64-BIT)), linux-kernel@vger.kernel.org (open list) Subject: [PATCHv2 4/8] gpio: ppc44x: Use platform resource helper for GPIO MMIO Date: Mon, 3 Aug 2026 15:35:35 -0700 Message-ID: <20260803223539.86303-5-rosenp@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260803223539.86303-1-rosenp@gmail.com> References: <20260803223539.86303-1-rosenp@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: 8bit Map the PPC44x GPIO register block through the platform device resource instead of reparsing the firmware node directly. The GPIO node now probes as a platform device, so use the platform helper to keep resource handling aligned with the converted driver model and to report mapping failures with the platform device context. Move ioremap up in order to avoid doing extra work in case of -EPROBE_DEFER. Assisted-by: Codex:GPT-5.5 Signed-off-by: Rosen Penev --- drivers/gpio/gpio-ppc44x.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/gpio/gpio-ppc44x.c b/drivers/gpio/gpio-ppc44x.c index 99fb11cd7966..5db5217c0225 100644 --- a/drivers/gpio/gpio-ppc44x.c +++ b/drivers/gpio/gpio-ppc44x.c @@ -158,13 +158,20 @@ static int ppc44x_gpio_probe(struct platform_device *ofdev) { struct device *dev = &ofdev->dev; struct device_node *np = dev->of_node; + struct ppc44x_gpio __iomem *regs; struct ppc44x_gpio_chip *chip; struct gpio_chip *gc; + regs = devm_platform_ioremap_resource(ofdev, 0); + if (IS_ERR(regs)) + return PTR_ERR(regs); + chip = devm_kzalloc(dev, sizeof(*chip), GFP_KERNEL); if (!chip) return -ENOMEM; + chip->regs = regs; + spin_lock_init(&chip->lock); gc = &chip->gc; @@ -181,10 +188,6 @@ static int ppc44x_gpio_probe(struct platform_device *ofdev) if (!gc->label) return -ENOMEM; - chip->regs = devm_of_iomap(dev, np, 0, NULL); - if (IS_ERR(chip->regs)) - return PTR_ERR(chip->regs); - return devm_gpiochip_add_data(dev, gc, chip); } -- 2.55.0