Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp338930pxj; Tue, 18 May 2021 04:42:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwa+e8x5nz45ISXqbYXRdJBYK/l/oiEW8eKz2CKhTfkdPxrlplfdJtLHtXmCa6s4/zbUY8G X-Received: by 2002:a5d:848a:: with SMTP id t10mr3926887iom.68.1621338140724; Tue, 18 May 2021 04:42:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621338140; cv=none; d=google.com; s=arc-20160816; b=sbb5LILrzYi3g2kssiPIA/bds3hfoxSqPffZk7w8UPBY2/mgo15xrk5KvuTFyA2t8S ejggm1A08xBSMh9JMyo0EGCEiKbxmqLViJY+ZDH6iXtcphtPjhjA/m0hxrVvHlcj8uC3 LD/dZALqoM+cit4gMUCeKmfYd74tVnOqQ4u12GB4ihpVgBaKH8Rw22KbYMK8vaFxFPKi uz1PppUPrvIVJKZnNpkkqUFpC0WaAcJ05nIxXn3B1dzvdU+1N67QOq7Vqpwg4sV5DGZa Qbs/4xMIeXJb+logLmly4ZVdjpUl6aWDngY1W1pE6LT+iegv8y0mOICbge6deJWMz2Dw yVfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=TMI+827Cx+Pp5KmxJS4j3OVGmsb+04gdM6p1Zui+OmA=; b=iupuE81S61H7kzXNSG++ulA6cS76VqZ5x2DZONxku0bv7rLBwUhajYF3HOnU26MQII FobOVSY5XlYeJhSVVmUQGLuOSqHc920RODTWoUfQPWrro0WpuhTYtGp1b0Q8ReqPWaQU nxV99hJMXcf29elWotxd0yYpv1+vL2ROpjPjoL/ZL6Ojlp1LrYt9PFoPoXzVKPp1UYtp 95yH5XzbOZ6HOJSiQU57fImihdrafol3DW4ut6KAKqWtqCSfplsx/J6Y7KmATHbBujj8 K4djhqiZASMECJvYZKt8ybekFD7i6CaB9UzSAkdBHpT+KNzeDXPOABDj1vM1sA4mYQkF zesw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=RPEQneQr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g6si21401423ild.152.2021.05.18.04.42.08; Tue, 18 May 2021 04:42:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=RPEQneQr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239412AbhEQPYG (ORCPT + 99 others); Mon, 17 May 2021 11:24:06 -0400 Received: from mail.kernel.org ([198.145.29.99]:37312 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243003AbhEQPKg (ORCPT ); Mon, 17 May 2021 11:10:36 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 72EE4616E8; Mon, 17 May 2021 14:30:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1621261848; bh=2nV3dfJS/QKMT7eJJxY8T0+9re7C3aT6J+zuRuC0+K8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RPEQneQr/0o1de50LQVPKlQR/O7hXMqmIlHW24siIL8D3jmWaiRTgetHlkXavG6kh jzaWpn+P3ZRTX8iwgkJZ7z4DCln8TbNHQAOu3el8cQX2xT/TEfvwklAmnKHnPNVgcT NSjHVKrZmbszPGLUFucyMMOTT8TjBlgFJDZiThw0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Nobuhiro Iwamatsu , Alexandre Belloni , Sasha Levin Subject: [PATCH 5.11 177/329] rtc: ds1307: Fix wday settings for rx8130 Date: Mon, 17 May 2021 16:01:28 +0200 Message-Id: <20210517140308.109571811@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210517140302.043055203@linuxfoundation.org> References: <20210517140302.043055203@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nobuhiro Iwamatsu [ Upstream commit 204756f016726a380bafe619438ed979088bd04a ] rx8130 wday specifies the bit position, not BCD. Fixes: ee0981be7704 ("rtc: ds1307: Add support for Epson RX8130CE") Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Alexandre Belloni Link: https://lore.kernel.org/r/20210420023917.1949066-1-nobuhiro1.iwamatsu@toshiba.co.jp Signed-off-by: Sasha Levin --- drivers/rtc/rtc-ds1307.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c index 183cf7c01364..c6c16961385b 100644 --- a/drivers/rtc/rtc-ds1307.c +++ b/drivers/rtc/rtc-ds1307.c @@ -296,7 +296,11 @@ static int ds1307_get_time(struct device *dev, struct rtc_time *t) t->tm_min = bcd2bin(regs[DS1307_REG_MIN] & 0x7f); tmp = regs[DS1307_REG_HOUR] & 0x3f; t->tm_hour = bcd2bin(tmp); - t->tm_wday = bcd2bin(regs[DS1307_REG_WDAY] & 0x07) - 1; + /* rx8130 is bit position, not BCD */ + if (ds1307->type == rx_8130) + t->tm_wday = fls(regs[DS1307_REG_WDAY] & 0x7f); + else + t->tm_wday = bcd2bin(regs[DS1307_REG_WDAY] & 0x07) - 1; t->tm_mday = bcd2bin(regs[DS1307_REG_MDAY] & 0x3f); tmp = regs[DS1307_REG_MONTH] & 0x1f; t->tm_mon = bcd2bin(tmp) - 1; @@ -343,7 +347,11 @@ static int ds1307_set_time(struct device *dev, struct rtc_time *t) regs[DS1307_REG_SECS] = bin2bcd(t->tm_sec); regs[DS1307_REG_MIN] = bin2bcd(t->tm_min); regs[DS1307_REG_HOUR] = bin2bcd(t->tm_hour); - regs[DS1307_REG_WDAY] = bin2bcd(t->tm_wday + 1); + /* rx8130 is bit position, not BCD */ + if (ds1307->type == rx_8130) + regs[DS1307_REG_WDAY] = 1 << t->tm_wday; + else + regs[DS1307_REG_WDAY] = bin2bcd(t->tm_wday + 1); regs[DS1307_REG_MDAY] = bin2bcd(t->tm_mday); regs[DS1307_REG_MONTH] = bin2bcd(t->tm_mon + 1); -- 2.30.2