From: Rob Herring <robh@kernel.org>
To: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
"pawel.moll@arm.com" <pawel.moll@arm.com>,
"mark.rutland@arm.com" <mark.rutland@arm.com>,
"ijc+devicetree@hellion.org.uk" <ijc+devicetree@hellion.org.uk>,
"galak@codeaurora.org" <galak@codeaurora.org>,
"tj@kernel.org" <tj@kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Anirudha Sarangi <anirudh@xilinx.com>,
Srikanth Vemula <svemula@xilinx.com>,
Punnaiah Choudary Kalluri <punnaia@xilinx.com>
Subject: Re: [RFC PATCH] drivers: ata: Read Rx water mark value from device-tree
Date: Tue, 23 Feb 2016 13:29:42 -0600 [thread overview]
Message-ID: <20160223192942.GA6235@rob-hp-laptop> (raw)
In-Reply-To: <3802E9A6666DF54886E2B9CBF743BA9825E0117F@XAP-PVEXMBX01.xlnx.xilinx.com>
On Tue, Feb 23, 2016 at 03:29:55PM +0000, Anurag Kumar Vulisha wrote:
> Hi Arnd,
>
> > -----Original Message-----
> > From: Arnd Bergmann [mailto:arnd@arndb.de]
> > Sent: Tuesday, February 23, 2016 3:51 PM
> > To: Anurag Kumar Vulisha
> > Cc: robh+dt@kernel.org; pawel.moll@arm.com; mark.rutland@arm.com;
> > ijc+devicetree@hellion.org.uk; galak@codeaurora.org; tj@kernel.org;
> > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-
> > ide@vger.kernel.org; Anirudha Sarangi; Srikanth Vemula; Punnaiah Choudary
> > Kalluri
> > Subject: Re: [RFC PATCH] drivers: ata: Read Rx water mark value from device-
> > tree
> >
> > On Tuesday 23 February 2016 05:58:32 Anurag Kumar Vulisha wrote:
> > > >
> > > > I don't know what is appropriate because I have no idea what
> > > > Rxwatermark is good for. Can you try describing why we can't just
> > > > set it to the correct value for everyone automatically?
> > > >
> > >
> > > This RX watermark level sets the minimum number of free locations
> > > within the RX FIFO .When the rx fifo level crosses the programmed
> > > watermark level ,sata controller will transmit HOLDS to the device asking it
> > to wait. This happens when dma reads the rx fifo data slower than the device
> > is sending the data. Note that it can take some time for the HOLDs to get to
> > the other end and in the time there must be enough room in the FIFO to
> > absorb all data that could arrive from the device.
> > > Currently we are using 0x40 for this value, which works fine with all
> > > hardware designs we are currently having. But hoping that this value
> > > may vary for future silicon versions, I wanted to make this as a configurable
> > value. So for this reason I thought of moving it either to device-tree or
> > making it as a module_param() property.
> > >
> >
> > Ok, so if this depends on the silicon version, your initial approach would be
> > better than the module_param.
> >
> > I would probably make this dependent on the compatible string instead, and
> > have a table in the device driver that uses a specific value for each variant of
> > the device, but either way should be fine.
> >
> > Having a separate property is most appropriate if for each hardware revision
> > there is exactly one ideal value, while a table in the driver makes more sense
> > if this takes a bit of tuning and the driver might choose to optimize it
> > differently based on other constraints, such as its own interrupt handler
> > implementation.
> >
>
> Since we are currently having one value in common for all the hardware and also changing
> the rx water mark does not require any changes other than vendor specific PTC register update ,
> I think it would be better to use device tree property for that rx watermark value. Doing
> this makes the updating of rx watermark value easy, if any changes required.
>
> In future, if any silicon version rx water mark value doesn't work with the current versions,
> then I will do as you said by maintaining the table in device driver. But at present I feel
> that single rx watermark property in device tree would be enough, since it works with all the
> hardware versions we have.
If you currently have no reason to modify it now, then add it later when
you actually have a use case.
Rob
next prev parent reply other threads:[~2016-02-23 19:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-20 13:18 [RFC PATCH] drivers: ata: Read Rx water mark value from device-tree Anurag Kumar Vulisha
2016-02-20 22:34 ` Arnd Bergmann
2016-02-22 10:53 ` Anurag Kumar Vulisha
2016-02-22 15:19 ` Arnd Bergmann
2016-02-23 5:58 ` Anurag Kumar Vulisha
2016-02-23 10:20 ` Arnd Bergmann
2016-02-23 15:29 ` Anurag Kumar Vulisha
2016-02-23 19:29 ` Rob Herring [this message]
2016-02-26 13:48 ` Anurag Kumar Vulisha
2016-03-02 5:53 ` Anurag Kumar Vulisha
2016-03-02 8:05 ` Michal Simek
2016-03-02 9:11 ` Arnd Bergmann
2016-03-02 9:27 ` Michal Simek
2016-03-02 11:42 ` Arnd Bergmann
2016-03-02 11:51 ` Michal Simek
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=20160223192942.GA6235@rob-hp-laptop \
--to=robh@kernel.org \
--cc=anirudh@xilinx.com \
--cc=anurag.kumar.vulisha@xilinx.com \
--cc=arnd@arndb.de \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=pawel.moll@arm.com \
--cc=punnaia@xilinx.com \
--cc=svemula@xilinx.com \
--cc=tj@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox