From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Dan Murphy <dmurphy-l0cyMroinI0@public.gmane.org>
Cc: linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [RFC] [v2 Patch 2/6] ARM: TI: Describe the ti reset DT entries
Date: Mon, 5 May 2014 15:01:55 -0700 [thread overview]
Message-ID: <20140505220155.GI25949@atomide.com> (raw)
In-Reply-To: <1399320567-3639-3-git-send-email-dmurphy-l0cyMroinI0@public.gmane.org>
* Dan Murphy <dmurphy-l0cyMroinI0@public.gmane.org> [140505 13:10]:
> +
> +Required parent properties:
> +- compatible : Should be one of,
> + "ti,omap4-prm" for OMAP4 PRM instances
> + "ti,omap5-prm" for OMAP5 PRM instances
> + "ti,dra7-prm" for DRA7xx PRM instances
> + "ti,am4-prcm" for AM43xx PRCM instances
> + "ti,am3-prcm" for AM33xx PRCM instances
> +
> +Required child reset property:
> +- compatible : Should be
> + "resets" for All TI SoCs
> +
> +example:
> + prm: prm@4ae06000 {
> + compatible = "ti,omap5-prm";
> + reg = <0x4ae06000 0x3000>;
> +
> + prm_resets: resets {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + #reset-cells = <1>;
> + };
> + };
The reg entries you have in the example below has different format
compared to this?
> +Reset node declaration
> +==============================================
> +The reset node is declared in a parent child relationship. The main parent
> +is the PRCM module which contains the base address. The first child within
> +the reset parent declares the target modules reset name. This is followed by
> +the control and status offsets.
> +
> +Within the first reset child node is a secondary child node which declares the
> +reset signal of interest. Under this node the control and status bits
> +are declared. These bits declare the bit mask for the target reset.
> +
> +
> +Required properties:
> +reg - This is the register offset from the PRCM parent.
> + This must be declared as:
> +
> + reg = <control register offset>,
> + <status register offset>;
> +
> +control-bit - This is the bit within the register which controls the reset
> + of the target module. This is declared as a bit mask for the register.
> +status-bit - This is the bit within the register which contains the status of
> + the reset of the target module.
> + This is declared as a bit mask for the register.
> +
> +example:
> +&prm_resets {
> + dsp_rstctrl {
> + reg = <0x1c00>,
> + <0x1c04>;
Shouldn't this be start and size instead of start and end here?
> + dsp_reset: dsp_reset {
> + control-bit = <0x01>;
> + status-bit = <0x01>;
> + };
> + };
> +};
Are the control-bit and status-bit always the same? If so, you can
keep that knowlede private to the the driver.
And maybe you can have the bit offset in a reg property here to
avoid adding any custom properties? Something like:
dsp_reset: reset@1 {
reg = 1;
};
If reg is not suitable for that, it seems that some generic property
to describe the bit offset is needed by quite a few drivers
anyways, for things like clocks and regulators.
> +Client Node Declaration
> +==============================================
> +This is the consumer of the parent node to declare what resets this
> +particular module is interested in.
> +
> +example:
> + src: src@55082000 {
> + resets = <&reset_src phandle>;
> + reset-names = "<reset_name>";
> + };
> +
> +Required Properties:
> +reset_src - This is the parent DT entry for the reset controller
> +phandle - This is the phandle of the specific reset to be used by the clien
> + driver.
> +reset-names - This is the reset name of module that the device driver
> + needs to be able to reset. This value must correspond to a value within
> + the reset controller array.
> +
> +example:
> +resets = <&prm_resets &dsp_mmu_reset>;
> +reset-names = "dsp_mmu_reset";
This part looks OK to me, not sure if we need the reset-names property
if we have one already why not.
Regards,
Tony
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC] [v2 Patch 2/6] ARM: TI: Describe the ti reset DT entries
Date: Mon, 5 May 2014 15:01:55 -0700 [thread overview]
Message-ID: <20140505220155.GI25949@atomide.com> (raw)
In-Reply-To: <1399320567-3639-3-git-send-email-dmurphy@ti.com>
* Dan Murphy <dmurphy@ti.com> [140505 13:10]:
> +
> +Required parent properties:
> +- compatible : Should be one of,
> + "ti,omap4-prm" for OMAP4 PRM instances
> + "ti,omap5-prm" for OMAP5 PRM instances
> + "ti,dra7-prm" for DRA7xx PRM instances
> + "ti,am4-prcm" for AM43xx PRCM instances
> + "ti,am3-prcm" for AM33xx PRCM instances
> +
> +Required child reset property:
> +- compatible : Should be
> + "resets" for All TI SoCs
> +
> +example:
> + prm: prm at 4ae06000 {
> + compatible = "ti,omap5-prm";
> + reg = <0x4ae06000 0x3000>;
> +
> + prm_resets: resets {
> + #address-cells = <1>;
> + #size-cells = <1>;
> + #reset-cells = <1>;
> + };
> + };
The reg entries you have in the example below has different format
compared to this?
> +Reset node declaration
> +==============================================
> +The reset node is declared in a parent child relationship. The main parent
> +is the PRCM module which contains the base address. The first child within
> +the reset parent declares the target modules reset name. This is followed by
> +the control and status offsets.
> +
> +Within the first reset child node is a secondary child node which declares the
> +reset signal of interest. Under this node the control and status bits
> +are declared. These bits declare the bit mask for the target reset.
> +
> +
> +Required properties:
> +reg - This is the register offset from the PRCM parent.
> + This must be declared as:
> +
> + reg = <control register offset>,
> + <status register offset>;
> +
> +control-bit - This is the bit within the register which controls the reset
> + of the target module. This is declared as a bit mask for the register.
> +status-bit - This is the bit within the register which contains the status of
> + the reset of the target module.
> + This is declared as a bit mask for the register.
> +
> +example:
> +&prm_resets {
> + dsp_rstctrl {
> + reg = <0x1c00>,
> + <0x1c04>;
Shouldn't this be start and size instead of start and end here?
> + dsp_reset: dsp_reset {
> + control-bit = <0x01>;
> + status-bit = <0x01>;
> + };
> + };
> +};
Are the control-bit and status-bit always the same? If so, you can
keep that knowlede private to the the driver.
And maybe you can have the bit offset in a reg property here to
avoid adding any custom properties? Something like:
dsp_reset: reset at 1 {
reg = 1;
};
If reg is not suitable for that, it seems that some generic property
to describe the bit offset is needed by quite a few drivers
anyways, for things like clocks and regulators.
> +Client Node Declaration
> +==============================================
> +This is the consumer of the parent node to declare what resets this
> +particular module is interested in.
> +
> +example:
> + src: src at 55082000 {
> + resets = <&reset_src phandle>;
> + reset-names = "<reset_name>";
> + };
> +
> +Required Properties:
> +reset_src - This is the parent DT entry for the reset controller
> +phandle - This is the phandle of the specific reset to be used by the clien
> + driver.
> +reset-names - This is the reset name of module that the device driver
> + needs to be able to reset. This value must correspond to a value within
> + the reset controller array.
> +
> +example:
> +resets = <&prm_resets &dsp_mmu_reset>;
> +reset-names = "dsp_mmu_reset";
This part looks OK to me, not sure if we need the reset-names property
if we have one already why not.
Regards,
Tony
next prev parent reply other threads:[~2014-05-05 22:01 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-05 20:09 [RFC v2] TI Reset Driver adapted to the reset core Dan Murphy
2014-05-05 20:09 ` Dan Murphy
2014-05-05 20:09 ` [RFC] [v2 Patch 1/6] drivers: reset: TI: SoC reset controller support Dan Murphy
2014-05-05 20:09 ` Dan Murphy
2014-05-05 21:33 ` Felipe Balbi
2014-05-05 21:33 ` Felipe Balbi
2014-05-06 13:14 ` Dan Murphy
2014-05-06 13:14 ` Dan Murphy
[not found] ` <5368E01C.9000709-l0cyMroinI0@public.gmane.org>
2014-05-06 15:32 ` Felipe Balbi
2014-05-06 15:32 ` Felipe Balbi
[not found] ` <1399320567-3639-1-git-send-email-dmurphy-l0cyMroinI0@public.gmane.org>
2014-05-05 20:09 ` [RFC] [v2 Patch 2/6] ARM: TI: Describe the ti reset DT entries Dan Murphy
2014-05-05 20:09 ` Dan Murphy
[not found] ` <1399320567-3639-3-git-send-email-dmurphy-l0cyMroinI0@public.gmane.org>
2014-05-05 22:01 ` Tony Lindgren [this message]
2014-05-05 22:01 ` Tony Lindgren
2014-05-06 13:18 ` Dan Murphy
2014-05-06 13:18 ` Dan Murphy
2014-05-12 18:46 ` Suman Anna
2014-05-12 18:46 ` Suman Anna
2014-05-05 20:09 ` [RFC] [v2 Patch 3/6] ARM: dts: am33xx: Add prcm_resets node Dan Murphy
2014-05-05 20:09 ` Dan Murphy
2014-05-05 20:09 ` [RFC] [v2 Patch 5/6] ARM: dts: dra7: Add prm_resets node Dan Murphy
2014-05-05 20:09 ` Dan Murphy
2014-05-05 20:09 ` [RFC] [v2 Patch 4/6] ARM: dts: am4372: Add prcm_resets node Dan Murphy
2014-05-05 20:09 ` Dan Murphy
2014-05-05 20:09 ` [RFC] [v2 Patch 6/6] ARM: dts: omap5: Add prm_resets node Dan Murphy
2014-05-05 20:09 ` Dan Murphy
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=20140505220155.GI25949@atomide.com \
--to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dmurphy-l0cyMroinI0@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/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: link
Be 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.