From patchwork Tue Mar 4 17:05:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870433 Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) (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 D5BC4286298 for ; Tue, 4 Mar 2025 17:05:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107936; cv=none; b=jvUVl+ULayfN5100SxI367ASIg6k0wSyDcyDNRDDEXJqLbl2qE5MJ5qOEr0UNuaurEmrKayOzfgEySvn4tdJSsWLU4U+fElOoTcM3UXAnm0H4BGdbtTGCzBkYaP8HlLUZ/u5G1zWQlQEYkOhsps9SQRpHYR2+sZMOvb91uTFLHA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107936; c=relaxed/simple; bh=uYPyL/IWo3+zxsKwPHXxHCdTPQr36Ok0GjwhGtYCZ8I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fjiDkfYdCHWDHOZMTUmHG63/Qy2iyJ8FOY5jx1V5Rz2sRjbpwI5S9OFIsf1voVHrUXO47JY5HtY9xmIn93AHWcwzU49/hFhrIKku4g6bhuSRwHJMUprwdsrHON2upsg3/AKHfdS3OPbZ0Dc+3yvsY7Uh+3XqvvmD6N20P7wTx/0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=LWwuzUgF; arc=none smtp.client-ip=209.85.221.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="LWwuzUgF" Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-390cf7458f5so5518000f8f.2 for ; Tue, 04 Mar 2025 09:05:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107932; x=1741712732; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=M1Zs+DHu4keoQ7nH0HfotkX9qiVtwoVoQvIhvtnI4DA=; b=LWwuzUgFnhYf5w853jXU4MbTtJG5AKP1cFGZ/rJ82kPJ6qEzUkYAnP7WpAzjw4caml CD9bu06MA2LmxelRdj4Wxtn1sFMXfvwP9BtZSMRcQ1pLoeAPQhC2/bo4tNPpci7HrFfw Dsy4ab1qeCOIN1l6SSS2f4NgX2ZjLweg2stZA0fvO8Xmwvpc1/jmpkPzVVHYH2yE79ob D5biFz0mJCIs5QHsQom5/OR1YrpojGaURub+qHWxfWI64nGNsABh8Fl0g5BpM8nFzf4r 2/Qx6kTt2bI4scSFCzRpYyGVKRWSx7hmZ9z1A3sRKCSuocug2QrVMj/AcgIBNkkW8A24 WLtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107932; x=1741712732; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=M1Zs+DHu4keoQ7nH0HfotkX9qiVtwoVoQvIhvtnI4DA=; b=c6V+15FKILgMldrfOiM94n9U5tYyWswkhhE/esAOFwhLaiU8w7MHGzURKrkqC1mLNI 9laFeu5EKGEMdcm0MXxEG8l8L1HchzFVR/d/8Q5gWdcFQmPzar0Zvmh4gW2xa+JXf1KF Dae90J0EQKQ9OSxXNjX3+eDqY+hgZwL5VANpvUVQ8L/hsQVTvAHm6zQN7VI0i6A6CnCy yT2OXFI8QiDT6o/I751ln1z1x23jYR16/vjblse87UIkYyif/vXl66cExZ7QUiyv36Bp xdywN3ugrb9FDp1ALYQygzQR8dna7/CYqS2Smp1DJupgNoqovLDCOCRcoPk1JO/vntYw Wg7g== X-Forwarded-Encrypted: i=1; AJvYcCWm4QVWAMu9sghDjjvBYVuqcBa8I8uM+7ara8QV0SeYk9t1mMp+VVE+WsfIoACuccVgUo38Wcr5KHve7bLTBFcdVQ==@vger.kernel.org X-Gm-Message-State: AOJu0YxjyXeXGRB0n75NWE3eD9mYvjEqIZi3bzWwHktW2jguiRMoPyZ4 rYzHlX+uVrW7vFTAQB6huop/uEirFdslvB3Nilz3u8YI+GLewYQCNbhw0FaZFWRcrmEZVsxgRls MN3E= X-Gm-Gg: ASbGncvori2ZvEIArVtl2hdm8tNyuYhXh2HFF6uqaaMnkvP4/4DpIPEs6gJSsWChp+Y vKcCrr4vsR35nB+v14OvZTxmVZ52VaWfzw74WVJEOe4FHYbWzA5IcZuPEcLTKQ7xBOjPvnjSIZu UsFt5ABQCn6g7nBM+ci22u1PMj1r6IOaeGtz8h+FXk3WJcU4IIbqeirTc8n0+6IewT8K6ENipPk 0jhYzIYzqaymfLFMVFcHF6nsj5LSWeW8TmwMn0sAS6JatDAR/gND7v9NAnXRO9uaoH+jSNPgzVF plgC3QqRKW2BLoTvQO2rjyDeumYdG3th/rH2CBVAz2G624Cg/VtJ/0lYArmHChyucSu9AVi+NiG ULDPYS/SnHlsaUktJpNFvOKZ89jFe X-Google-Smtp-Source: AGHT+IHSc8pjwattEBJyeHF3OjOkT41+G9Y/Rh1pozPSubIjG3eC8i5kYIqu87xMZCHZm4ULB7j+yA== X-Received: by 2002:a05:6000:1faf:b0:391:888:f534 with SMTP id ffacd0b85a97d-3910888f656mr7939190f8f.20.1741107931986; Tue, 04 Mar 2025 09:05:31 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:31 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:29 +0000 Subject: [PATCH v2 01/16] rtc: max77686: drop needless struct max77686_rtc_info::rtc member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-1-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= , Krzysztof Kozlowski X-Mailer: b4 0.14.2 When this driver was converted to using the devres managed i2c device in commit 59a7f24fceb3 ("rtc: max77686: convert to devm_i2c_new_dummy_device()"), struct max77686_rtc_info::rtc became essentially unused. We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Reviewed-by: Krzysztof Kozlowski Signed-off-by: André Draszik --- drivers/rtc/rtc-max77686.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/rtc/rtc-max77686.c b/drivers/rtc/rtc-max77686.c index 7bb044d2ac25aeaaf2404b47b7e7bd485ae3d39e..6b0d02b44c8097453f704cbec9f02580fb869ca3 100644 --- a/drivers/rtc/rtc-max77686.c +++ b/drivers/rtc/rtc-max77686.c @@ -85,7 +85,6 @@ struct max77686_rtc_driver_data { struct max77686_rtc_info { struct device *dev; - struct i2c_client *rtc; struct rtc_device *rtc_dev; struct mutex lock; @@ -691,6 +690,7 @@ static int max77686_init_rtc_regmap(struct max77686_rtc_info *info) { struct device *parent = info->dev->parent; struct i2c_client *parent_i2c = to_i2c_client(parent); + struct i2c_client *client; int ret; if (info->drv_data->rtc_irq_from_platform) { @@ -714,14 +714,14 @@ static int max77686_init_rtc_regmap(struct max77686_rtc_info *info) goto add_rtc_irq; } - info->rtc = devm_i2c_new_dummy_device(info->dev, parent_i2c->adapter, - info->drv_data->rtc_i2c_addr); - if (IS_ERR(info->rtc)) { + client = devm_i2c_new_dummy_device(info->dev, parent_i2c->adapter, + info->drv_data->rtc_i2c_addr); + if (IS_ERR(client)) { dev_err(info->dev, "Failed to allocate I2C device for RTC\n"); - return PTR_ERR(info->rtc); + return PTR_ERR(client); } - info->rtc_regmap = devm_regmap_init_i2c(info->rtc, + info->rtc_regmap = devm_regmap_init_i2c(client, info->drv_data->regmap_config); if (IS_ERR(info->rtc_regmap)) { ret = PTR_ERR(info->rtc_regmap); From patchwork Tue Mar 4 17:05:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870432 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) (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 A016228D04B for ; Tue, 4 Mar 2025 17:05:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107937; cv=none; b=Ecr3sPnZBS8MXoFBgSbM8+hVFKnExVCmmG+QMn2hmA25cgKBqVQ9riZfvzaJ/Z7KTC8KizARDD4oqDGwyjGZofvpNNzimHLUw2SIJv0a5hv8IFdBS+owdBywatAakKzURNEYWcuM+sY/8E9qswnR7oZfiFz1Gt+xhe8Ake54WeQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107937; c=relaxed/simple; bh=HyCZnj76UJVLp2TFtsvoqPrnKIyS4fiKrwZnWeOiCGk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Q2OKhVTep/tilItM7qDkR3V0lYdxIP83aFAn8pPVlaIaAzTUb65tCPSzsbCqVjwxG27QbPOAM8UB9oHFlo7MY1mAy36wuqZeGIhsnE4E/YyORKeOGZSBIPnxM3LrNuwMk/6w2ayLeMnCfCqUWj/dF36JJ3MsfaDI9VYxa+xA14I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=JjpaGvfe; arc=none smtp.client-ip=209.85.218.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="JjpaGvfe" Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-ac202264f9cso95906466b.0 for ; Tue, 04 Mar 2025 09:05:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107933; x=1741712733; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=VXesqtK3A8i6ZSMFwP8n6Z6kZDUFNsTogrZxF0Gh9Ac=; b=JjpaGvfeXND1gsfIdIOi5Nk7vBOmHveBguX5rdh4QUFLQh/gyAB5LEutlmL96XIt9u 2H8jEpvgTzvhzDBaaHd8+NTKZ8Gw+dpwXAzMGO5jf4c6/vEqqPDi/rsea2Ya4rpaKKly YYRodY3e0yyZn0VpGqyWfqZ355MXDsBQU4LrjsEBg2CzLff6NG//KhZOwc2Uc9AtxSFA sTLXJRhgPZLcOL+bqUN/usZut+CpNv04Yxx1VhvjOcoKPQ5EC/3+wAXg0Gbn9vw3As04 EBwD0AOM+JMZIZvL5K6qyH7KqtUJr5sDZPiCkwOTH3/nStZPSmJ5G/iFR3+wLfocgEaF 7yfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107933; x=1741712733; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VXesqtK3A8i6ZSMFwP8n6Z6kZDUFNsTogrZxF0Gh9Ac=; b=UWnOTNSFyVISZwk5bQ1Bah0Uksv89YnVG2fAwVhp7+68Kg3kqqLCcqg85Yv4qFSNvv 9aQ6sJbwsjFGPYt6RlQbGJGFPt5ZDeiJ9cjaQg1kQ5PHOb3gg5VkpmV7ucMaXfAdp+3T wYbZvY7MNpQMiV4GUw7bar7O9DX3qQLpE8UqrqMknzugVjbaK1FffFAbofAb++u40Nog iExHQ3Wso+aKP7LgrNNF5z14R6wH1MQYaKk0m3ZW4LhSHGOCLWR5LvqcFsLcl4yhIaPp cKqSfxe8GfQ7QY/6XzUCkxK+6K/H3OpigD/GMqOZgtFdmZEHX4uc8o7wp4TBPg3Pt6b8 6irw== X-Forwarded-Encrypted: i=1; AJvYcCX1dppdGcowuZt1zQ8RvWwFfUOhb+u8JnKpJ11+9oPaC+ZtY3pyjOJgD1tHyi+ekNrQ9vyrKplgDBnfGYl7cxBc8g==@vger.kernel.org X-Gm-Message-State: AOJu0YwR+oZdzhnjkzOzMH7ngBF6QAsIlDRt8bVwn2NOw6up378SNB3h qlwnAexSWSRRekG+du+KG32L8SJdIEpRmORV59M5bK2JPfYee/04d2L5VRzLyemKUALfSUVtcn2 SYL4= X-Gm-Gg: ASbGncvmofWDYa3gvG3eQMblmEknB7A4xcmHn293irB+Hj7ncPGbAGoBgQ/rSNY/iLZ BpGTFbqs2byZmAeHQMbED85bRd04YJ7cTyHBqO9ebeSl/JIqbtQUSfNGwSfERtmZWNUtVv+7L8d /QI9PsvFdBbUaObyxs3S8/F9x8kCYp86QRFVd081mvziT4X375dqTJUnsOELnBwM0MVbXrDaDf0 QYa9ZmZxBsspq5xk+58juNbsU7rDdFa9WKubi93bxbvcG+bk5B96HGRcnUnReAPIJMQT+dTKNMR HdHperTs8nsq3dllM9E6ko43j8jktyh1Dp1ZdtABMNAykHYu1TBcRMjeEIC8czaCKdi5ISaZop3 KkHzB5UnnBSDFHi/k9gwNIqSX6+Vi X-Google-Smtp-Source: AGHT+IHVbcY6l9+JTAHHIw3fmIWanoQo+sapqWdolutCogJsq5sGcHSbYPT4D1lGvFYrwfxZJsMGVg== X-Received: by 2002:a17:906:f5aa:b0:abf:59a3:df19 with SMTP id a640c23a62f3a-abf59a3fa56mr1580793966b.57.1741107932647; Tue, 04 Mar 2025 09:05:32 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:32 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:30 +0000 Subject: [PATCH v2 02/16] rtc: s5m: drop needless struct s5m_rtc_info::i2c member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-2-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= , Krzysztof Kozlowski X-Mailer: b4 0.14.2 When this driver was converted to using the devres managed i2c device in commit 7db7ad0817fe ("rtc: s5m: use devm_i2c_new_dummy_device()"), struct s5m_rtc_info::i2c became essentially unused. We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Reviewed-by: Krzysztof Kozlowski Signed-off-by: André Draszik --- v2: * fix arguments to devm_i2c_new_dummy_device() - too eager sed //, and gcc didn't notice, only clang :-( --- drivers/rtc/rtc-s5m.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/rtc/rtc-s5m.c b/drivers/rtc/rtc-s5m.c index 36acca5b2639e272dd9baed06ea5582f635702b0..88aed27660348a05886f080a2848fcabbf9666d0 100644 --- a/drivers/rtc/rtc-s5m.c +++ b/drivers/rtc/rtc-s5m.c @@ -146,7 +146,6 @@ static const struct s5m_rtc_reg_config s2mps15_rtc_regs = { struct s5m_rtc_info { struct device *dev; - struct i2c_client *i2c; struct sec_pmic_dev *s5m87xx; struct regmap *regmap; struct rtc_device *rtc_dev; @@ -640,6 +639,7 @@ static int s5m_rtc_probe(struct platform_device *pdev) { struct sec_pmic_dev *s5m87xx = dev_get_drvdata(pdev->dev.parent); struct s5m_rtc_info *info; + struct i2c_client *i2c; const struct regmap_config *regmap_cfg; int ret, alarm_irq; @@ -675,14 +675,14 @@ static int s5m_rtc_probe(struct platform_device *pdev) return -ENODEV; } - info->i2c = devm_i2c_new_dummy_device(&pdev->dev, s5m87xx->i2c->adapter, - RTC_I2C_ADDR); - if (IS_ERR(info->i2c)) { + i2c = devm_i2c_new_dummy_device(&pdev->dev, s5m87xx->i2c->adapter, + RTC_I2C_ADDR); + if (IS_ERR(i2c)) { dev_err(&pdev->dev, "Failed to allocate I2C for RTC\n"); - return PTR_ERR(info->i2c); + return PTR_ERR(i2c); } - info->regmap = devm_regmap_init_i2c(info->i2c, regmap_cfg); + info->regmap = devm_regmap_init_i2c(i2c, regmap_cfg); if (IS_ERR(info->regmap)) { ret = PTR_ERR(info->regmap); dev_err(&pdev->dev, "Failed to allocate RTC register map: %d\n", From patchwork Tue Mar 4 17:05:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870431 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.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 7140A28D053 for ; Tue, 4 Mar 2025 17:05:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107938; cv=none; b=iAuim9Pc5wq0QwN67BekXE5FIjD1bGbV2grkbb+n2t4QYS9+Ue4a6NBkwNxxdDI0LFuxziFcHk+E2ygoUhDrhpcKNq+sCfQbWNZsn9SSuV6/L+yprHJxrCF8O9XNGrIBL0Wocm28UMRNaaFmUxp4OqUdHI+9HJx6uOkfdtiebok= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107938; c=relaxed/simple; bh=bdvX1BNhSG2fpjHo2VIxHhZrYGN28llP3/MopMlEtfo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iJXHjHmuuhOyx6FjthP+RL/HNPtCTLsgGaWPPs5EpYMUs0DC3pFWvJdKO+CC5FyXOW8eSQ99AOJKwPJNS6Sj6FWjUhaI6rTAsa117NCcmsORwPh1zeUwZM2JzsB1B2HkIeWrMDbiv9vgfrAAgPgBuOlfDoqTw+8YGT6qRyLUYAA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=zgH5+x53; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="zgH5+x53" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ab771575040so1214215666b.1 for ; Tue, 04 Mar 2025 09:05:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107934; x=1741712734; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=D0DbxfKxGvd2WW4HNIqxG+j4XJyJfuCMmLSYkWj7Rsc=; b=zgH5+x53GgY567EAqrqQQRqhEWpQo4fbGGD9KCWkD13ACPz0pLbH0oILvZkJP/nOZy 3YVf4fEp8SBgheguN4RmtUYH+sS+Dput4mpcyDGPR/mkh08N+fdLLuiKbJHIDLHxQMcJ JuWy8ukcyWnUriTTB0ZlqmmSWiU9bPn88QAqT+Vnnfdg8cdZWm0ZSH8VXxVCLUuQ5M58 KVR1eVChRiJZNLjExmO+1aDTcBvfKiVJsVyz/zn1vJlCzqafEFVPUkbjByDTx1dXDbp6 hE9aZNR5sxcQRuzbjNlVfad39mh04vBdFVRdPYhfYhrkHbCiETHwOOYzquwiqDsRykp7 4JHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107934; x=1741712734; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=D0DbxfKxGvd2WW4HNIqxG+j4XJyJfuCMmLSYkWj7Rsc=; b=ovdOLqBdXqRXO7Shy+3j1JZSJmoCl4dYMmewQgMt8T0x8J/93XzAUHHfiQkSkgwKBC KaMer90gbGIWgXiDI2zhg0jjs668vuSbcpjWKRJ1lMfGFDLxpVvBYyf/hf8c5YOl0YPW CdSeT9MKLvtRT+Bj48R62HB3tE9SygpxS2jARIhKGhEBj7qwQSAN7Wly1ZPyT8a4MWe5 8ps5aK0kV1V9yDxxYgdf6MZrAcBcv43WyD6U9Svt0xNdUypsflVIk16rboTNrMcnRfk1 zIlz3q5iulvC8n0xy82mspdWTuTvuUJs9tnBUupYQNt2G6FdvbiT0a3AOjopUD8jG4V4 qLXA== X-Forwarded-Encrypted: i=1; AJvYcCXxLTgxB1wnESKBQNTu8ADv+DeQhLoEO0ACsmeTIg/ocyFEla4n3cRp7eI8rf2MLMBmq+0/sKDXSy294aOAo+X4AA==@vger.kernel.org X-Gm-Message-State: AOJu0YyL3/YFm1dX0XcUYBxwpp7iYGeWYFMwD02dixaTAC4gyo036ORj l1GcdiggtkWQqzCETvoR74vswSkzTpLRiLa68Du1osHTf9cUe8+kod/1+EDYFSbvepCEnT7tAxa nlHM= X-Gm-Gg: ASbGncu7Fq2WHqLpKhyDD/H6eMUNvg3XGVgazulRQCwcqdMob90pZoll9YFNn4lyDsw l6oaqwl5F1401eLv+GkXzbfACuvs/wj43LekGQ6bH+PdBFL4SRsMVHt8TJZyDsT8NNArL+b6CHc sWeCurNP0Z7yoH5VMO9dLvTbgdLpW4Tg0t/mT0JGCxr22zvdNBNd0nHL0PJH7zmLmZfc2Qhx4+r lQTUZ7U4l1HwM7VydSpkG+pt+RIE3pWA3cfgIW2Zk7hj4f2X8z73RGZGCL/x08NdR019zneZswj VjnHA//q2R+nn6KmDN7ZOhl3xwWNr1Hu9zTyupanLOpH4Y46HLgylIFH53v0EdS+5IKJV4WRkkL Wv5IKSewbL74862T9be2EOUc0JtjK X-Google-Smtp-Source: AGHT+IGsdjvAcycMp31oFEdsdwWFqJQmXbxtDBoL5DRz6SC3HgSNRmbkL1ZXNDzmFm2b5aF1OyYNnA== X-Received: by 2002:a17:906:c150:b0:abf:4a62:6e5b with SMTP id a640c23a62f3a-ac1f0e60023mr427555766b.5.1741107934486; Tue, 04 Mar 2025 09:05:34 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:34 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:33 +0000 Subject: [PATCH v2 05/16] rtc: ep93xx: drop needless struct ep93xx_rtc::rtc member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-5-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Signed-off-by: André Draszik --- drivers/rtc/rtc-ep93xx.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/rtc/rtc-ep93xx.c b/drivers/rtc/rtc-ep93xx.c index 1fdd20d01560ef4fae2b996cf366b4f812329225..dcdcdd06f30d1ff6d0939f6bcad2c17c03c5a65e 100644 --- a/drivers/rtc/rtc-ep93xx.c +++ b/drivers/rtc/rtc-ep93xx.c @@ -28,7 +28,6 @@ struct ep93xx_rtc { void __iomem *mmio_base; - struct rtc_device *rtc; }; static int ep93xx_rtc_get_swcomp(struct device *dev, unsigned short *preload, @@ -123,6 +122,7 @@ static const struct attribute_group ep93xx_rtc_sysfs_files = { static int ep93xx_rtc_probe(struct platform_device *pdev) { struct ep93xx_rtc *ep93xx_rtc; + struct rtc_device *rtc; int err; ep93xx_rtc = devm_kzalloc(&pdev->dev, sizeof(*ep93xx_rtc), GFP_KERNEL); @@ -135,18 +135,18 @@ static int ep93xx_rtc_probe(struct platform_device *pdev) platform_set_drvdata(pdev, ep93xx_rtc); - ep93xx_rtc->rtc = devm_rtc_allocate_device(&pdev->dev); - if (IS_ERR(ep93xx_rtc->rtc)) - return PTR_ERR(ep93xx_rtc->rtc); + rtc = devm_rtc_allocate_device(&pdev->dev); + if (IS_ERR(rtc)) + return PTR_ERR(rtc); - ep93xx_rtc->rtc->ops = &ep93xx_rtc_ops; - ep93xx_rtc->rtc->range_max = U32_MAX; + rtc->ops = &ep93xx_rtc_ops; + rtc->range_max = U32_MAX; - err = rtc_add_group(ep93xx_rtc->rtc, &ep93xx_rtc_sysfs_files); + err = rtc_add_group(rtc, &ep93xx_rtc_sysfs_files); if (err) return err; - return devm_rtc_register_device(ep93xx_rtc->rtc); + return devm_rtc_register_device(rtc); } static const struct of_device_id ep93xx_rtc_of_ids[] = { From patchwork Tue Mar 4 17:05:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870430 Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.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 7DDE928F925 for ; Tue, 4 Mar 2025 17:05:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107941; cv=none; b=AmABGNJ8jZbNsfTz9m+0IvY6WuIr5+toOAFH5zUyWTyPXl2oRZz+XEXmR2LTPP5XoCZ5ucl4ahANTLZko12p2DP41m617wxAmq8D8ElKOIRDnrV9S/1VTb8jlAjWw8Y9LR6ddGvwc63QEJ0PZYGSlAY9RP/2//TYz7dZbV66M6A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107941; c=relaxed/simple; bh=5X/V6j0KylZQYS62rYIRbOgl5vZsHZpGMMFoDJktKBs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RfuirFs4EZqx9SBC3mgtppwuQKZIXEM5o3tp2T3qo9R7HfHi7tMkhlriIcIsdL7/ru3eNhok1cdGljeBjDCQurT1stOarmeZC/yp4r7+dKH6otm8EgwZZkpqD8MH71HI/EP9GyeqrbvunbsgFp6Sd9EN8SVZtwNGXQQ0qDf1cgk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=xQzxr+/i; arc=none smtp.client-ip=209.85.218.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="xQzxr+/i" Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-ac0cc83e9adso21366b.0 for ; Tue, 04 Mar 2025 09:05:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107935; x=1741712735; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=LQ1rnmYNsg12IhA38qEJtyyMHRjZg5dsRkHMsIbiHfY=; b=xQzxr+/itgIRLv26IdzqbvN2KzIxpaBes8rvZIGhFUVBPxXQOcBugDgufa9uDOvCgg lWAHsyvVwG3IlvCkPdq2k99TqYN8FPvGtHm9y0MUKc1aLAeWgGk4PbLy4LkTg/I7y3rH 1rkqFG6o+N+XTH1VEL2OSrgeK+hNYLH+yripsc+i49MEYZT91UXSbQD22qfp8uxJwbTX 372emBqGRsl9yNXwyjzq2LBDYXqcT0ee+o4o3GskDqJaprn13m0JVldN7vrTEZz7f17L WaeMVWkaYIbanusqA0l1LddOTAYZ+WAGRQFfouLLVzwrmNcl/hg4ZRc+3dufDhPfhAfh BV0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107935; x=1741712735; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LQ1rnmYNsg12IhA38qEJtyyMHRjZg5dsRkHMsIbiHfY=; b=luC+LxDCxme4uiTEWdykodEHB8F/YI/400ijLfDA+EnLTfR6jmc9BdbEzOEjxcw2W+ TiN6mLlaqHDw8g2K4F/9BP1gORlEJjQhEDhH61KWK8M2ibItKyd9kN/5KBb/tX4OBCFq Ebho6C8brmYAfqfmCXajAt/aqUFjQ4kl2uR9Ur3Y3eMw1OU8NJk41Gl12KgVEKrVEnlE TdHX84vK0GGvTTgH45vlDmttzrBBaLUQsYE9IU338pjjKS61EYmhfrf7asqcBMZhBJ37 JfG0JNl5GmNRqoQhyipfS5jQhwErZdWzNiMmI3q/aqSmRwkfAEPU49Oysl4L+wF+2Vh6 99vQ== X-Forwarded-Encrypted: i=1; AJvYcCXf7ZeXR8PFoSduQ8+oXNEiKQ+FCR8SZZMwjcwz/VWUZsGx+yFM7GAA2YunO2/QfTPoNH0Jg21DEX4giS+cCxSaew==@vger.kernel.org X-Gm-Message-State: AOJu0YyCsltMtmjE2kvuhX67dgQc/SU33hox3+5BXP7iuqtwa0g6SwNm H/ptlQ37isrx+i/j9vjSZHU3wF0vN5eix0MELBSWxU23VMvQkzNDbmuQqdYpbrIS1vBSzs0zByl C5cs= X-Gm-Gg: ASbGncs3lsaGhcdd4FK3xizsy8QP0rKfZ5sTW/OqawxW/VMrWkMJ17/Ay6b061zYM9J Ak04a3C2enAsIa32jZxriiLbLVqwz5yqVH5j2r80yNkkefUWAXgTKIIaZl6ot0A8Ag95/sZTFzE PchWqlp0c08css/HSqTByJna7f0Ye8sZ/u5yAx5PRnEIxi4RG5Zl5igvpza17W3tuT4Fcn805fz uUWmxx5oK6Cdc8GzfUHKymSL0EyWYnQPL1EUMJPnrMC//aeq1IW/neeoLIytVRVQrPkEFHja8vk 6an/20XqbWQJK2jfNNembXhXbVdYmCM/Wxxo6QnOnH8XlRTEaFIRNQJLBJHihiI0bEnBdXVXMcs g0C+ZEG/7OLjS4N/HSM0tc3Y5cqRH X-Google-Smtp-Source: AGHT+IEctYzZlVVwQPucj8CUHKEVuZPV8n583Yq6QohmEvkW8JU3S9SRTA4/uuDakASHnMKJ8bAleA== X-Received: by 2002:a17:906:3814:b0:ac1:17fe:c74f with SMTP id a640c23a62f3a-ac1f11e6c1dmr291303166b.21.1741107935167; Tue, 04 Mar 2025 09:05:35 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:34 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:34 +0000 Subject: [PATCH v2 06/16] rtc: ftrtc010: drop needless struct ftrtc010_rtc::rtc_dev member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-6-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc_dev member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Reviewed-by: Linus Walleij Signed-off-by: André Draszik --- drivers/rtc/rtc-ftrtc010.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/drivers/rtc/rtc-ftrtc010.c b/drivers/rtc/rtc-ftrtc010.c index cb4a5d101f537e20a685bb022e6f6516b0df8271..02608d3784958e69ec0ecbdb9fcc8b333b19e7cc 100644 --- a/drivers/rtc/rtc-ftrtc010.c +++ b/drivers/rtc/rtc-ftrtc010.c @@ -28,7 +28,6 @@ MODULE_LICENSE("GPL"); MODULE_ALIAS("platform:" DRV_NAME); struct ftrtc010_rtc { - struct rtc_device *rtc_dev; void __iomem *rtc_base; int rtc_irq; struct clk *pclk; @@ -113,6 +112,7 @@ static int ftrtc010_rtc_probe(struct platform_device *pdev) struct ftrtc010_rtc *rtc; struct device *dev = &pdev->dev; struct resource *res; + struct rtc_device *rtc_dev; int ret; rtc = devm_kzalloc(&pdev->dev, sizeof(*rtc), GFP_KERNEL); @@ -160,29 +160,28 @@ static int ftrtc010_rtc_probe(struct platform_device *pdev) goto err_disable_extclk; } - rtc->rtc_dev = devm_rtc_allocate_device(dev); - if (IS_ERR(rtc->rtc_dev)) { - ret = PTR_ERR(rtc->rtc_dev); + rtc_dev = devm_rtc_allocate_device(dev); + if (IS_ERR(rtc_dev)) { + ret = PTR_ERR(rtc_dev); goto err_disable_extclk; } - rtc->rtc_dev->ops = &ftrtc010_rtc_ops; + rtc_dev->ops = &ftrtc010_rtc_ops; sec = readl(rtc->rtc_base + FTRTC010_RTC_SECOND); min = readl(rtc->rtc_base + FTRTC010_RTC_MINUTE); hour = readl(rtc->rtc_base + FTRTC010_RTC_HOUR); days = readl(rtc->rtc_base + FTRTC010_RTC_DAYS); - rtc->rtc_dev->range_min = (u64)days * 86400 + hour * 3600 + - min * 60 + sec; - rtc->rtc_dev->range_max = U32_MAX + rtc->rtc_dev->range_min; + rtc_dev->range_min = (u64)days * 86400 + hour * 3600 + min * 60 + sec; + rtc_dev->range_max = U32_MAX + rtc_dev->range_min; ret = devm_request_irq(dev, rtc->rtc_irq, ftrtc010_rtc_interrupt, IRQF_SHARED, pdev->name, dev); if (unlikely(ret)) goto err_disable_extclk; - return devm_rtc_register_device(rtc->rtc_dev); + return devm_rtc_register_device(rtc_dev); err_disable_extclk: clk_disable_unprepare(rtc->extclk); From patchwork Tue Mar 4 17:05:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870429 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (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 EAF7928D06F for ; Tue, 4 Mar 2025 17:05:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107942; cv=none; b=dUn208Uzs78vnhNSegnBCm2EBTY2Zs9vPINZHUzf/g18yS4TDYHGD2oXP1QNKOd/6Zg4Hp1qqEoVsK502deb54hGnuWguP6BhSZKo2/b1zN+pnsEh5vxVz6GEVhHJBNf1eb202zRZMnE5FTP9L8+xWJr8To0qBVJxCsEP2nux6k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107942; c=relaxed/simple; bh=O7YHK/iXPLW7JvXPCw3QSGcpCg8mcQhvQ7AlODxEgPY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WAE+a5eeEk1e2rtWy7S9y89pVmo+qOvP+UFd6L6xLjKByL/55Oai3jdP2TTs+RvBrOkhG2AHHLCXHTfcfipnLNojC9TG//18inwO58sgclJ2p7NagbvSpa8CtKvVZvZyLepSz+S2eKqm4vVWzjlRWLtqUKNK/Cx/cgklsOn2Z+0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Zx4BAc4r; arc=none smtp.client-ip=209.85.218.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Zx4BAc4r" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-abf57138cfaso615833266b.1 for ; Tue, 04 Mar 2025 09:05:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107937; x=1741712737; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=GfBBNFFxoATgsY5PG9x5TDiO1XW3it+ha4dH0f4d6kY=; b=Zx4BAc4rD08UzQOxlyt4V6dca3NMcXY+9B2U2agt8A0yB5Tk9EQZHVQXwJD8wPZOst 0FWKB/cHLxMjrD1arJ+tY1YT2UsZpDYi99GzoBWiaxNGss8fFAyuU5K1lrz3tGGJ2Ulo KQy3WaNsfbEnOBtXwnkAcvj8tr3Hp6sYeUbFLqjGeNnAekFkma6/AxGm0t+prNeRT4RO Z/bcWJBKWlwPXCdTrp1jY92L8m9OIfow1PlpJjnQ1FoUMk6lHRnX3EvAFkox6ivocrwK kMaKVtYnDZf5s0q45ys7iseZlfAEyABzobEXqH0GUEw8cq3mUjUKwlJ30lSfU7ktOmdP Gl0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107937; x=1741712737; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=GfBBNFFxoATgsY5PG9x5TDiO1XW3it+ha4dH0f4d6kY=; b=LEeRlOiP8hQTerYRgvGqtdNietTvc4n4NR+6TdgzDE8BiutO1wzTIzONsO9HzBMq8n HW6A8aba9DSdabAFWKiqolg/oKRIhhq5G6roxMN9ve3Zt+WutNHT2Mc4gqWpiS9aOnT4 krGjc4OrzokBayvbjhrxklwxahhfZzkmdKKRKAyfRGkCx+JHZew9P4oyeiaRIvx0a9eo JiTYNGaoWNDBHu+yOuNgciJ/P1rnecFgM4wfGSpP2JwbCII8E55K28aynuBUyQmF+V4x 52opn37lqmlApOtBzuzM8PLxSOsvQ4MrwC1hfCF1EIeBMglzil1pDa1FbFiApvS0NtJz MORA== X-Forwarded-Encrypted: i=1; AJvYcCVQSMqYN2QDpKC3jAPtFGa/oclb2r+EEFwqyugQqr+GqEn5z2sXH1LpGerlXWdzqiVUbkpydrA4e03Gu8NeHBZe3w==@vger.kernel.org X-Gm-Message-State: AOJu0Yxz0AU6hLYYTbTwft5XODN8PpTaCjHxplvLt1MJ2MTTBhq1ywaI g1bOgWSGuAJkuQxWMpxmfA2Sdpy+AV74pHpiCs5hpVB/dH83rWi7+MuJnG8SrYbka8WipEP6OdM jX88= X-Gm-Gg: ASbGncuXosWrVYZ7yYXBfkwLGwHhYWCoSbzHiqIf3lRXZg+sNi1AKeS2yDkWdprzBzx NrgTcpXoAqMnXn++QTMiAErs3y/SLqwr/ha8miHjyhPgc7javsJrvYrmJTSbrmxQxVQNmwceV95 50TvJZGUI5McJ4XbKtia/6DgLqjEZUWNNG7DG2LgmOVeYhf7Gc7eMgR0FhGSRqvPN+IlJhYKyhg TDU68r9pjK1wPMEbOJiRkYRPjkWeFtbEBrsp8OTGFvW7Ta3+iQaz1oWEXYQ4pDDsTAb5CTFPpmN KacHrW+LCrvgaGeip6p0Ixun+txHzwT8kud4NRvOF/kXpUVLrR+ChzIfeIG0kTeXhCzXTvVi0W/ nngE+Qfwe495dsBZQ3OaG4L0iJgaJ X-Google-Smtp-Source: AGHT+IH4UfROsxQRuhFhpuKVUGIkJvl9GfdlUj4CrGm+kiSC0tb2f0MQezXBSz1TfcCGXXToQh+ymA== X-Received: by 2002:a17:907:7210:b0:abf:778c:58c6 with SMTP id a640c23a62f3a-ac20dab329fmr1852966b.16.1741107936481; Tue, 04 Mar 2025 09:05:36 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:36 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:36 +0000 Subject: [PATCH v2 08/16] rtc: meson: drop needless struct meson_rtc::rtc member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-8-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Signed-off-by: André Draszik --- drivers/rtc/rtc-meson.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/rtc/rtc-meson.c b/drivers/rtc/rtc-meson.c index db1d626edca5fbb590f26c1cdd0774d350244a99..47e9ebf58ffc2f2b6c65932f8ec3773a213a62ef 100644 --- a/drivers/rtc/rtc-meson.c +++ b/drivers/rtc/rtc-meson.c @@ -59,7 +59,6 @@ #define MESON_STATIC_DEFAULT (MESON_STATIC_BIAS_CUR | MESON_STATIC_VOLTAGE) struct meson_rtc { - struct rtc_device *rtc; /* rtc device we created */ struct device *dev; /* device we bound from */ struct reset_control *reset; /* reset source */ struct regulator *vdd; /* voltage input */ @@ -292,6 +291,7 @@ static int meson_rtc_probe(struct platform_device *pdev) }; struct device *dev = &pdev->dev; struct meson_rtc *rtc; + struct rtc_device *rtc_dev; void __iomem *base; int ret; u32 tm; @@ -300,16 +300,16 @@ static int meson_rtc_probe(struct platform_device *pdev) if (!rtc) return -ENOMEM; - rtc->rtc = devm_rtc_allocate_device(dev); - if (IS_ERR(rtc->rtc)) - return PTR_ERR(rtc->rtc); + rtc_dev = devm_rtc_allocate_device(dev); + if (IS_ERR(rtc_dev)) + return PTR_ERR(rtc_dev); platform_set_drvdata(pdev, rtc); rtc->dev = dev; - rtc->rtc->ops = &meson_rtc_ops; - rtc->rtc->range_max = U32_MAX; + rtc_dev->ops = &meson_rtc_ops; + rtc_dev->range_max = U32_MAX; base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(base)) @@ -365,11 +365,11 @@ static int meson_rtc_probe(struct platform_device *pdev) } meson_rtc_nvmem_config.priv = rtc; - ret = devm_rtc_nvmem_register(rtc->rtc, &meson_rtc_nvmem_config); + ret = devm_rtc_nvmem_register(rtc_dev, &meson_rtc_nvmem_config); if (ret) goto out_disable_vdd; - ret = devm_rtc_register_device(rtc->rtc); + ret = devm_rtc_register_device(rtc_dev); if (ret) goto out_disable_vdd; From patchwork Tue Mar 4 17:05:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870427 Received: from mail-ed1-f50.google.com (mail-ed1-f50.google.com [209.85.208.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 6A143290BA6 for ; Tue, 4 Mar 2025 17:05:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107945; cv=none; b=a5maVQncllG6ediOcizuIND4HXE3DN9OSYhxVq5kGnjqL7QILt6RMXZtj+1NFoJMS1rNZwxye2JXld4A13u5UXqp7udFbg61N03MN/EE6IY9TVkc+50zQMMrWNv61TJlILui4TD15UfyxApUoTMcafsZ6YiFqAjTX4rQOPfrUl8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107945; c=relaxed/simple; bh=cZSNlyCPP2sZ0NzEjW15iAl44WPa7AMx/oJSQqQslPI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jGuauloifUprCCCeYtykNGHnafzVD9YRszOMsJG+ZzZeRF+sm+MW3Di+h0WJLLGzC3D9Hf4qvyeIFyMDGqPvHAzD8mPA10hTZN2VRSI5flYxFmXD5B5pyROt9lKaTnwdK7fLREgST7LHzIYOKQ8p+RSyS7b+WsZK2PT3nLR/ZZk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=vN+tBiVF; arc=none smtp.client-ip=209.85.208.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="vN+tBiVF" Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-5e095d47a25so10385606a12.0 for ; Tue, 04 Mar 2025 09:05:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107939; x=1741712739; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=IaB5zKXHk0fgCsI3Zx6BuQOTGpJ5CFC8NMnIRZG9Bxw=; b=vN+tBiVFjj9NWy+sR30STVTJVQOlPMontgXnreD0UEF0FNIK216w43cEBCt6q32RPV WtpmUi506tjlDhwpBvjX7hdBdGtjuTWAmUSzQ8vdtcS600TzBFdORn1ImbxFH5Wmfx5O 3saOW6xogD3aqViv04SG7QnMpEK7NmEgb/Peq8nimajzbXH3EUTLNcJws9TfukGm9+kz tsPfySBeawqp2msWq98PcSx+/N/UQQQL0w9DYbcB1VutoWpGkVHJj1FVOxnD5wdLFKHj 17sknKc3r+K4tPXuoGV8BtP6KZWFAm9uIe4r7Lx85tY8izSqkB15mqyUGmdUMtIvGhyl s3hQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107939; x=1741712739; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=IaB5zKXHk0fgCsI3Zx6BuQOTGpJ5CFC8NMnIRZG9Bxw=; b=sQOtt5STBz9OS4S+kDifMIpiqdc49tfRWJBeueTc3rDdy/UxtLDetZt18+RlvMXyMt /99oVe5/HYuSFEjBGDTGoSoF2uvtkv1hP6xalQh8rq69z657inwuRypgm9zAjicYUgY8 nHyyBQVu7ZXDvUTbUyIeWEJsz+DLGK9ZeAPxOjh1IJseUE6Nfdi1FXyffVlZpgdIv1zD JsGZFUg89HK4N82/HvgtiSu3iarjZIMhCbUErpJLSjt/2fMpFKRdm48yt/jJPXwkSZCX mDEK0+JZ+lnonLN4hyzCCf2JGjMNLQhuMYobHA8jpBwb3UinnR9TTC4s2vy3YrSoyeBe pvfA== X-Forwarded-Encrypted: i=1; AJvYcCUzKhRjOjf6d7RDhvAxEcx7ErxrN1SDbJ3AsU9GlHDdfRdMnnVKb1JxY4MeT9H/x2YTGTPnW1ZhrWk4yQut3gUBHA==@vger.kernel.org X-Gm-Message-State: AOJu0YwIcIw/f0FPa/odnJf724lInUY+o4Bxz7dN/q4KbRg4wbWPcNHs 4P9k0I8u6McRSLiJFq9CbLmvCaleeak+IOhRKcC1dwCDIGkofZ/LPlKSbJRc/STQXMOv1pNlj5S jexI= X-Gm-Gg: ASbGncvjbseJvNw3P8QJN+yQqES8fO/BTPCrC0GNNMVUeJE0RqB4cuIJ7d9omZe59mR E03OcM+ezyTSezAlRd1DJbYrmdSbepmwFvB7x4sDSzp9QVCR7b3d6O+sUbQTxGXDZkHEcCgra3F asZ6t2Ljmyu9/8/kBCQfnHKF5oZH/KayxCw/1vDmaTBmWdof13EcsaNvyeNjpfAuqAxwFwNxER3 ksxQxGz3YT8NOqgC+X6m3X/xbQ+Mgi0uHs9qDcvWcrcLLD/ojtyuXzKIFxO3wSz/ZLRFJN1gURU x6uQWme3kSe/7EoY8DzEBMVh4LJ+KRNaR0CshIwe5LGcAeTRdodoCQw5JLW1pfb5CNLzjo630xN C2tzPXc+dx8REhV1eZ1QdUGJ1epcf X-Google-Smtp-Source: AGHT+IEthaeTae6V+bsrtEeJOclicWZ8u/xfJHzWX8LHXk81mGbjX6FsBTkNnwrP87t1Gku2pvbmyw== X-Received: by 2002:a17:907:6ea5:b0:ac1:e1a7:44af with SMTP id a640c23a62f3a-ac1e1a747c4mr790541466b.49.1741107938652; Tue, 04 Mar 2025 09:05:38 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:38 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:39 +0000 Subject: [PATCH v2 11/16] rtc: rx8581: drop needless struct rx8581 Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-11-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Since this now means that the structure has just one member only left, there is no need anymore to allocate data for it and pass that around via the various callbacks, just to extract that one member. Instead, we can just pass that one member and avoid the extra memory allocation for the containing struct, reducing runtime memory consumption. Signed-off-by: André Draszik --- drivers/rtc/rtc-rx8581.c | 85 ++++++++++++++++++++---------------------------- 1 file changed, 36 insertions(+), 49 deletions(-) diff --git a/drivers/rtc/rtc-rx8581.c b/drivers/rtc/rtc-rx8581.c index b18c12887bdc3705ea4cee9b8d75086a05b24e71..20c2dff01bae833ae4e100cc38cd5f030017be75 100644 --- a/drivers/rtc/rtc-rx8581.c +++ b/drivers/rtc/rtc-rx8581.c @@ -52,11 +52,6 @@ #define RX8571_USER_RAM 0x10 #define RX8571_NVRAM_SIZE 0x10 -struct rx8581 { - struct regmap *regmap; - struct rtc_device *rtc; -}; - struct rx85x1_config { struct regmap_config regmap; unsigned int num_nvram; @@ -72,14 +67,14 @@ static int rx8581_rtc_read_time(struct device *dev, struct rtc_time *tm) unsigned char date[7]; unsigned int data; int err; - struct rx8581 *rx8581 = i2c_get_clientdata(client); + struct regmap *regmap = i2c_get_clientdata(client); /* First we ensure that the "update flag" is not set, we read the * time and date then re-read the "update flag". If the update flag * has been set, we know that the time has changed during the read so * we repeat the whole process again. */ - err = regmap_read(rx8581->regmap, RX8581_REG_FLAG, &data); + err = regmap_read(regmap, RX8581_REG_FLAG, &data); if (err < 0) return err; @@ -92,20 +87,20 @@ static int rx8581_rtc_read_time(struct device *dev, struct rtc_time *tm) do { /* If update flag set, clear it */ if (data & RX8581_FLAG_UF) { - err = regmap_write(rx8581->regmap, RX8581_REG_FLAG, - data & ~RX8581_FLAG_UF); + err = regmap_write(regmap, RX8581_REG_FLAG, + data & ~RX8581_FLAG_UF); if (err < 0) return err; } /* Now read time and date */ - err = regmap_bulk_read(rx8581->regmap, RX8581_REG_SC, date, + err = regmap_bulk_read(regmap, RX8581_REG_SC, date, sizeof(date)); if (err < 0) return err; /* Check flag register */ - err = regmap_read(rx8581->regmap, RX8581_REG_FLAG, &data); + err = regmap_read(regmap, RX8581_REG_FLAG, &data); if (err < 0) return err; } while (data & RX8581_FLAG_UF); @@ -137,7 +132,7 @@ static int rx8581_rtc_set_time(struct device *dev, struct rtc_time *tm) struct i2c_client *client = to_i2c_client(dev); int err; unsigned char buf[7]; - struct rx8581 *rx8581 = i2c_get_clientdata(client); + struct regmap *regmap = i2c_get_clientdata(client); dev_dbg(dev, "%s: secs=%d, mins=%d, hours=%d, " "mday=%d, mon=%d, year=%d, wday=%d\n", @@ -160,25 +155,23 @@ static int rx8581_rtc_set_time(struct device *dev, struct rtc_time *tm) buf[RX8581_REG_DW] = (0x1 << tm->tm_wday); /* Stop the clock */ - err = regmap_update_bits(rx8581->regmap, RX8581_REG_CTRL, + err = regmap_update_bits(regmap, RX8581_REG_CTRL, RX8581_CTRL_STOP, RX8581_CTRL_STOP); if (err < 0) return err; /* write register's data */ - err = regmap_bulk_write(rx8581->regmap, RX8581_REG_SC, - buf, sizeof(buf)); + err = regmap_bulk_write(regmap, RX8581_REG_SC, buf, sizeof(buf)); if (err < 0) return err; /* get VLF and clear it */ - err = regmap_update_bits(rx8581->regmap, RX8581_REG_FLAG, - RX8581_FLAG_VLF, 0); + err = regmap_update_bits(regmap, RX8581_REG_FLAG, RX8581_FLAG_VLF, 0); if (err < 0) return err; /* Restart the clock */ - return regmap_update_bits(rx8581->regmap, RX8581_REG_CTRL, + return regmap_update_bits(regmap, RX8581_REG_CTRL, RX8581_CTRL_STOP, 0); } @@ -190,29 +183,27 @@ static const struct rtc_class_ops rx8581_rtc_ops = { static int rx8571_nvram_read(void *priv, unsigned int offset, void *val, size_t bytes) { - struct rx8581 *rx8581 = priv; + struct regmap *regmap = priv; - return regmap_bulk_read(rx8581->regmap, RX8571_USER_RAM + offset, - val, bytes); + return regmap_bulk_read(regmap, RX8571_USER_RAM + offset, val, bytes); } static int rx8571_nvram_write(void *priv, unsigned int offset, void *val, size_t bytes) { - struct rx8581 *rx8581 = priv; + struct regmap *regmap = priv; - return regmap_bulk_write(rx8581->regmap, RX8571_USER_RAM + offset, - val, bytes); + return regmap_bulk_write(regmap, RX8571_USER_RAM + offset, val, bytes); } static int rx85x1_nvram_read(void *priv, unsigned int offset, void *val, size_t bytes) { - struct rx8581 *rx8581 = priv; + struct regmap *regmap = priv; unsigned int tmp_val; int ret; - ret = regmap_read(rx8581->regmap, RX8581_REG_RAM, &tmp_val); + ret = regmap_read(regmap, RX8581_REG_RAM, &tmp_val); (*(unsigned char *)val) = (unsigned char) tmp_val; return ret; @@ -221,12 +212,11 @@ static int rx85x1_nvram_read(void *priv, unsigned int offset, void *val, static int rx85x1_nvram_write(void *priv, unsigned int offset, void *val, size_t bytes) { - struct rx8581 *rx8581 = priv; + struct regmap *regmap = priv; unsigned char tmp_val; tmp_val = *((unsigned char *)val); - return regmap_write(rx8581->regmap, RX8581_REG_RAM, - (unsigned int)tmp_val); + return regmap_write(regmap, RX8581_REG_RAM, (unsigned int)tmp_val); } static const struct rx85x1_config rx8581_config = { @@ -249,9 +239,10 @@ static const struct rx85x1_config rx8571_config = { static int rx8581_probe(struct i2c_client *client) { - struct rx8581 *rx8581; + struct regmap *regmap; const struct rx85x1_config *config = &rx8581_config; const void *data = of_device_get_match_data(&client->dev); + struct rtc_device *rtc; static struct nvmem_config nvmem_cfg[] = { { .name = "rx85x1-", @@ -276,31 +267,27 @@ static int rx8581_probe(struct i2c_client *client) if (data) config = data; - rx8581 = devm_kzalloc(&client->dev, sizeof(struct rx8581), GFP_KERNEL); - if (!rx8581) - return -ENOMEM; - - i2c_set_clientdata(client, rx8581); + regmap = devm_regmap_init_i2c(client, &config->regmap); + if (IS_ERR(regmap)) + return PTR_ERR(regmap); - rx8581->regmap = devm_regmap_init_i2c(client, &config->regmap); - if (IS_ERR(rx8581->regmap)) - return PTR_ERR(rx8581->regmap); + i2c_set_clientdata(client, regmap); - rx8581->rtc = devm_rtc_allocate_device(&client->dev); - if (IS_ERR(rx8581->rtc)) - return PTR_ERR(rx8581->rtc); + rtc = devm_rtc_allocate_device(&client->dev); + if (IS_ERR(rtc)) + return PTR_ERR(rtc); - rx8581->rtc->ops = &rx8581_rtc_ops; - rx8581->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; - rx8581->rtc->range_max = RTC_TIMESTAMP_END_2099; - rx8581->rtc->start_secs = 0; - rx8581->rtc->set_start_time = true; + rtc->ops = &rx8581_rtc_ops; + rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; + rtc->range_max = RTC_TIMESTAMP_END_2099; + rtc->start_secs = 0; + rtc->set_start_time = true; - ret = devm_rtc_register_device(rx8581->rtc); + ret = devm_rtc_register_device(rtc); for (i = 0; i < config->num_nvram; i++) { - nvmem_cfg[i].priv = rx8581; - devm_rtc_nvmem_register(rx8581->rtc, &nvmem_cfg[i]); + nvmem_cfg[i].priv = regmap; + devm_rtc_nvmem_register(rtc, &nvmem_cfg[i]); } return ret; From patchwork Tue Mar 4 17:05:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870428 Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com [209.85.208.54]) (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 5EE60290BD0 for ; Tue, 4 Mar 2025 17:05:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107945; cv=none; b=lhZZiQUFwZVdCkJKotlgqVB1NtMAiFVof3o97TWChX6SeJR7ZnJObh6iXDDPpBCe4ACRZPpgiJW0cuftv04WFzxeJLiqIHHSOkLWmaPxCr8ddC3XjnU592RlIyT5aMRKKjvDdKxj9Xp5Td9G/LRpzYoVRHXyQ9J5I9hEsNaWdQw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107945; c=relaxed/simple; bh=M4Ze9HORH9tUnnjpPlWigivxQdkAcaAxYcFUsuXXVuQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mQc6ec6hI2IHCDhJAxl7shmifXqDygTF31E1oVZ4xpBu2KkQySmsXIrNeMfk8/tjZLKkky24Z+yZRSlttiR07b72eD33d2dZZ2IZzieAHcY7SPrXcaUeTvrDJAIrMnxjGkZbFLS95PH3BkVaq5CfESt1SxicM5vuDkIPtj0t7UY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=BoIbshlp; arc=none smtp.client-ip=209.85.208.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="BoIbshlp" Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-5e50d491f69so4519021a12.1 for ; Tue, 04 Mar 2025 09:05:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107940; x=1741712740; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=hsaGEw76ofDXd3Q1RIPfSv8CJUvwC0w+ueATTj/NegM=; b=BoIbshlp0G00gd27VwrJ6i2hu7nG72FbP/83qvMN+QuKU0ebLPzqQNEEZ+uV+1Sm1t 4uN1xglWjnFCOA26onxYUtgtHp3yOycVeYpgimSVPixkuc27yEwk51n1gFXwO5hl+SK3 wbOUAqdy1IuXnDIqGpPX2EExxNgVkoX53kD6y7zMa6Y/2upyI+JFFH0Z5xqDFVOdWw+q eObY8R+0joo+1Y4FNzje2j3AV2fN92qdthcDEVpZ7pKF8ujo2kY07B9+6gZUaetowcl/ DKI9CqsoLJWsTI60Ev9TslXZDD5H/ERQ2jgJkM+xCD0GPNsNoenSNSQeGxkVzkJ3JeyX unRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107940; x=1741712740; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hsaGEw76ofDXd3Q1RIPfSv8CJUvwC0w+ueATTj/NegM=; b=Rx0KQq4gwtqn7gqrMBBPLEEO2w9zum8pNz67a6/m4XV2KzoQQwqMwtLnZ/MOleQyMB s6fXCu6gZff3bS9a3FuuJv22N5FRdjnOaAXF2KIjuM8HJLcPMKkGQchCaepiqEnlsgJT wfrHdwC2t6mKSYwT2EvdUIy7cjdBFo/LoJpxxLHf3pvIwXZk7TfU0l4+L+3XABb86VbW m6Qk0hU/dXuE3kMJ6+k1M6Y1sOJn6FSKx5CJZOwLHuc5QKFKzuK4T2bjrNLv8iV05auW UpCtEbs7CUaA9umxoBLrGxSG5QO5TTaGbiwWadDPG09+Me4U6RRJhKCm2SJxVjaIJd4a SSqQ== X-Forwarded-Encrypted: i=1; AJvYcCVbcV9O7nkaB4y49JDfkFweRQiexjtC/2BghaCZxd7y6ljPiELKn6Yc4mBSkJIcwePvet/A8UHcZw4evv3Cd9bSzQ==@vger.kernel.org X-Gm-Message-State: AOJu0Yx0ye0zGVKhq8L5K2/IRg7My11QSL9RNsvTVaM87uSYMnp5yTc+ fhaCx/3XGbgglZimhlAaaSp1myrjylRtGaR7y94X+n6N9mm2/WvfGHAy+euKQKkgFbb7J8ly3dJ LtDM= X-Gm-Gg: ASbGncvgqoE51lAQR7vh7S+il7ert0yoq+KZQTxiOZu8V4Q0DL403k3JNtaKM0yVR6F ugPBE5KXE7yIPqFgXIhPQgEBpycEA+t/zydZ9hzUXFtqZEuSXABNXV2oWpPSmXfrVOS41WTyiCi oVrXS1FHg705WtZinsDUXKC+sqNdPav5mhVbDsUrQ+6CfWlFSFmvF/nWcVyZ82iRjLgyi9sFyQ4 6ycMn2pYNfSVdQKoaLF/x/AJnMakeOJafszc4XX98FSqM9ktuYlSKJnb1yDrHphHZ3IoQI7N+g7 1vWOH6cs+edt3ylq0pwWr8efOAVT3ixrkS1zAcRaM1GqPYsAsgpZic8rf0W4dFRT4VbibAzngxV RVu4KPDdGBN9GC1amj1x7XDX3evmP X-Google-Smtp-Source: AGHT+IFl6TTi8U8Sph/F6W/xnjfer4H7R9+DXzK4OCCEVcy7pkMVR63rOrht0Su/bmOb+eKFGQTbhQ== X-Received: by 2002:a17:907:1c8b:b0:abf:38a:6498 with SMTP id a640c23a62f3a-ac20db16fb1mr2300366b.55.1741107940186; Tue, 04 Mar 2025 09:05:40 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:39 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:41 +0000 Subject: [PATCH v2 13/16] rtc: sd2405al: drop needless struct sd2405al::rtc member Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-13-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Tested-by: Tóth János Signed-off-by: André Draszik --- drivers/rtc/rtc-sd2405al.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/rtc/rtc-sd2405al.c b/drivers/rtc/rtc-sd2405al.c index d2568c3e387659dfea598cd2ef6bddc5c076cbb9..00c3033e8079b5f10aaabcc7a1d3f19771263a02 100644 --- a/drivers/rtc/rtc-sd2405al.c +++ b/drivers/rtc/rtc-sd2405al.c @@ -42,7 +42,6 @@ struct sd2405al { struct device *dev; - struct rtc_device *rtc; struct regmap *regmap; }; @@ -167,6 +166,7 @@ static const struct regmap_config sd2405al_regmap_conf = { static int sd2405al_probe(struct i2c_client *client) { struct sd2405al *sd2405al; + struct rtc_device *rtc; int ret; if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) @@ -182,17 +182,17 @@ static int sd2405al_probe(struct i2c_client *client) if (IS_ERR(sd2405al->regmap)) return PTR_ERR(sd2405al->regmap); - sd2405al->rtc = devm_rtc_allocate_device(&client->dev); - if (IS_ERR(sd2405al->rtc)) - return PTR_ERR(sd2405al->rtc); + rtc = devm_rtc_allocate_device(&client->dev); + if (IS_ERR(rtc)) + return PTR_ERR(rtc); - sd2405al->rtc->ops = &sd2405al_rtc_ops; - sd2405al->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; - sd2405al->rtc->range_max = RTC_TIMESTAMP_END_2099; + rtc->ops = &sd2405al_rtc_ops; + rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; + rtc->range_max = RTC_TIMESTAMP_END_2099; dev_set_drvdata(&client->dev, sd2405al); - ret = devm_rtc_register_device(sd2405al->rtc); + ret = devm_rtc_register_device(rtc); if (ret < 0) return ret; From patchwork Tue Mar 4 17:05:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870426 Received: from mail-ed1-f50.google.com (mail-ed1-f50.google.com [209.85.208.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 A37F02BF120 for ; Tue, 4 Mar 2025 17:05:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107946; cv=none; b=E4u/3kNihsO/qkKPBaEpU0a0UIFh22B1HmP/27hzh/xpw3CTtTP4nFtBycyarTVYhHVkTlDKNA3f+pLWe2yM02SdN+QqUOu5iOd9dh9Nx2aouhzybzDE4M3x+SrlyzzdeWTRls7iPEfw9VIgfCgVvxIs0yM4XG6EWfoftWOXVDE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107946; c=relaxed/simple; bh=REGjPiVOjqVZBOjhJUgX7G6ANaxzAPJnC5dNaRot8Ec=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=p4yLyOfNvnWSElFXbyEiZUY8OZLjstU8YUthPhYNhY3g3VFNXGbAxyVNC7G1Z6sf8xpIxVnCu1A9oTliHzxo/5/Laz8GqNaWTbMxpcRUUMLcLL6ujZ1ONzFVdQxkifIHw8q+aUwMpviVln0t5xaQJrNoMPppg9pdVZWhZ00rngA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=yi69Q1Mb; arc=none smtp.client-ip=209.85.208.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="yi69Q1Mb" Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-5e033c2f106so6844675a12.3 for ; Tue, 04 Mar 2025 09:05:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107941; x=1741712741; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=jDySvxIgslRZrTqVd7bcfGaor7CHMjwsKayUWf5uR70=; b=yi69Q1Mbb1GkjLEkC7jzKQv1xUdlusqv87QLBkdgvqCAx3CnAQrv1jpGc/bDIFqX/Y yGdr2jngu80ttpJmYLHwqJMKS/3cky1zgiecRkteFQUpOQ3CcJnILv4GLF5uMeJtOiAl TAu6rx1ocIguFuTz0RXsT5Wyp/WXPPVQRUiWSPyCgSiTCdZ/5a132G0y26FOWVtsB/E2 utVsUxE1O73TNJRqF4RVDRo12oWzrFGWkgr1drWvYtBgt578P46KQeRBHR4ouzoxAuSC TmbpiyA2qbGQXrkLyR4IEZLgbASIR8eljgxN19gtenJ+HAPeKu4XmSVa/QjXz60JJXcB kXbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107941; x=1741712741; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jDySvxIgslRZrTqVd7bcfGaor7CHMjwsKayUWf5uR70=; b=aBVCT00VeeP/fsUgVEjxQlRg81alxiCdG26kBsD3pP00HzFvZkax77Su06bkWT570k FF4f2h1OE/Ny74F/i5wYW5HmSMUiJ/me9rw61D4df/2B07+5LKB5ShZZWEYxBkFiwmhF 8skeS3GVXWE/dw3/w3F57DrthPeSCDZeUUX1QisX+pyMJ+XCuTDNe7mAvngAs7MmBD86 1/XUhCu4smgRop8qwB9j4pAv3IumOZFst+050HYVp7YGUDIhtGPia5vDZP/vULzluChS WMUbhbY0VBkgmKoXU+xY9N+RociAs53no9LedU4moJDyGWkEYLbTDbIvI7xgLRJfcosv RwsQ== X-Forwarded-Encrypted: i=1; AJvYcCXjOv4/A1SNDJcoxVqQlFIO1UyNX9D7dX6MzR4llswB2as0l80h7NktQxNJQc2bo16lF/hAcpH+mK6ISgPOvAOTvA==@vger.kernel.org X-Gm-Message-State: AOJu0YyDRaKqfzeoSpnCHUe8m5xysgYSJ61bcVxqbd62AWiFF2qaUEts vo+lIuKCopsDM+ufDmzL+pzwNBKPjW1+/F72meFlY2PhxwJG+I+5D6oqOyVCwQJL5pHOmszWQGI E85M= X-Gm-Gg: ASbGncu5efd2PBfRwmsXvxecpg4FkgPbkNG1+Wq0WhdBcqlXS9aGrNNJGPKIPN08vIz mZeTFPz9W5ghEB5J2YAFeGs4cM840jhIh822hgjH56hCV9SNkJNLBQuOf8oVHxuLgv6NJ31Y5PT jMA/RlgBLNWQhmcDmaLZLsGdM0fjsgzUuAB9M3qiqWM4rgKa+AixcT+FlOrWFpmmfPnfU/pFV0T OIl/no+LoJ3jnQkf5TENnBTZgrB8lJJ2Gc9nm+kqS2QD8PU++E76pJ9Vq2EvdyuOuouhcfPe6w3 sfk1OTlremFfCX/mS9fQNiK6X8C2m7gqjbWlen6wWX9QAA/DpBwPd1XDOfCN2V55VRf3atJbc5O fXQkrSrsJNr6fZo4Ob3TTnFLrqVe3 X-Google-Smtp-Source: AGHT+IGw6DMujSSlMe4X/Gi0vjiilArq9AgwOJMWr49ZazH2bLzcdxFw+AmPTscolQ+3wmW3ZQIPiA== X-Received: by 2002:a05:6402:50d4:b0:5e5:9543:fc0d with SMTP id 4fb4d7f45d1cf-5e59543fd82mr4097180a12.31.1741107940802; Tue, 04 Mar 2025 09:05:40 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:40 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:42 +0000 Subject: [PATCH v2 14/16] rtc: sd3078: drop needless struct sd3078 Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-14-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= X-Mailer: b4 0.14.2 The memory pointed to by the ::rtc member is managed via devres, and no code in this driver uses it past _probe(). We can drop it from the structure and just use a local temporary variable, reducing runtime memory consumption by a few bytes. Since this now means that the structure has just one member only left, there is no need anymore to allocate data for it and pass that around via the various callbacks, just to extract that one member. Instead, we can just pass that one member and avoid the extra memory allocation for the containing struct, reducing runtime memory consumption. Signed-off-by: André Draszik --- drivers/rtc/rtc-sd3078.c | 71 +++++++++++++++++++----------------------------- 1 file changed, 28 insertions(+), 43 deletions(-) diff --git a/drivers/rtc/rtc-sd3078.c b/drivers/rtc/rtc-sd3078.c index fe27b54beaad1c06b70bf7f22e44c3f6da087267..10cc1dcfc7748144f51ef674939506feee1fb471 100644 --- a/drivers/rtc/rtc-sd3078.c +++ b/drivers/rtc/rtc-sd3078.c @@ -36,11 +36,6 @@ */ #define WRITE_PROTECT_EN 0 -struct sd3078 { - struct rtc_device *rtc; - struct regmap *regmap; -}; - /* * In order to prevent arbitrary modification of the time register, * when modification of the register, @@ -49,14 +44,11 @@ struct sd3078 { * 2. set WRITE2 bit * 3. set WRITE3 bit */ -static void sd3078_enable_reg_write(struct sd3078 *sd3078) +static void sd3078_enable_reg_write(struct regmap *regmap) { - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL2, - KEY_WRITE1, KEY_WRITE1); - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL1, - KEY_WRITE2, KEY_WRITE2); - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL1, - KEY_WRITE3, KEY_WRITE3); + regmap_update_bits(regmap, SD3078_REG_CTRL2, KEY_WRITE1, KEY_WRITE1); + regmap_update_bits(regmap, SD3078_REG_CTRL1, KEY_WRITE2, KEY_WRITE2); + regmap_update_bits(regmap, SD3078_REG_CTRL1, KEY_WRITE3, KEY_WRITE3); } #if WRITE_PROTECT_EN @@ -69,14 +61,11 @@ static void sd3078_enable_reg_write(struct sd3078 *sd3078) * 2. clear WRITE3 bit * 3. clear WRITE1 bit */ -static void sd3078_disable_reg_write(struct sd3078 *sd3078) +static void sd3078_disable_reg_write(struct regmap *regmap) { - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL1, - KEY_WRITE2, 0); - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL1, - KEY_WRITE3, 0); - regmap_update_bits(sd3078->regmap, SD3078_REG_CTRL2, - KEY_WRITE1, 0); + regmap_update_bits(regmap, SD3078_REG_CTRL1, KEY_WRITE2, 0); + regmap_update_bits(regmap, SD3078_REG_CTRL1, KEY_WRITE3, 0); + regmap_update_bits(regmap, SD3078_REG_CTRL2, KEY_WRITE1, 0); } #endif @@ -85,11 +74,10 @@ static int sd3078_rtc_read_time(struct device *dev, struct rtc_time *tm) unsigned char hour; unsigned char rtc_data[NUM_TIME_REGS] = {0}; struct i2c_client *client = to_i2c_client(dev); - struct sd3078 *sd3078 = i2c_get_clientdata(client); + struct regmap *regmap = i2c_get_clientdata(client); int ret; - ret = regmap_bulk_read(sd3078->regmap, SD3078_REG_SC, rtc_data, - NUM_TIME_REGS); + ret = regmap_bulk_read(regmap, SD3078_REG_SC, rtc_data, NUM_TIME_REGS); if (ret < 0) { dev_err(dev, "reading from RTC failed with err:%d\n", ret); return ret; @@ -123,7 +111,7 @@ static int sd3078_rtc_set_time(struct device *dev, struct rtc_time *tm) { unsigned char rtc_data[NUM_TIME_REGS]; struct i2c_client *client = to_i2c_client(dev); - struct sd3078 *sd3078 = i2c_get_clientdata(client); + struct regmap *regmap = i2c_get_clientdata(client); int ret; rtc_data[SD3078_REG_SC] = bin2bcd(tm->tm_sec); @@ -135,10 +123,10 @@ static int sd3078_rtc_set_time(struct device *dev, struct rtc_time *tm) rtc_data[SD3078_REG_YR] = bin2bcd(tm->tm_year - 100); #if WRITE_PROTECT_EN - sd3078_enable_reg_write(sd3078); + sd3078_enable_reg_write(regmap); #endif - ret = regmap_bulk_write(sd3078->regmap, SD3078_REG_SC, rtc_data, + ret = regmap_bulk_write(regmap, SD3078_REG_SC, rtc_data, NUM_TIME_REGS); if (ret < 0) { dev_err(dev, "writing to RTC failed with err:%d\n", ret); @@ -146,7 +134,7 @@ static int sd3078_rtc_set_time(struct device *dev, struct rtc_time *tm) } #if WRITE_PROTECT_EN - sd3078_disable_reg_write(sd3078); + sd3078_disable_reg_write(regmap); #endif return 0; @@ -166,36 +154,33 @@ static const struct regmap_config regmap_config = { static int sd3078_probe(struct i2c_client *client) { int ret; - struct sd3078 *sd3078; + struct regmap *regmap; + struct rtc_device *rtc; if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) return -ENODEV; - sd3078 = devm_kzalloc(&client->dev, sizeof(*sd3078), GFP_KERNEL); - if (!sd3078) - return -ENOMEM; - - sd3078->regmap = devm_regmap_init_i2c(client, ®map_config); - if (IS_ERR(sd3078->regmap)) { + regmap = devm_regmap_init_i2c(client, ®map_config); + if (IS_ERR(regmap)) { dev_err(&client->dev, "regmap allocation failed\n"); - return PTR_ERR(sd3078->regmap); + return PTR_ERR(regmap); } - i2c_set_clientdata(client, sd3078); + i2c_set_clientdata(client, regmap); - sd3078->rtc = devm_rtc_allocate_device(&client->dev); - if (IS_ERR(sd3078->rtc)) - return PTR_ERR(sd3078->rtc); + rtc = devm_rtc_allocate_device(&client->dev); + if (IS_ERR(rtc)) + return PTR_ERR(rtc); - sd3078->rtc->ops = &sd3078_rtc_ops; - sd3078->rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; - sd3078->rtc->range_max = RTC_TIMESTAMP_END_2099; + rtc->ops = &sd3078_rtc_ops; + rtc->range_min = RTC_TIMESTAMP_BEGIN_2000; + rtc->range_max = RTC_TIMESTAMP_END_2099; - ret = devm_rtc_register_device(sd3078->rtc); + ret = devm_rtc_register_device(rtc); if (ret) return ret; - sd3078_enable_reg_write(sd3078); + sd3078_enable_reg_write(regmap); return 0; } From patchwork Tue Mar 4 17:05:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Andr=C3=A9_Draszik?= X-Patchwork-Id: 870425 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (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 0E45E2BF127 for ; Tue, 4 Mar 2025 17:05:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107949; cv=none; b=jnbC6jVXSJdjuxhg1rMj74qjcPXR+ZR+Yv04e1qO57+rGT9vbI4xBQttHZtDNJ626nl2BzqZSBYHC5zHgfN53HxuHhbC5+A6oxAcltsIppCqWpObjJFDq/AxF6uwGXHzKWsaS4k72loSKzDFpNqcZFR/cddlcUzzuFWkK33hqC8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741107949; c=relaxed/simple; bh=9NiX1CWV0hfu5OaTJtAP498kfcNRuxNWGXOfalDiImQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dZgfVkBKDEdd/lJby7fhWwZjKSVHgKd11ALdY/LjhltLrVV+z3zpDgfbJKyVkhtxY7f4n4qaoVdVuP4aTcHj0nLnqCem7meDm3oZJKJnsIpojtEjFavcFfANR0fKGZRRbe9lTcyMZOUXmVRxGKqAE4vhwLqWKAhIcyCWCI/9SWQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=HWeitVD2; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="HWeitVD2" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-43bbc8b7c65so28261425e9.0 for ; Tue, 04 Mar 2025 09:05:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1741107942; x=1741712742; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=2+a3Z9er7HS5GhzYho010S7pznnO0QcQ46P/wgZR3Rg=; b=HWeitVD2KfHXmID+JZ0Qw97az5c4S5wCuYWb/qh1PoKs3mkNUER/F7p/d2srKVNvrw 7ZYwQzQlTbXJa+xJ1M+/Ky4NUxfnWNkCM23LmrZ9u/uVq0m3aN1IDMHt/pS5bda4Py+N rUogfWzaLnd3LHPLBPTYgoOHncg7K/TdqS9RJMyi2p614MxjDcngJa541Opm1ep/FJTp QrU1MWqry/N6+b90kHydMqqzugCEFH84hc/Z+WLTQuQfzDmRsgwULR5jtnHco0A6KQVK nceYkki+sOCjkti7fvQUAEumI6GeS7B2g3iAKA08eIGN7Waj8J3W7ZoiZMxZ4nZ8Syy2 L9NQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741107942; x=1741712742; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2+a3Z9er7HS5GhzYho010S7pznnO0QcQ46P/wgZR3Rg=; b=ZVeiZvtxynZsHrJ5n7eFSLbkcguYRD7WWVXM5ESPKjb7WweMjLlrl63Xd1nvca3uGo /Fy0T5aR++N747r6AX3KATZQc4lTJA3wE2Bf13xZgiK/Z6ePPS3tDT2v82TK2J9ng0pK jSklqs6JQOoFl5ZHIDBbI74r0kxdOe5G2DLGzlp4425MNyz9k039abMEq1fjhSmh+0s3 CNm7wYrvy+RM3tpku5ZEYp/zhYYtEI1d8FNIc3etIEPwlvshDKv5/peKtCivL4X9NBF3 GaRlmSQf3QRxwaIFDsjFaANHx92vxI2bif0sP/QrZPTlSMZShSXqEUbyo84sPvSMtOTT qmsw== X-Forwarded-Encrypted: i=1; AJvYcCW7X/K8WnRJfu7690vZLeH0FiyvthoCwnn02Ms2za66062WsmGA7Ob2AJQ7N15IVjRGDng5ENIHKO74r+AQ+xRQlw==@vger.kernel.org X-Gm-Message-State: AOJu0YwbvvpREPM/U7xD3HIjAvfEz9Hpb/2ZvmKMQ5hgw2VqD9uSuByE QjG+XwuLTFidiyMicrq/K4J4DlN1Lks+AzkSEiSWnTm2Up0G1o7y3XfXJoJG25ejOoAeoUAg4jk tlos= X-Gm-Gg: ASbGnctCByzJexkYkhtrj+Idlx1RpM2TGQn9AC6YBRYOUy/0K3bGYKRTlbR51YWm4A4 apkDXaIqG6go/vFg9clAWNsNyQxgrNsT55AcDMnSQby6ZcXWdsARtSpmbeGDb/Sc1QXfP+8cFWj VSdX0llCkjg1kRF5090cJw0BXkyAW3/S9zeJ3GVU80kTel+fTnzxCFtphm5MGYOrNS3YEjpvyqb tvWBkVEgQwLQISBkSF86vcLIYVjsOQWvj7exZG6n7Sfhn2XvqMAZYGpRnJGRyByBvgR8I7e4J9M oqhw/ES3m483cQmUoCYVhSojsgXlebagOa5rJ/j3aMPNO47W+yVFI6eiav3+I8Zxo5Rt/9Xnxme LVfv/iFNTIq9ay5tNg7UIO2v1kuzY X-Google-Smtp-Source: AGHT+IFBi6JjsYJDnSEwMCPY80NtpnY/0pWo317IbLvcMp22I1j/lVgkodnN+FQ/p9Zn6V6GISOI9g== X-Received: by 2002:a05:6000:178c:b0:390:debd:70c3 with SMTP id ffacd0b85a97d-390eca25fbdmr19248281f8f.54.1741107941433; Tue, 04 Mar 2025 09:05:41 -0800 (PST) Received: from puffmais.c.googlers.com (30.171.91.34.bc.googleusercontent.com. [34.91.171.30]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-abf795ba15esm367589066b.131.2025.03.04.09.05.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 09:05:41 -0800 (PST) From: =?utf-8?q?Andr=C3=A9_Draszik?= Date: Tue, 04 Mar 2025 17:05:43 +0000 Subject: [PATCH v2 15/16] rtc: max77686: use dev_err_probe() where appropriate Precedence: bulk X-Mailing-List: linux-samsung-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250304-rtc-cleanups-v2-15-d4689a71668c@linaro.org> References: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> In-Reply-To: <20250304-rtc-cleanups-v2-0-d4689a71668c@linaro.org> To: Chanwoo Choi , Krzysztof Kozlowski , Alexandre Belloni , Joel Stanley , Andrew Jeffery , Hans Ulli Kroll , Linus Walleij , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , =?utf-8?b?VMOz?= =?utf-8?b?dGggSsOhbm9z?= , Dianlong Li , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt Cc: linux-kernel@vger.kernel.org, linux-rtc@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-amlogic@lists.infradead.org, llvm@lists.linux.dev, =?utf-8?q?Andr=C3=A9_Draszik?= , Krzysztof Kozlowski X-Mailer: b4 0.14.2 dev_err_probe() exists to simplify code and harmonise error messages, there's no reason not to use it here. Reviewed-by: Krzysztof Kozlowski Signed-off-by: André Draszik --- drivers/rtc/rtc-max77686.c | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/drivers/rtc/rtc-max77686.c b/drivers/rtc/rtc-max77686.c index 6b0d02b44c8097453f704cbec9f02580fb869ca3..69ea3ce75b5a5426d4a56b979773be71c4ee7562 100644 --- a/drivers/rtc/rtc-max77686.c +++ b/drivers/rtc/rtc-max77686.c @@ -704,10 +704,9 @@ static int max77686_init_rtc_regmap(struct max77686_rtc_info *info) } info->regmap = dev_get_regmap(parent, NULL); - if (!info->regmap) { - dev_err(info->dev, "Failed to get rtc regmap\n"); - return -ENODEV; - } + if (!info->regmap) + return dev_err_probe(info->dev, -ENODEV, + "Failed to get rtc regmap\n"); if (info->drv_data->rtc_i2c_addr == MAX77686_INVALID_I2C_ADDR) { info->rtc_regmap = info->regmap; @@ -716,28 +715,24 @@ static int max77686_init_rtc_regmap(struct max77686_rtc_info *info) client = devm_i2c_new_dummy_device(info->dev, parent_i2c->adapter, info->drv_data->rtc_i2c_addr); - if (IS_ERR(client)) { - dev_err(info->dev, "Failed to allocate I2C device for RTC\n"); - return PTR_ERR(client); - } + if (IS_ERR(client)) + return dev_err_probe(info->dev, PTR_ERR(client), + "Failed to allocate I2C device for RTC\n"); info->rtc_regmap = devm_regmap_init_i2c(client, info->drv_data->regmap_config); - if (IS_ERR(info->rtc_regmap)) { - ret = PTR_ERR(info->rtc_regmap); - dev_err(info->dev, "Failed to allocate RTC regmap: %d\n", ret); - return ret; - } + if (IS_ERR(info->rtc_regmap)) + return dev_err_probe(info->dev, PTR_ERR(info->rtc_regmap), + "Failed to allocate RTC regmap\n"); add_rtc_irq: ret = regmap_add_irq_chip(info->rtc_regmap, info->rtc_irq, IRQF_ONESHOT | IRQF_SHARED, 0, info->drv_data->rtc_irq_chip, &info->rtc_irq_data); - if (ret < 0) { - dev_err(info->dev, "Failed to add RTC irq chip: %d\n", ret); - return ret; - } + if (ret < 0) + return dev_err_probe(info->dev, ret, + "Failed to add RTC irq chip\n"); return 0; }