From nobody Sat Nov 23 08:28:31 2024 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) (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 6D54618BC05 for ; Wed, 13 Nov 2024 08:54:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488071; cv=none; b=h4Y8uvp7dZ2xDUhE+rDBndYtpRsil4qpIlB4ReFijIJ1f48mU6An8D2UHrBBnqBoqppboifbaWDmENLe52LplP6LikYFdR5P1nwCZgv81Gcsi88LStW18eQEvZACcO9oq2ny79FQguvXvAeYw+OGG0xq5b1Ir56nZ293TIYoCBs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488071; c=relaxed/simple; bh=5rZEVE8ZG2QG5VfVFTqm/2+0sB7OhE8B8hdHzbk+2lc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ED4GV1tBgHeCr7J5PX2noHk0jBjs6wg98Rfc8mDTG7lihvR7B2bylFAb+VN59g4xBY+Mb2v5Q5iH3Qt0sajNPEMw4QFauDGBVW8rFkQmjaQNvHrHPKytZ2mLywnFoi9PcdTxs0J68u7TAybW5rAFt+TK/kBfF1mkzuT3oi3MJTE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org; spf=none smtp.mailfrom=nigauri.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b=0QsHFDyL; arc=none smtp.client-ip=209.85.216.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=nigauri.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b="0QsHFDyL" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2e2bb1efe78so370329a91.1 for ; Wed, 13 Nov 2024 00:54:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nigauri-org.20230601.gappssmtp.com; s=20230601; t=1731488067; x=1732092867; 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=a/QQvBKfHWcx99S3MFyn6CIdzyDe++fvtDF8fIMsYbQ=; b=0QsHFDyLWvXErQ78o3GVBKaQtkrJzd0M40782OJXHR4s4TdgUvDDnRo0k0bNAvedh8 TaFiDD0Daw/fymOSxOWQb4aAWv1fYV9awwLKxoR301YP9/LpPFv7u+cY8mBYeJqCl7Mg f89bvKDzdmJ6mGTHV3dnSu3Qo66Sjdr0VPnxKeUVL5aJm5KmdL/JvUJYFx6daX3S7jB0 hsQ8/I0uD34EHsXKZvuJ93cDkkzAgN+L1keBv4aL+n1XEsDy1aHFTPoWQ35grMKTHKVW Roqo54OYahZLNsk9tGBBl2PS5Hir0hUJTqY6i5WZooBcVNPCi1/M1zAwQMzEafAH4mlL +brw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731488067; x=1732092867; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a/QQvBKfHWcx99S3MFyn6CIdzyDe++fvtDF8fIMsYbQ=; b=Dia9tQOwhqM62w7wfSxPrA3IL6hZrZnaL9TEgiTBFBiWaI2UDQSITEd/5ig/pSR6NM OOvrGegngEjD0YTBzZRUnjQ6/N8lDOrMMmsJBZ3JPSrAQ8uYYDYGrrwvrxIcew5yruHC +NkjvV5Lsct3Nqy9DlKWpPRIu9RaJ06CEr9ejJl06kI17QDJ34PCQEwKCH52tWALLOzF 4WeeM8pe3XUQ4ks0Qkzlme4TC9IqTXHXpQju3yFdqoayW2u4omf17jPyJV1pCjAlgaou f7btWnudjXgi5si8Dtyp1z/yYJAGh/F6etqOSMffIl5VMP/e9lmKKCL6AAIuiONbbakt JhAQ== X-Forwarded-Encrypted: i=1; AJvYcCW5n0JKxzLsUlbzj3iJizZoOJXa20mMEEsXMcwHZTtKs9QOmGR0VuQYK2fnphoxX/LkiI0N4ZVqn0VfvHE=@vger.kernel.org X-Gm-Message-State: AOJu0YwR/3KVaimRxDF2AKpjcEmvUl7sUQkboXMG0OjQQrul7kQMbac8 qdy7qsQ2QlnXXNv45i8733bT3RGenxL0qHRUzPoFP6iH3f3zyHI9C9pSL/IT X-Google-Smtp-Source: AGHT+IE88wJlLPAh5zibBEt5ecTqueLIppGyqpsefbMEfjjtHXPO/LKkFBoqmw1dPbdImmuU0m0nWQ== X-Received: by 2002:a17:90b:4b88:b0:2e0:f035:8027 with SMTP id 98e67ed59e1d1-2e9b1ec3ad9mr27550774a91.2.1731488066639; Wed, 13 Nov 2024 00:54:26 -0800 (PST) Received: from localhost ([2405:6581:5360:1800:a83:68dd:5f1c:4ed9]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2e9f3e94e8esm957843a91.3.2024.11.13.00.54.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Nov 2024 00:54:26 -0800 (PST) From: Nobuhiro Iwamatsu To: linux-rtc@vger.kernel.org, Alexandre Belloni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Olof Johansson Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-kernel@vger.kernel.org, Heiko Stuebner , Nobuhiro Iwamatsu Subject: [PATCH 1/5] ARM: multi_v7_defconfig: Add RTC PCF8563 support Date: Wed, 13 Nov 2024 17:53:51 +0900 Message-ID: <20241113085355.1972607-2-iwamatsu@nigauri.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241113085355.1972607-1-iwamatsu@nigauri.org> References: <20241113085355.1972607-1-iwamatsu@nigauri.org> 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" There are many ARM dts that support RTC PCF8563 but are not enabled in multi_v7_defconfig. This enable RTC PCF8563 to work with boards that uses this. Signed-off-by: Nobuhiro Iwamatsu --- arch/arm/configs/multi_v7_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v= 7_defconfig index 9a5f5c439b8791..139b1c6fa656fa 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -997,6 +997,7 @@ CONFIG_RTC_DRV_RK808=3Dm CONFIG_RTC_DRV_RS5C372=3Dm CONFIG_RTC_DRV_PCF85063=3Dm CONFIG_RTC_DRV_PCF85363=3Dm +CONFIG_RTC_DRV_PCF8563=3Dm CONFIG_RTC_DRV_BQ32K=3Dm CONFIG_RTC_DRV_TWL4030=3Dy CONFIG_RTC_DRV_PALMAS=3Dy --=20 2.45.2 From nobody Sat Nov 23 08:28:31 2024 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 0CFFD185936 for ; Wed, 13 Nov 2024 08:54:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488071; cv=none; b=tB/CRghjNkJMTO0ICiVK8XIn1/pF26sx+8nASHY7qx6Z2EnpPaqRo9rKpGUlgyJVJW6YZ5OqEHYUt9Inz4sH+RGs2enhjEs4GJSl+b6YqIdnUNOd+8EuwBthRUtNw11KlxRhSqajcRRZSCOX0K7fAcyrNxjWY3fAiMkXaK1+ibo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488071; c=relaxed/simple; bh=sC0rGWKRhlBzr+1LQVi/VMn0X6bCdk54lshxZlGnk6M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rV7Vv38hO/VLVa3sw1cl4+RKIrtxpaN4BzrJxk3MwlMTY/IBdb43eD8yTLZXo+QHXVdUAEg+thBPV/jV6I9QLU/+fSy9/oismuiA4eRAyIB+N5K750hyn+0oG+YVVEmlJNLz8E08d8bEtnrMxkct+2LKwOSBzQkOV+DBmx/15cQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org; spf=none smtp.mailfrom=nigauri.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b=EP4Ur6gJ; arc=none smtp.client-ip=209.85.214.182 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=nigauri.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b="EP4Ur6gJ" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-20cf3e36a76so68683455ad.0 for ; Wed, 13 Nov 2024 00:54:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nigauri-org.20230601.gappssmtp.com; s=20230601; t=1731488069; x=1732092869; 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=fNsK27Fa1Ex5W0VeJ3TA3Gtj8S2K08nVqm3agCQiDts=; b=EP4Ur6gJjbHhFlWJeJAaLg8LSmk3UbmOD7tGTnXxyI87OJJADADLhvPufmlX1LpuEq dapCcZqRLhl8UyH/1ZgwINxda4zWQZUCI8S2tq0jGr/bMKXA24IQVlGX+x9yFXgaCWxp GVadN09GdCkKBH5fOYhu9tH51Bo/EBKUEJri9BQDl4GxjetkaaBPtC6Kg7zsCyrXLQ+v LX0Zvb6Q/3UKroTOg7O/oPE88yttNUZCRTVpVJHHIU/xoRSfDrSdgpqLhf32mDO69y9s FZgK4qxW3kG7ie1ULGHglYovgnnAJ5aBzVyUPFz5oS2YgRhENyR1SUbowJsCZ+8EcB2d 2NwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731488069; x=1732092869; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fNsK27Fa1Ex5W0VeJ3TA3Gtj8S2K08nVqm3agCQiDts=; b=fCKTLC6/TcIZBcu4MbQFDKtSLx2Uclm22x3pIZ9gNrK/ogM1TbmxjZQnpGDdkST86t 0/oYcT5X5Oe7rycxFS/XW859gfCuk1OUkHXleTJCB8S2fa0HRcoqDxIEngspopZx0Bqk 2K7ollcKmlzRnKl8s1dJwIatFCugsFPNGSJH2ZO3Mb+nMIasYJylgcQR+l2Z0+ar6a5w q16NW8HjvTnRrJJf0NtcaTezLIoc2ZBAQlpb3rt7Na/XggbSOJWaCQw+pLPlcOX+uPTc CKAKWtJipLjQnrucvDNfVb660LXvDahFZ/3uCTn028T+NQHVByQ5XwU3kbreNM+kBxam /7JA== X-Forwarded-Encrypted: i=1; AJvYcCVi5JeTbuj7kbM7NSiNLPTNQzNH/u86tWLwSyeY4lSePcDe3ZLUAr0jjggRu6YXh4q1Txjsyu2iz9IWKt0=@vger.kernel.org X-Gm-Message-State: AOJu0Yx02gUm0HeFujZYPT74JXLeB8Mg2gJQDEue25Ss+I8u8L9Ok36O Xn9IQUWLzfENFKxg266VbS442msYd/qyWe+1z+D7WOOS4dkuaiOWS/xPCjAa X-Google-Smtp-Source: AGHT+IGvQQOK2pmty0Ab0hdZeyxnxRqA5cqd4YJeTPkl4mPTvKSC4kOdrnW1nTpFjXXf6p4vsYJGyQ== X-Received: by 2002:a17:902:ccc9:b0:206:9a3f:15e5 with SMTP id d9443c01a7336-211b5ccdc57mr31401705ad.32.1731488069238; Wed, 13 Nov 2024 00:54:29 -0800 (PST) Received: from localhost ([2405:6581:5360:1800:a83:68dd:5f1c:4ed9]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-21177dc826fsm106095085ad.11.2024.11.13.00.54.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Nov 2024 00:54:28 -0800 (PST) From: Nobuhiro Iwamatsu To: linux-rtc@vger.kernel.org, Alexandre Belloni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Olof Johansson Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-kernel@vger.kernel.org, Heiko Stuebner , Nobuhiro Iwamatsu Subject: [PATCH 2/5] rtc: pcf8563: Add support Haoyu HYM8563 Date: Wed, 13 Nov 2024 17:53:52 +0900 Message-ID: <20241113085355.1972607-3-iwamatsu@nigauri.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241113085355.1972607-1-iwamatsu@nigauri.org> References: <20241113085355.1972607-1-iwamatsu@nigauri.org> 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" Haoyu HYM8563 has the same hardware structure as PCF8563, and operates with the same device driver. This adds Haoyu HYM8563 information to the device driver and document to support it. Signed-off-by: Nobuhiro Iwamatsu --- drivers/rtc/rtc-pcf8563.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/rtc/rtc-pcf8563.c b/drivers/rtc/rtc-pcf8563.c index 5a084d426e58d0..42382c8709b7af 100644 --- a/drivers/rtc/rtc-pcf8563.c +++ b/drivers/rtc/rtc-pcf8563.c @@ -555,6 +555,7 @@ static const struct i2c_device_id pcf8563_id[] =3D { { "pcf8563" }, { "rtc8564" }, { "pca8565" }, + { "hym8563" }, { } }; MODULE_DEVICE_TABLE(i2c, pcf8563_id); @@ -565,6 +566,7 @@ static const struct of_device_id pcf8563_of_match[] =3D= { { .compatible =3D "epson,rtc8564" }, { .compatible =3D "microcrystal,rv8564" }, { .compatible =3D "nxp,pca8565" }, + { .compatible =3D "haoyu,hym8563" }, {} }; MODULE_DEVICE_TABLE(of, pcf8563_of_match); --=20 2.45.2 From nobody Sat Nov 23 08:28:31 2024 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (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 EC52818C027 for ; Wed, 13 Nov 2024 08:54:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488074; cv=none; b=dYf7VYmGn3aUmvSQCOE/ND/zfjGIPgcvh9MBwOEsQcTKUH/KQxtePcea29so24OXLmNFbgabYlfEa7kXTsKh2YkT1YFgELLH0kmXGX9RIlsNHFBinVz8K94ERE5O+ay9uD3HmJW7L3XY5nYaPeuwy475p+6PizpsBXMDyXWB1Xk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488074; c=relaxed/simple; bh=FjrJkjs8/lO/BOHm3tJ/5Gaj44x6NJ0bnzkY8/DgKfw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lY2tbYIoyoON3ACrfbdyo0yMiqUmlrHwlYm3FB8W6w7918v7Oz6a3Bjru3OVQenUKbrazg5yPAKd3Yq3Ikc/Q4sRgEoHBGBO+pQ/CdnwEHItml7u8fwTc07hCt9u5D1aX1q3l9T690A1i65hQVSEKxcssLzOpcw9/WbNTwAdDDM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org; spf=none smtp.mailfrom=nigauri.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b=Se6mNcP9; arc=none smtp.client-ip=209.85.214.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=nigauri.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b="Se6mNcP9" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-20c9978a221so74470925ad.1 for ; Wed, 13 Nov 2024 00:54:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nigauri-org.20230601.gappssmtp.com; s=20230601; t=1731488072; x=1732092872; 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=RE8fjpX1Eb1RavtBPTEOqHq6IlPTdZrinGpmm0IJQSk=; b=Se6mNcP9TVa1GMzuVQdfvWNWO7CkWFZ5B1MS7yyH3Osk1OvFiOvt2XWtIAqJe4s0QA sUpLgVQa3+YzF+7pv5o8weA/eeQ7hckvvjrBrC2E8m2H/06tPAzD8p7TNPVHeKtvCWrr orqhNVBzn3URaSypCRTI2RfJJSNj9Qkcqfx/4h3WzcRqZrPJ9mHDDfjqxipx+yIqe1Pf Xb29wyLTp6O52iWw5BbLuTJryx1WFeTc6DWLsAriVstuGWDzyhEwx9bY5EvtKLkKNIZl TtbZiZCFt/mSIKgYiWaoVqhmheqXIzda2w2kQq9JygJtlQAzta2pRGPMwMogrYpptq9T AIQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731488072; x=1732092872; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RE8fjpX1Eb1RavtBPTEOqHq6IlPTdZrinGpmm0IJQSk=; b=Lf/uRmWfRcP8HGvdNsx63j3mngvV1q9Io1HcV9LYTC1bi1ROPpynNkN1X4t2c6ABxM MK1vhjFXEOdBsT5rzdR3dA0QwMU+9rpUhToiKRFXG8HAGXgHjPChpH8NyehGfmKSRYXe 3x5t/lICnvvzEvYSEpk0oDzTk6GV8UQs4uO8u3NzIkqc/8JPUuc6xurKO8gRDzTsWhPm 1r+Ib2kv5i+WO3iOpd95ueOeYiHUNmyqXyjqyCph+lX5gmjIcfn4FZNg3kR6MITWDVvb 3KZduVQYqNhCsw+QHIi5aG7vrVbmF5+wY++bM7AIS0PF2yzoiKLQL+t7EpGwc+grKtae 1dvA== X-Forwarded-Encrypted: i=1; AJvYcCWKS1HX4bigexcrsZlDwFYHjw7sQSEAv1ctvvD0kq1tVmosmIY/T9st22j4E4TYI3m61q1cxRAxuK3vF6A=@vger.kernel.org X-Gm-Message-State: AOJu0Yx0ucKnS6lBhdYKUkvugN2byAkSx/mOKHxl6vgbXbqhFsX2c/q/ oeR3SId3aGhgOCFotdG7q9PKFp3gP9vpHltgHjL1o+fjxgnXJdvdY5dEIunJ X-Google-Smtp-Source: AGHT+IEt+6DU2EbmOYoC0dtzfG72lfI52C3DG6Nlz1YJ5vBiydCt6vOeAd0bjW9+oe2ZO+9WdDqEag== X-Received: by 2002:a17:902:ec8d:b0:20c:c9db:7c45 with SMTP id d9443c01a7336-21183c9b37fmr271466235ad.20.1731488072379; Wed, 13 Nov 2024 00:54:32 -0800 (PST) Received: from localhost ([2405:6581:5360:1800:a83:68dd:5f1c:4ed9]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-21177e62dd4sm105302895ad.218.2024.11.13.00.54.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Nov 2024 00:54:31 -0800 (PST) From: Nobuhiro Iwamatsu To: linux-rtc@vger.kernel.org, Alexandre Belloni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Olof Johansson Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-kernel@vger.kernel.org, Heiko Stuebner , Nobuhiro Iwamatsu Subject: [PATCH 3/5] dt-bindings: rtc: pcf8563: Add Haoyu HYM8563 compatibility Date: Wed, 13 Nov 2024 17:53:53 +0900 Message-ID: <20241113085355.1972607-4-iwamatsu@nigauri.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241113085355.1972607-1-iwamatsu@nigauri.org> References: <20241113085355.1972607-1-iwamatsu@nigauri.org> 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" Haoyu HYM8563 is compatible with pcf8563 with '#clock-cells'. Signed-off-by: Nobuhiro Iwamatsu --- .../devicetree/bindings/rtc/nxp,pcf8563.yaml | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/rtc/nxp,pcf8563.yaml b/Docum= entation/devicetree/bindings/rtc/nxp,pcf8563.yaml index 22909a96123e58..54c45bf3075b6a 100644 --- a/Documentation/devicetree/bindings/rtc/nxp,pcf8563.yaml +++ b/Documentation/devicetree/bindings/rtc/nxp,pcf8563.yaml @@ -4,14 +4,11 @@ $id: http://devicetree.org/schemas/rtc/nxp,pcf8563.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# =20 -title: Philips PCF8563/Epson RTC8564 Real Time Clock +title: Philips PCF8563/Epson RTC8564, Haoyu Microelectronics HYM8563 Real = Time Clock =20 maintainers: - Alexandre Belloni =20 -allOf: - - $ref: rtc.yaml# - properties: compatible: enum: @@ -19,6 +16,7 @@ properties: - microcrystal,rv8564 - nxp,pca8565 - nxp,pcf8563 + - haoyu,hym8563 =20 reg: maxItems: 1 @@ -39,6 +37,18 @@ required: - compatible - reg =20 +allOf: + - $ref: rtc.yaml# + + - if: + properties: + compatible: + contains: + const: haoyu,hym8563 + then: + required: + - "#clock-cells" + additionalProperties: false =20 examples: --=20 2.45.2 From nobody Sat Nov 23 08:28:31 2024 Received: from mail-pg1-f178.google.com (mail-pg1-f178.google.com [209.85.215.178]) (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 3804718C920 for ; Wed, 13 Nov 2024 08:54:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488078; cv=none; b=QW5PJUgAVRDPKCnTMfQvr7bW7foEbUVhc5Ksp5zdaZdAmNcxQ1hG4mRsEFRw7rHL6sKBEUUlpm1O2cCUiMAI4L60X0/T9lRBztuuxMdUXGk/5ddwljAjLnl6byudAnDsA0Jq9qYLoNSSbl+rRN1ZxLsMnr58IaGfYFZT0HUfBjQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488078; c=relaxed/simple; bh=M44nGFoGdhKVrra1X5S80UZc7uIGENMrRE1mE7CPDkg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bQSzsy8cvKAOyqPI1aI0ys+T2HsrxXDiEUE/c+fPoXgyzk0WvwZmV0dgw0y0VoeAbhqjezXCYwB1NlVhC4ShNwTzY6cIViOyrdqcC7oQ/HmSjJGB3iqKe8Sa6CKep/dHLXTVVVuTiw7McsWz3GCQ0Qa4FFHeEWjsDcuYRoKVt2o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org; spf=none smtp.mailfrom=nigauri.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b=HQd4awB7; arc=none smtp.client-ip=209.85.215.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=nigauri.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b="HQd4awB7" Received: by mail-pg1-f178.google.com with SMTP id 41be03b00d2f7-7eab7622b61so4482856a12.1 for ; Wed, 13 Nov 2024 00:54:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nigauri-org.20230601.gappssmtp.com; s=20230601; t=1731488075; x=1732092875; 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=Ld7yDh/rdIKbceKp3UE/TIwrk3Cz4ygz3PEsoFCVyOQ=; b=HQd4awB7stpCyi1fLn9fuQAjrqQzIkuadCVtljepI6pV0/Olw08TV4o4RZowSTvdOh 6nDNM7VPD2LZyiChJQ70ahPmPOxIG0mUkbmoJwjZKKeHtdKxMjNzUls1anJblagIlwgp JYhkfsM+7KvdYIARq/A9CDzP7pEjotzI47YSpt4oAOUbnJKF5Y32+dGp7oOE/0IAwcoy 5Gy44kBI2tvagWCibBaq3EluYb1gMmKj871Yr914Z+iQhwI9mVSWBRFom7M0jdutsM5j +qwqrQwlLUs8JRa/Qkey4wOfNH9Os7nPm4apGCVGb6svzG/PVe8VxSQNqz8GYAG0Kg7b AaJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731488075; x=1732092875; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ld7yDh/rdIKbceKp3UE/TIwrk3Cz4ygz3PEsoFCVyOQ=; b=PhZ78CB3RInMZh43IVJfGQMuGW2S5eF5n07fuecG975h6Bvw/Nup74iZxdX4EL1rpy 8gMMm68a3JWWJEuvWyfd1ifmo9XrFrowJmmN/Iqf5AhMmii9xQietQY1Ral3qUanQxSp Y56MxY+7gceq+TZguRQBvyFy/hRk/Mjae4YVPfD/mScGW7nmV71wwnwLVwy2yaGwHTp3 R7SXLp2eKlBV5lq5BuSXNLn9YyCbor6r8AEWsSU9mVIe5OgCd8iqrk2Zj+KWuT3jRyKC 5xVGASE5JDWppWJOBPvFAh7Hus82w3U2kTU6wSZod2WYjOR9sg+VML6C62UluWD/cGh+ uMrQ== X-Forwarded-Encrypted: i=1; AJvYcCV2+H0tb9mUOx2OfwnU7GygtLzMhAAybiPuWSs7lm3wFkYmvIycUylXAiTniA+nLwGx3bkrLSYiBpZPVHw=@vger.kernel.org X-Gm-Message-State: AOJu0Yzn63qaSyLqMUHE1WvH/UFPewk3wsoWywzGKrr82oVG3DNakatC CtoZpEcW/wqjoRABgPibFroBNPB+212PupL0Emr9a/wbg188cClyvqNRlAF/ X-Google-Smtp-Source: AGHT+IEWh+6hi6eoqQxQEdQASLkni2BgGzn3U61O+GlCzEH64eUMCo6fHSgXH8x3OBdiPpmftG/ikA== X-Received: by 2002:a05:6a20:6a26:b0:1dc:30b:324c with SMTP id adf61e73a8af0-1dc22893561mr30257221637.7.1731488075527; Wed, 13 Nov 2024 00:54:35 -0800 (PST) Received: from localhost ([2405:6581:5360:1800:a83:68dd:5f1c:4ed9]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-7f41f48abbdsm11998250a12.10.2024.11.13.00.54.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Nov 2024 00:54:34 -0800 (PST) From: Nobuhiro Iwamatsu To: linux-rtc@vger.kernel.org, Alexandre Belloni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Olof Johansson Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-kernel@vger.kernel.org, Heiko Stuebner , Nobuhiro Iwamatsu Subject: [PATCH 4/5] rtc: Remove HYM8563 RTC driver Date: Wed, 13 Nov 2024 17:53:54 +0900 Message-ID: <20241113085355.1972607-5-iwamatsu@nigauri.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241113085355.1972607-1-iwamatsu@nigauri.org> References: <20241113085355.1972607-1-iwamatsu@nigauri.org> 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" The HYM8563 RTC device can work with pcf8563 driver. This removes and updates files related to RTC HYM8563. Signed-off-by: Nobuhiro Iwamatsu --- arch/arm/configs/multi_v7_defconfig | 1 - arch/arm64/configs/defconfig | 1 - drivers/rtc/Kconfig | 11 - drivers/rtc/Makefile | 1 - drivers/rtc/rtc-hym8563.c | 587 ---------------------------- 5 files changed, 601 deletions(-) delete mode 100644 drivers/rtc/rtc-hym8563.c diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v= 7_defconfig index 139b1c6fa656fa..1758f33d5582e8 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -988,7 +988,6 @@ CONFIG_RTC_CLASS=3Dy CONFIG_RTC_DRV_AC100=3Dy CONFIG_RTC_DRV_AS3722=3Dy CONFIG_RTC_DRV_DS1307=3Dy -CONFIG_RTC_DRV_HYM8563=3Dm CONFIG_RTC_DRV_MAX8907=3Dy CONFIG_RTC_DRV_MAX8998=3Dm CONFIG_RTC_DRV_MAX8997=3Dm diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index 5fdbfea7a5b295..0c1eb5d064a7dc 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -1190,7 +1190,6 @@ CONFIG_EDAC_GHES=3Dy CONFIG_EDAC_LAYERSCAPE=3Dm CONFIG_RTC_CLASS=3Dy CONFIG_RTC_DRV_DS1307=3Dm -CONFIG_RTC_DRV_HYM8563=3Dm CONFIG_RTC_DRV_MAX77686=3Dy CONFIG_RTC_DRV_RK808=3Dm CONFIG_RTC_DRV_ISL1208=3Dm diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index a60bcc791a4803..13701b4c3572ae 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -316,17 +316,6 @@ config RTC_DRV_DS1672 This driver can also be built as a module. If so, the module will be called rtc-ds1672. =20 -config RTC_DRV_HYM8563 - tristate "Haoyu Microelectronics HYM8563" - depends on OF - help - Say Y to enable support for the HYM8563 I2C RTC chip. Apart - from the usual rtc functions it provides a clock output of - up to 32kHz. - - This driver can also be built as a module. If so, the module - will be called rtc-hym8563. - config RTC_DRV_LP8788 tristate "TI LP8788 RTC driver" depends on MFD_LP8788 diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile index 489b4ab07068c7..91e8244072a66b 100644 --- a/drivers/rtc/Makefile +++ b/drivers/rtc/Makefile @@ -73,7 +73,6 @@ obj-$(CONFIG_RTC_DRV_FTRTC010) +=3D rtc-ftrtc010.o obj-$(CONFIG_RTC_DRV_GENERIC) +=3D rtc-generic.o obj-$(CONFIG_RTC_DRV_GOLDFISH) +=3D rtc-goldfish.o obj-$(CONFIG_RTC_DRV_HID_SENSOR_TIME) +=3D rtc-hid-sensor-time.o -obj-$(CONFIG_RTC_DRV_HYM8563) +=3D rtc-hym8563.o obj-$(CONFIG_RTC_DRV_IMXDI) +=3D rtc-imxdi.o obj-$(CONFIG_RTC_DRV_IMX_SC) +=3D rtc-imx-sc.o obj-$(CONFIG_RTC_DRV_IMX_BBM_SCMI) +=3D rtc-imx-sm-bbm.o diff --git a/drivers/rtc/rtc-hym8563.c b/drivers/rtc/rtc-hym8563.c deleted file mode 100644 index 63f11ea3589d64..00000000000000 --- a/drivers/rtc/rtc-hym8563.c +++ /dev/null @@ -1,587 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-only -/* - * Haoyu HYM8563 RTC driver - * - * Copyright (C) 2013 MundoReader S.L. - * Author: Heiko Stuebner - * - * based on rtc-HYM8563 - * Copyright (C) 2010 ROCKCHIP, Inc. - */ - -#include -#include -#include -#include -#include - -#define HYM8563_CTL1 0x00 -#define HYM8563_CTL1_TEST BIT(7) -#define HYM8563_CTL1_STOP BIT(5) -#define HYM8563_CTL1_TESTC BIT(3) - -#define HYM8563_CTL2 0x01 -#define HYM8563_CTL2_TI_TP BIT(4) -#define HYM8563_CTL2_AF BIT(3) -#define HYM8563_CTL2_TF BIT(2) -#define HYM8563_CTL2_AIE BIT(1) -#define HYM8563_CTL2_TIE BIT(0) - -#define HYM8563_SEC 0x02 -#define HYM8563_SEC_VL BIT(7) -#define HYM8563_SEC_MASK 0x7f - -#define HYM8563_MIN 0x03 -#define HYM8563_MIN_MASK 0x7f - -#define HYM8563_HOUR 0x04 -#define HYM8563_HOUR_MASK 0x3f - -#define HYM8563_DAY 0x05 -#define HYM8563_DAY_MASK 0x3f - -#define HYM8563_WEEKDAY 0x06 -#define HYM8563_WEEKDAY_MASK 0x07 - -#define HYM8563_MONTH 0x07 -#define HYM8563_MONTH_CENTURY BIT(7) -#define HYM8563_MONTH_MASK 0x1f - -#define HYM8563_YEAR 0x08 - -#define HYM8563_ALM_MIN 0x09 -#define HYM8563_ALM_HOUR 0x0a -#define HYM8563_ALM_DAY 0x0b -#define HYM8563_ALM_WEEK 0x0c - -/* Each alarm check can be disabled by setting this bit in the register */ -#define HYM8563_ALM_BIT_DISABLE BIT(7) - -#define HYM8563_CLKOUT 0x0d -#define HYM8563_CLKOUT_ENABLE BIT(7) -#define HYM8563_CLKOUT_32768 0 -#define HYM8563_CLKOUT_1024 1 -#define HYM8563_CLKOUT_32 2 -#define HYM8563_CLKOUT_1 3 -#define HYM8563_CLKOUT_MASK 3 - -#define HYM8563_TMR_CTL 0x0e -#define HYM8563_TMR_CTL_ENABLE BIT(7) -#define HYM8563_TMR_CTL_4096 0 -#define HYM8563_TMR_CTL_64 1 -#define HYM8563_TMR_CTL_1 2 -#define HYM8563_TMR_CTL_1_60 3 -#define HYM8563_TMR_CTL_MASK 3 - -#define HYM8563_TMR_CNT 0x0f - -struct hym8563 { - struct i2c_client *client; - struct rtc_device *rtc; -#ifdef CONFIG_COMMON_CLK - struct clk_hw clkout_hw; -#endif -}; - -/* - * RTC handling - */ - -static int hym8563_rtc_read_time(struct device *dev, struct rtc_time *tm) -{ - struct i2c_client *client =3D to_i2c_client(dev); - u8 buf[7]; - int ret; - - ret =3D i2c_smbus_read_i2c_block_data(client, HYM8563_SEC, 7, buf); - if (ret < 0) - return ret; - - if (buf[0] & HYM8563_SEC_VL) { - dev_warn(&client->dev, - "no valid clock/calendar values available\n"); - return -EINVAL; - } - - tm->tm_sec =3D bcd2bin(buf[0] & HYM8563_SEC_MASK); - tm->tm_min =3D bcd2bin(buf[1] & HYM8563_MIN_MASK); - tm->tm_hour =3D bcd2bin(buf[2] & HYM8563_HOUR_MASK); - tm->tm_mday =3D bcd2bin(buf[3] & HYM8563_DAY_MASK); - tm->tm_wday =3D bcd2bin(buf[4] & HYM8563_WEEKDAY_MASK); /* 0 =3D Sun */ - tm->tm_mon =3D bcd2bin(buf[5] & HYM8563_MONTH_MASK) - 1; /* 0 =3D Jan */ - tm->tm_year =3D bcd2bin(buf[6]) + 100; - - return 0; -} - -static int hym8563_rtc_set_time(struct device *dev, struct rtc_time *tm) -{ - struct i2c_client *client =3D to_i2c_client(dev); - u8 buf[7]; - int ret; - - /* Years >=3D 2100 are to far in the future, 19XX is to early */ - if (tm->tm_year < 100 || tm->tm_year >=3D 200) - return -EINVAL; - - buf[0] =3D bin2bcd(tm->tm_sec); - buf[1] =3D bin2bcd(tm->tm_min); - buf[2] =3D bin2bcd(tm->tm_hour); - buf[3] =3D bin2bcd(tm->tm_mday); - buf[4] =3D bin2bcd(tm->tm_wday); - buf[5] =3D bin2bcd(tm->tm_mon + 1); - - /* - * While the HYM8563 has a century flag in the month register, - * it does not seem to carry it over a subsequent write/read. - * So we'll limit ourself to 100 years, starting at 2000 for now. - */ - buf[6] =3D bin2bcd(tm->tm_year - 100); - - /* - * CTL1 only contains TEST-mode bits apart from stop, - * so no need to read the value first - */ - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CTL1, - HYM8563_CTL1_STOP); - if (ret < 0) - return ret; - - ret =3D i2c_smbus_write_i2c_block_data(client, HYM8563_SEC, 7, buf); - if (ret < 0) - return ret; - - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CTL1, 0); - if (ret < 0) - return ret; - - return 0; -} - -static int hym8563_rtc_alarm_irq_enable(struct device *dev, - unsigned int enabled) -{ - struct i2c_client *client =3D to_i2c_client(dev); - int data; - - data =3D i2c_smbus_read_byte_data(client, HYM8563_CTL2); - if (data < 0) - return data; - - if (enabled) - data |=3D HYM8563_CTL2_AIE; - else - data &=3D ~HYM8563_CTL2_AIE; - - return i2c_smbus_write_byte_data(client, HYM8563_CTL2, data); -}; - -static int hym8563_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *a= lm) -{ - struct i2c_client *client =3D to_i2c_client(dev); - struct rtc_time *alm_tm =3D &alm->time; - u8 buf[4]; - int ret; - - ret =3D i2c_smbus_read_i2c_block_data(client, HYM8563_ALM_MIN, 4, buf); - if (ret < 0) - return ret; - - /* The alarm only has a minute accuracy */ - alm_tm->tm_sec =3D 0; - - alm_tm->tm_min =3D (buf[0] & HYM8563_ALM_BIT_DISABLE) ? - -1 : - bcd2bin(buf[0] & HYM8563_MIN_MASK); - alm_tm->tm_hour =3D (buf[1] & HYM8563_ALM_BIT_DISABLE) ? - -1 : - bcd2bin(buf[1] & HYM8563_HOUR_MASK); - alm_tm->tm_mday =3D (buf[2] & HYM8563_ALM_BIT_DISABLE) ? - -1 : - bcd2bin(buf[2] & HYM8563_DAY_MASK); - alm_tm->tm_wday =3D (buf[3] & HYM8563_ALM_BIT_DISABLE) ? - -1 : - bcd2bin(buf[3] & HYM8563_WEEKDAY_MASK); - - ret =3D i2c_smbus_read_byte_data(client, HYM8563_CTL2); - if (ret < 0) - return ret; - - if (ret & HYM8563_CTL2_AIE) - alm->enabled =3D 1; - - return 0; -} - -static int hym8563_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *al= m) -{ - struct i2c_client *client =3D to_i2c_client(dev); - struct rtc_time *alm_tm =3D &alm->time; - u8 buf[4]; - int ret; - - ret =3D i2c_smbus_read_byte_data(client, HYM8563_CTL2); - if (ret < 0) - return ret; - - ret &=3D ~HYM8563_CTL2_AIE; - - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CTL2, ret); - if (ret < 0) - return ret; - - buf[0] =3D (alm_tm->tm_min < 60 && alm_tm->tm_min >=3D 0) ? - bin2bcd(alm_tm->tm_min) : HYM8563_ALM_BIT_DISABLE; - - buf[1] =3D (alm_tm->tm_hour < 24 && alm_tm->tm_hour >=3D 0) ? - bin2bcd(alm_tm->tm_hour) : HYM8563_ALM_BIT_DISABLE; - - buf[2] =3D (alm_tm->tm_mday <=3D 31 && alm_tm->tm_mday >=3D 1) ? - bin2bcd(alm_tm->tm_mday) : HYM8563_ALM_BIT_DISABLE; - - buf[3] =3D (alm_tm->tm_wday < 7 && alm_tm->tm_wday >=3D 0) ? - bin2bcd(alm_tm->tm_wday) : HYM8563_ALM_BIT_DISABLE; - - ret =3D i2c_smbus_write_i2c_block_data(client, HYM8563_ALM_MIN, 4, buf); - if (ret < 0) - return ret; - - return hym8563_rtc_alarm_irq_enable(dev, alm->enabled); -} - -static const struct rtc_class_ops hym8563_rtc_ops =3D { - .read_time =3D hym8563_rtc_read_time, - .set_time =3D hym8563_rtc_set_time, - .alarm_irq_enable =3D hym8563_rtc_alarm_irq_enable, - .read_alarm =3D hym8563_rtc_read_alarm, - .set_alarm =3D hym8563_rtc_set_alarm, -}; - -/* - * Handling of the clkout - */ - -#ifdef CONFIG_COMMON_CLK -#define clkout_hw_to_hym8563(_hw) container_of(_hw, struct hym8563, clkout= _hw) - -static int clkout_rates[] =3D { - 32768, - 1024, - 32, - 1, -}; - -static unsigned long hym8563_clkout_recalc_rate(struct clk_hw *hw, - unsigned long parent_rate) -{ - struct hym8563 *hym8563 =3D clkout_hw_to_hym8563(hw); - struct i2c_client *client =3D hym8563->client; - int ret =3D i2c_smbus_read_byte_data(client, HYM8563_CLKOUT); - - if (ret < 0) - return 0; - - ret &=3D HYM8563_CLKOUT_MASK; - return clkout_rates[ret]; -} - -static long hym8563_clkout_round_rate(struct clk_hw *hw, unsigned long rat= e, - unsigned long *prate) -{ - int i; - - for (i =3D 0; i < ARRAY_SIZE(clkout_rates); i++) - if (clkout_rates[i] <=3D rate) - return clkout_rates[i]; - - return 0; -} - -static int hym8563_clkout_set_rate(struct clk_hw *hw, unsigned long rate, - unsigned long parent_rate) -{ - struct hym8563 *hym8563 =3D clkout_hw_to_hym8563(hw); - struct i2c_client *client =3D hym8563->client; - int ret =3D i2c_smbus_read_byte_data(client, HYM8563_CLKOUT); - int i; - - if (ret < 0) - return ret; - - for (i =3D 0; i < ARRAY_SIZE(clkout_rates); i++) - if (clkout_rates[i] =3D=3D rate) { - ret &=3D ~HYM8563_CLKOUT_MASK; - ret |=3D i; - return i2c_smbus_write_byte_data(client, - HYM8563_CLKOUT, ret); - } - - return -EINVAL; -} - -static int hym8563_clkout_control(struct clk_hw *hw, bool enable) -{ - struct hym8563 *hym8563 =3D clkout_hw_to_hym8563(hw); - struct i2c_client *client =3D hym8563->client; - int ret =3D i2c_smbus_read_byte_data(client, HYM8563_CLKOUT); - - if (ret < 0) - return ret; - - if (enable) - ret |=3D HYM8563_CLKOUT_ENABLE; - else - ret &=3D ~HYM8563_CLKOUT_ENABLE; - - return i2c_smbus_write_byte_data(client, HYM8563_CLKOUT, ret); -} - -static int hym8563_clkout_prepare(struct clk_hw *hw) -{ - return hym8563_clkout_control(hw, 1); -} - -static void hym8563_clkout_unprepare(struct clk_hw *hw) -{ - hym8563_clkout_control(hw, 0); -} - -static int hym8563_clkout_is_prepared(struct clk_hw *hw) -{ - struct hym8563 *hym8563 =3D clkout_hw_to_hym8563(hw); - struct i2c_client *client =3D hym8563->client; - int ret =3D i2c_smbus_read_byte_data(client, HYM8563_CLKOUT); - - if (ret < 0) - return ret; - - return !!(ret & HYM8563_CLKOUT_ENABLE); -} - -static const struct clk_ops hym8563_clkout_ops =3D { - .prepare =3D hym8563_clkout_prepare, - .unprepare =3D hym8563_clkout_unprepare, - .is_prepared =3D hym8563_clkout_is_prepared, - .recalc_rate =3D hym8563_clkout_recalc_rate, - .round_rate =3D hym8563_clkout_round_rate, - .set_rate =3D hym8563_clkout_set_rate, -}; - -static struct clk *hym8563_clkout_register_clk(struct hym8563 *hym8563) -{ - struct i2c_client *client =3D hym8563->client; - struct device_node *node =3D client->dev.of_node; - struct clk *clk; - struct clk_init_data init; - int ret; - - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CLKOUT, - 0); - if (ret < 0) - return ERR_PTR(ret); - - init.name =3D "hym8563-clkout"; - init.ops =3D &hym8563_clkout_ops; - init.flags =3D 0; - init.parent_names =3D NULL; - init.num_parents =3D 0; - hym8563->clkout_hw.init =3D &init; - - /* optional override of the clockname */ - of_property_read_string(node, "clock-output-names", &init.name); - - /* register the clock */ - clk =3D clk_register(&client->dev, &hym8563->clkout_hw); - - if (!IS_ERR(clk)) - of_clk_add_provider(node, of_clk_src_simple_get, clk); - - return clk; -} -#endif - -/* - * The alarm interrupt is implemented as a level-low interrupt in the - * hym8563, while the timer interrupt uses a falling edge. - * We don't use the timer at all, so the interrupt is requested to - * use the level-low trigger. - */ -static irqreturn_t hym8563_irq(int irq, void *dev_id) -{ - struct hym8563 *hym8563 =3D (struct hym8563 *)dev_id; - struct i2c_client *client =3D hym8563->client; - int data, ret; - - rtc_lock(hym8563->rtc); - - /* Clear the alarm flag */ - - data =3D i2c_smbus_read_byte_data(client, HYM8563_CTL2); - if (data < 0) { - dev_err(&client->dev, "%s: error reading i2c data %d\n", - __func__, data); - goto out; - } - - data &=3D ~HYM8563_CTL2_AF; - - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CTL2, data); - if (ret < 0) { - dev_err(&client->dev, "%s: error writing i2c data %d\n", - __func__, ret); - } - -out: - rtc_unlock(hym8563->rtc); - return IRQ_HANDLED; -} - -static int hym8563_init_device(struct i2c_client *client) -{ - int ret; - - /* Clear stop flag if present */ - ret =3D i2c_smbus_write_byte_data(client, HYM8563_CTL1, 0); - if (ret < 0) - return ret; - - ret =3D i2c_smbus_read_byte_data(client, HYM8563_CTL2); - if (ret < 0) - return ret; - - /* Disable alarm and timer interrupts */ - ret &=3D ~HYM8563_CTL2_AIE; - ret &=3D ~HYM8563_CTL2_TIE; - - /* Clear any pending alarm and timer flags */ - if (ret & HYM8563_CTL2_AF) - ret &=3D ~HYM8563_CTL2_AF; - - if (ret & HYM8563_CTL2_TF) - ret &=3D ~HYM8563_CTL2_TF; - - ret &=3D ~HYM8563_CTL2_TI_TP; - - return i2c_smbus_write_byte_data(client, HYM8563_CTL2, ret); -} - -#ifdef CONFIG_PM_SLEEP -static int hym8563_suspend(struct device *dev) -{ - struct i2c_client *client =3D to_i2c_client(dev); - int ret; - - if (device_may_wakeup(dev)) { - ret =3D enable_irq_wake(client->irq); - if (ret) { - dev_err(dev, "enable_irq_wake failed, %d\n", ret); - return ret; - } - } - - return 0; -} - -static int hym8563_resume(struct device *dev) -{ - struct i2c_client *client =3D to_i2c_client(dev); - - if (device_may_wakeup(dev)) - disable_irq_wake(client->irq); - - return 0; -} -#endif - -static SIMPLE_DEV_PM_OPS(hym8563_pm_ops, hym8563_suspend, hym8563_resume); - -static int hym8563_probe(struct i2c_client *client) -{ - struct hym8563 *hym8563; - int ret; - - hym8563 =3D devm_kzalloc(&client->dev, sizeof(*hym8563), GFP_KERNEL); - if (!hym8563) - return -ENOMEM; - - hym8563->rtc =3D devm_rtc_allocate_device(&client->dev); - if (IS_ERR(hym8563->rtc)) - return PTR_ERR(hym8563->rtc); - - hym8563->client =3D client; - i2c_set_clientdata(client, hym8563); - - ret =3D hym8563_init_device(client); - if (ret) { - dev_err(&client->dev, "could not init device, %d\n", ret); - return ret; - } - - if (client->irq > 0) { - unsigned long irqflags =3D IRQF_TRIGGER_LOW; - - if (dev_fwnode(&client->dev)) - irqflags =3D 0; - - ret =3D devm_request_threaded_irq(&client->dev, client->irq, - NULL, hym8563_irq, - irqflags | IRQF_ONESHOT, - client->name, hym8563); - if (ret < 0) { - dev_err(&client->dev, "irq %d request failed, %d\n", - client->irq, ret); - return ret; - } - } - - if (client->irq > 0 || - device_property_read_bool(&client->dev, "wakeup-source")) { - device_init_wakeup(&client->dev, true); - } - - /* check state of calendar information */ - ret =3D i2c_smbus_read_byte_data(client, HYM8563_SEC); - if (ret < 0) - return ret; - - dev_dbg(&client->dev, "rtc information is %s\n", - (ret & HYM8563_SEC_VL) ? "invalid" : "valid"); - - hym8563->rtc->ops =3D &hym8563_rtc_ops; - set_bit(RTC_FEATURE_ALARM_RES_MINUTE, hym8563->rtc->features); - clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, hym8563->rtc->features); - -#ifdef CONFIG_COMMON_CLK - hym8563_clkout_register_clk(hym8563); -#endif - - return devm_rtc_register_device(hym8563->rtc); -} - -static const struct i2c_device_id hym8563_id[] =3D { - { "hym8563" }, - {} -}; -MODULE_DEVICE_TABLE(i2c, hym8563_id); - -static const struct of_device_id hym8563_dt_idtable[] =3D { - { .compatible =3D "haoyu,hym8563" }, - {}, -}; -MODULE_DEVICE_TABLE(of, hym8563_dt_idtable); - -static struct i2c_driver hym8563_driver =3D { - .driver =3D { - .name =3D "rtc-hym8563", - .pm =3D &hym8563_pm_ops, - .of_match_table =3D hym8563_dt_idtable, - }, - .probe =3D hym8563_probe, - .id_table =3D hym8563_id, -}; - -module_i2c_driver(hym8563_driver); - -MODULE_AUTHOR("Heiko Stuebner "); -MODULE_DESCRIPTION("HYM8563 RTC driver"); -MODULE_LICENSE("GPL"); --=20 2.45.2 From nobody Sat Nov 23 08:28:31 2024 Received: from mail-pf1-f179.google.com (mail-pf1-f179.google.com [209.85.210.179]) (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 6F65D18CBFB for ; Wed, 13 Nov 2024 08:54:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488080; cv=none; b=Ff2d8uUMV6DFu897DLu7bMCWzTPKvqi9YllfmrowZ/ZdzvbyNFkHomDr+73SOk6CbriB0Mk7gsBNn2dWlWxOmYiSIJrPDHhkL18egPBvavwgxcWS00tKoBzQx4t/IyZIP3eesdL3Dd/FI3M2k1RvQHnN42ry9yvyx3tWR7e8QWE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731488080; c=relaxed/simple; bh=EKXsanBSlktV8j6BmaKsiXKrUF4+8qHGiv//AccUDB8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Na6ogOhynwmMI7HCP4cZ3v+INLsr3npJhSBUbODstoqngZOj2ZJxjCF1fvBUiKUZnr/ADwgUqwlKHxt0sWFoni8+UD04ktT5BeiprhV1kn2mlqqLPzyNzLQCd3PXESUEETvd6oIMGrcIvK4btPPptrMD1SimYGlyR7lidslYr2w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org; spf=none smtp.mailfrom=nigauri.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b=CbhkbCUx; arc=none smtp.client-ip=209.85.210.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=nigauri.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=nigauri.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nigauri-org.20230601.gappssmtp.com header.i=@nigauri-org.20230601.gappssmtp.com header.b="CbhkbCUx" Received: by mail-pf1-f179.google.com with SMTP id d2e1a72fcca58-72097a5ca74so5544999b3a.3 for ; Wed, 13 Nov 2024 00:54:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nigauri-org.20230601.gappssmtp.com; s=20230601; t=1731488079; x=1732092879; 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=gEgoAjBfgzailS1tISV2BNkAznvBP4wgjOEuQVpA80w=; b=CbhkbCUx1w66GDKDlzYJT5jYmJnabKxH/v+5L/f9LohHwSZTSiMovs+qSCwXREBmdS gR/eccTX3QsW6/K5QlcC4dBA/DoFAnwyf1VNLvbfTS4WY09JouJA/HlI33M1fchmXlzy Nmwkf+L5sgN0X5JFy2WI502dzb3Jo9bHOoFAD43VuvZqgbRbUAg4w5bMm05AEMxJl4Lg iEDZokxN4c7fRpAVzTZ2u6CJf2OoJLCbIMABAaf34Ci6e6trJlqTyz4HZwvQc2JuS3Nd EmHYjwcBlWGwKdDSmQtTwMgMBb9QQ4wfBtHwnrF2ZhT74G7xhbfpI6KlPYKeDY9Hnff5 C8bg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731488079; x=1732092879; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gEgoAjBfgzailS1tISV2BNkAznvBP4wgjOEuQVpA80w=; b=r5RZOJmFYBVm48tCf+LWLHCk9HsVTlCF+xtR6d0wCugq2ih9Jx7oGOF4IOqJw7Ws00 MQiCKN35Jymqvsblu6gDXEvpWa1EkvFTgoxHMOzKvUFpoR1SHtA0rAV1x7Y3lBOHJW8c g0k4Vwghj9DDNeifH6+j2/714WbUliGeoSDSDtSeTeXk08HrAWD98nGfzSyIpBWnr6s5 RQYivoUbGWyBNidewKDXFL1GGaiTLGQ660DYtEdYfKWVpbuLZUDAMlgRIqZ0gOElWisY tY+13icUPjsldp9phqLVSNt8oVqZ3XmoNLlsEsxc/yA3cg9ZH5Ur4DApMFzfshBbJm2a 52Fg== X-Forwarded-Encrypted: i=1; AJvYcCWFqh88jkgwUd0pV+MrWRx3Fj1/k3hcxZ2Uyba4WaQ7mt3wcLfiF4Joqjr5/MZi48vU3mJxB35RL6w+ZRk=@vger.kernel.org X-Gm-Message-State: AOJu0YwgG8PPvqxrHGfhThYmyAnj4nzd/QafKXNgw5/k9wk7KBRTzJLQ 7t5B42twGZPU/m6BHGbSjlcLzMPtzoiibXvmVopw7C4qvWVqr/9eLzG0c65p X-Google-Smtp-Source: AGHT+IFuU4Y92FgMstRU7nXxKESV9IJYwrxKQT0+60u3aaUl5uG63Ptgsvg/YBluwzd5Pns5l3wnfQ== X-Received: by 2002:a05:6a00:114f:b0:71e:b8:1930 with SMTP id d2e1a72fcca58-72413380e98mr26240502b3a.16.1731488078719; Wed, 13 Nov 2024 00:54:38 -0800 (PST) Received: from localhost ([2405:6581:5360:1800:a83:68dd:5f1c:4ed9]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7245fe8e286sm317379b3a.16.2024.11.13.00.54.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Nov 2024 00:54:38 -0800 (PST) From: Nobuhiro Iwamatsu To: linux-rtc@vger.kernel.org, Alexandre Belloni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Olof Johansson Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , linux-kernel@vger.kernel.org, Heiko Stuebner , Nobuhiro Iwamatsu Subject: [PATCH 5/5] dt-bindings: rtc: hym8563: Remove hym8563 binding Date: Wed, 13 Nov 2024 17:53:55 +0900 Message-ID: <20241113085355.1972607-6-iwamatsu@nigauri.org> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20241113085355.1972607-1-iwamatsu@nigauri.org> References: <20241113085355.1972607-1-iwamatsu@nigauri.org> 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" The hym8563 binding has been merged to pcf8563. Remove hym8563 binding file. Signed-off-by: Nobuhiro Iwamatsu --- .../bindings/rtc/haoyu,hym8563.yaml | 56 ------------------- 1 file changed, 56 deletions(-) delete mode 100644 Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml diff --git a/Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml b/Doc= umentation/devicetree/bindings/rtc/haoyu,hym8563.yaml deleted file mode 100644 index 0b9f39ef0edc39..00000000000000 --- a/Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) -%YAML 1.2 ---- -$id: http://devicetree.org/schemas/rtc/haoyu,hym8563.yaml# -$schema: http://devicetree.org/meta-schemas/core.yaml# - -title: Haoyu Microelectronics HYM8563 RTC - -maintainers: - - Alexandre Belloni - -properties: - compatible: - const: haoyu,hym8563 - - reg: - maxItems: 1 - - interrupts: - maxItems: 1 - - "#clock-cells": - const: 0 - - clock-output-names: - description: From common clock binding to override the default output = clock name. - maxItems: 1 - - wakeup-source: - description: Enables wake up of host system on alarm. - -allOf: - - $ref: rtc.yaml - -unevaluatedProperties: false - -required: - - compatible - - reg - - "#clock-cells" - -examples: - - | - #include - - i2c { - #address-cells =3D <1>; - #size-cells =3D <0>; - - rtc@51 { - compatible =3D "haoyu,hym8563"; - reg =3D <0x51>; - interrupts =3D <13 IRQ_TYPE_EDGE_FALLING>; - #clock-cells =3D <0>; - }; - }; --=20 2.45.2