mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mikko Perttunen <cyndis@kapsi.fi>
To: Jassi Brar <jassisinghbrar@gmail.com>
Cc: Mikko Perttunen <mperttunen@nvidia.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Thierry Reding <thierry.reding@gmail.com>,
	Jon Hunter <jonathanh@nvidia.com>,
	Devicetree List <devicetree@vger.kernel.org>,
	linux-serial@vger.kernel.org, linux-tegra@vger.kernel.org, ",
	linux-arm-kernel"@lists.infradead.org, ",
	linux-arm-kernel"@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	srv_heupstream <linux-mediatek@lists.infradead.org>,
	srv_heupstream <linux-arm-kernel@lists.infradead.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 3/8] mailbox: Add transmit done by blocking option
Date: Wed, 8 Aug 2018 17:34:12 +0300	[thread overview]
Message-ID: <b5a91f9e-c3ff-371c-d355-4a5e8a147796@kapsi.fi> (raw)
In-Reply-To: <CABb+yY2mpNV186=M2anmZANgMOra4JM7ybyUT4yCxhqAG6-AZg@mail.gmail.com>



On 08/08/2018 05:10 PM, Jassi Brar wrote:
> On Wed, Aug 8, 2018 at 5:08 PM, Mikko Perttunen <cyndis@kapsi.fi> wrote:
>>
>>
>> On 04.08.2018 13:45, Mikko Perttunen wrote:
>>>
>>> On 08/03/2018 03:54 PM, Jassi Brar wrote:
>>>>
>>>> On Mon, Jul 2, 2018 at 5:10 PM, Mikko Perttunen <mperttunen@nvidia.com>
>>>> wrote:
>>>>>
>>>>> Add a new TXDONE option, TXDONE_BY_BLOCK. With this option, the
>>>>> send_data function of the mailbox driver is expected to block until
>>>>> the message has been sent. The new option is used with the Tegra
>>>>> Combined UART driver to minimize unnecessary overhead when transmitting
>>>>> data.
>>>>>
>>>> 1) TXDONE_BY_BLOCK flag :-
>>>>           Have you tried setting the flag mbox_chan->mbox_client->tx_block
>>>> ?
>>>
>>>
>>> No - I suppose I should have done that. I'm a bit concerned about overhead
>>> as send_data may be called thousands of times per second, so I tried to make
>>> it as close as possible to the downstream driver that just pokes the mailbox
>>> register directly.
>>
>>
>> I tried using polling in the mailbox framework. Some printing is done from
>> atomic context so it seems tx_block cannot be used -
>> wait_for_completion_timeout understandably does not work in atomic context.
>> I also tried without tx_block, in which case I got some horribly garbled
>> output, but "Try increasing MBOX_TX_QUEUE_LEN" was readable there.
>>
>> Any opinions?
>>
> The problems arise because your hardware (SM) supports TXDONE_BY_POLL,
> but your client drives it by TXDONE_BY_ACK because the older DB
> channels are so.
> 
> Please populate SM channels as a separate controller than DB.
> The DB controller, as is, run by ACK method.
> The SM controller should be run by polling, i.e, set txdone_poll =
> true and the poll period small enough. The virtual tty client driver
> should be able to safely set tx_block from appropriate context.
> 

Sorry, I should have clarified that I already split up the controllers. 
The SM controller has txdone_poll = true. I didn't adjust txpoll_period 
so I guess it's zero.

Mikko

  reply	other threads:[~2018-08-08 14:34 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-02 11:40 [PATCH v3 0/8] Tegra Combined UART driver Mikko Perttunen
2018-07-02 11:40 ` [PATCH v3 1/8] dt-bindings: tegra186-hsp: Add shared interrupts Mikko Perttunen
2018-07-02 12:37   ` Thierry Reding
2018-07-02 11:40 ` [PATCH v3 2/8] dt-bindings: serial: Add bindings for nvidia,tegra194-tcu Mikko Perttunen
2018-07-02 12:51   ` Thierry Reding
2018-07-02 11:40 ` [PATCH v3 3/8] mailbox: Add transmit done by blocking option Mikko Perttunen
2018-07-02 13:09   ` Thierry Reding
2018-07-10 15:49   ` Thierry Reding
2018-08-03 12:54   ` Jassi Brar
2018-08-04 10:45     ` Mikko Perttunen
2018-08-08 11:38       ` Mikko Perttunen
2018-08-08 14:10         ` Jassi Brar
2018-08-08 14:34           ` Mikko Perttunen [this message]
2018-08-08 14:39             ` Jassi Brar
2018-08-08 14:46               ` Mikko Perttunen
2018-08-09  8:49                 ` Mikko Perttunen
2018-08-09  9:26                   ` Jassi Brar
2018-07-02 11:40 ` [PATCH v3 4/8] mailbox: tegra-hsp: Refactor in preparation of mailboxes Mikko Perttunen
2018-07-02 13:12   ` Thierry Reding
2018-07-02 11:40 ` [PATCH v3 5/8] mailbox: tegra-hsp: Add support for shared mailboxes Mikko Perttunen
2018-07-02 13:13   ` Thierry Reding
2018-07-02 11:40 ` [PATCH v3 6/8] serial: Add Tegra Combined UART driver Mikko Perttunen
2018-07-02 13:18   ` Thierry Reding
2018-07-02 13:30     ` Mikko Perttunen
2018-07-02 13:47       ` Thierry Reding
2018-07-03  6:40         ` Mikko Perttunen
2018-07-02 11:40 ` [PATCH v3 7/8] arm64: tegra: Add nodes for tcu on Tegra194 Mikko Perttunen
2018-07-02 11:40 ` [PATCH v3 8/8] arm64: tegra: Mark tcu as primary serial port on Tegra194 P2888 Mikko Perttunen
2018-07-02 14:03 ` [PATCH v3 0/8] Tegra Combined UART driver Thierry Reding
2018-07-02 14:07   ` Greg KH
2018-07-02 14:17     ` Thierry Reding

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=b5a91f9e-c3ff-371c-d355-4a5e8a147796@kapsi.fi \
    --to=cyndis@kapsi.fi \
    --cc=", linux-arm-kernel"@lists.infradead.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jassisinghbrar@gmail.com \
    --cc=jonathanh@nvidia.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=mperttunen@nvidia.com \
    --cc=thierry.reding@gmail.com \
    /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

all inboxes | Powered by JetHome®