From: Shawn Guo <shawnguo@kernel.org> To: Baoyou Xie <baoyou.xie@linaro.org> Cc: jun.nie@linaro.org, p.zabel@pengutronix.de, robh+dt@kernel.org, mark.rutland@arm.com, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, xie.baoyou@zte.com.cn, chen.chaokai@zte.com.cn, wang.qiang01@zte.com.cn Subject: Re: [PATCH v1 3/3] reset: zx2967: add reset controller driver for ZTE's zx2967 family Date: Mon, 16 Jan 2017 15:58:36 +0800 [thread overview] Message-ID: <20170116075835.GB11600@x250> (raw) In-Reply-To: <1484377530-30635-3-git-send-email-baoyou.xie@linaro.org> On Sat, Jan 14, 2017 at 03:05:30PM +0800, Baoyou Xie wrote: > +static int zx2967_reset_assert(struct reset_controller_dev *rcdev, > + unsigned long id) > +{ > + struct zx2967_reset *reset = NULL; > + int bank = id / 32; > + int offset = id % 32; > + unsigned int reg; u32 is probably better for register value. > + unsigned long flags; > + > + reset = container_of(rcdev, struct zx2967_reset, rcdev); > + > + spin_lock_irqsave(&reset->lock, flags); > + > + reg = readl(reset->reg_base + (bank * 4)); > + writel(reg & ~BIT(offset), reset->reg_base + (bank * 4)); > + reg = readl(reset->reg_base + (bank * 4)); Is this read on the register is necessary? If so, we should probably have a comment for that. > + > + spin_unlock_irqrestore(&reset->lock, flags); > + > + return 0; > +} > + > +static int zx2967_reset_deassert(struct reset_controller_dev *rcdev, > + unsigned long id) Please indent the line right after parentheses. > +{ > + struct zx2967_reset *reset = NULL; > + int bank = id / 32; > + int offset = id % 32; > + unsigned int reg; > + unsigned long flags; > + > + reset = container_of(rcdev, struct zx2967_reset, rcdev); > + > + spin_lock_irqsave(&reset->lock, flags); > + > + reg = readl(reset->reg_base + (bank * 4)); > + writel(reg | BIT(offset), reset->reg_base + (bank * 4)); > + reg = readl(reset->reg_base + (bank * 4)); > + > + spin_unlock_irqrestore(&reset->lock, flags); > + > + return 0; > +} Only difference between these two functions is only one line. Should we consolidate them a bit? Shawn
WARNING: multiple messages have this Message-ID (diff)
From: shawnguo@kernel.org (Shawn Guo) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v1 3/3] reset: zx2967: add reset controller driver for ZTE's zx2967 family Date: Mon, 16 Jan 2017 15:58:36 +0800 [thread overview] Message-ID: <20170116075835.GB11600@x250> (raw) In-Reply-To: <1484377530-30635-3-git-send-email-baoyou.xie@linaro.org> On Sat, Jan 14, 2017 at 03:05:30PM +0800, Baoyou Xie wrote: > +static int zx2967_reset_assert(struct reset_controller_dev *rcdev, > + unsigned long id) > +{ > + struct zx2967_reset *reset = NULL; > + int bank = id / 32; > + int offset = id % 32; > + unsigned int reg; u32 is probably better for register value. > + unsigned long flags; > + > + reset = container_of(rcdev, struct zx2967_reset, rcdev); > + > + spin_lock_irqsave(&reset->lock, flags); > + > + reg = readl(reset->reg_base + (bank * 4)); > + writel(reg & ~BIT(offset), reset->reg_base + (bank * 4)); > + reg = readl(reset->reg_base + (bank * 4)); Is this read on the register is necessary? If so, we should probably have a comment for that. > + > + spin_unlock_irqrestore(&reset->lock, flags); > + > + return 0; > +} > + > +static int zx2967_reset_deassert(struct reset_controller_dev *rcdev, > + unsigned long id) Please indent the line right after parentheses. > +{ > + struct zx2967_reset *reset = NULL; > + int bank = id / 32; > + int offset = id % 32; > + unsigned int reg; > + unsigned long flags; > + > + reset = container_of(rcdev, struct zx2967_reset, rcdev); > + > + spin_lock_irqsave(&reset->lock, flags); > + > + reg = readl(reset->reg_base + (bank * 4)); > + writel(reg | BIT(offset), reset->reg_base + (bank * 4)); > + reg = readl(reset->reg_base + (bank * 4)); > + > + spin_unlock_irqrestore(&reset->lock, flags); > + > + return 0; > +} Only difference between these two functions is only one line. Should we consolidate them a bit? Shawn
next prev parent reply other threads:[~2017-01-16 7:58 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-01-14 7:05 [PATCH v1 1/3] dt: bindings: add documentation for zx2967 family reset controller Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-14 7:05 ` [PATCH v1 2/3] MAINTAINERS: add zx2967 reset controller driver to ARM ZTE architecture Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-14 7:05 ` [PATCH v1 3/3] reset: zx2967: add reset controller driver for ZTE's zx2967 family Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-14 7:05 ` Baoyou Xie 2017-01-16 7:44 ` Shawn Guo 2017-01-16 7:44 ` Shawn Guo 2017-01-16 7:44 ` Shawn Guo 2017-01-16 7:58 ` Shawn Guo [this message] 2017-01-16 7:58 ` Shawn Guo 2017-01-16 9:58 ` Philipp Zabel 2017-01-16 9:58 ` Philipp Zabel 2017-01-16 7:09 ` [PATCH v1 1/3] dt: bindings: add documentation for zx2967 family reset controller Shawn Guo 2017-01-16 7:09 ` Shawn Guo 2017-01-16 9:57 ` Philipp Zabel 2017-01-16 9:57 ` Philipp Zabel 2017-01-16 9:57 ` Philipp Zabel
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20170116075835.GB11600@x250 \ --to=shawnguo@kernel.org \ --cc=baoyou.xie@linaro.org \ --cc=chen.chaokai@zte.com.cn \ --cc=devicetree@vger.kernel.org \ --cc=jun.nie@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=p.zabel@pengutronix.de \ --cc=robh+dt@kernel.org \ --cc=wang.qiang01@zte.com.cn \ --cc=xie.baoyou@zte.com.cn \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.