All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Simek <monstr@monstr.eu>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Michal Simek <michal.simek@xilinx.com>
Cc: linux-kernel@vger.kernel.org, Jiri Slaby <jslaby@suse.com>,
	linux-serial@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] tty: serial: xuartps: Setup early console when uartclk is also passed
Date: Mon, 23 Apr 2018 10:37:12 +0200	[thread overview]
Message-ID: <ebc1b162-c5bf-3963-05ab-4b236f89966a@monstr.eu> (raw)
In-Reply-To: <20180423080641.GA20149@kroah.com>


[-- Attachment #1.1: Type: text/plain, Size: 2414 bytes --]

On 23.4.2018 10:06, Greg Kroah-Hartman wrote:
> On Tue, Apr 10, 2018 at 03:33:30PM +0200, Michal Simek wrote:
>> Baudrate calculation depends on requested baudrate and uart clock.
>> This patch is checking that uartclk is also passed.
>>
>> The same logic is used 8250_early.c/init_port function.
>>
>> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
>> ---
>>
>>  drivers/tty/serial/xilinx_uartps.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c
>> index b9b2bc76bcac..a654cda203c7 100644
>> --- a/drivers/tty/serial/xilinx_uartps.c
>> +++ b/drivers/tty/serial/xilinx_uartps.c
>> @@ -1181,7 +1181,7 @@ static int __init cdns_early_console_setup(struct earlycon_device *device,
>>  	/* only set baud if specified on command line - otherwise
>>  	 * assume it has been initialized by a boot loader.
>>  	 */
>> -	if (device->baud) {
>> +	if (port->uartclk && device->baud) {
>>  		u32 cd = 0, bdiv = 0;
>>  		u32 mr;
>>  		int div8;
>> -- 
>> 1.9.1
> 
> This patch conflicts with the previous patch you sent: Subject: [PATCH]
> serial: xuartps: Fix the early_console junk character issue
> 
> So, which one should I apply?
> 
> I've dropped both from my review queue now, please resend the one(s) you
> want applied, in a patch series if needed.

First of all thanks for dropping. I forget that I have sent it in past.

Both patches are targeting the same problem. The first one is more
destructive.

And this one is what 8250 is doing.

I have also sent
"[PATCH] earlycon: Initialize port->uartclk based on clock-frequency
property" which is filling uartclk based on DT to do proper divider
calculation.

It means when patch above is applied we can keep divider calculation in
the driver because it is using right values. If not we need to remove
that baudrate calculation because it is not correct (uartclk is
hardcoded to BASE_BAUD * 16 in of_setup_earlycon).
And it is really a question if "port->uartclk = BASE_BAUD * 16" should
be in of_setup_earlycon.

Thanks,
Michal

-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP SoCs



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: monstr@monstr.eu (Michal Simek)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] tty: serial: xuartps: Setup early console when uartclk is also passed
Date: Mon, 23 Apr 2018 10:37:12 +0200	[thread overview]
Message-ID: <ebc1b162-c5bf-3963-05ab-4b236f89966a@monstr.eu> (raw)
In-Reply-To: <20180423080641.GA20149@kroah.com>

On 23.4.2018 10:06, Greg Kroah-Hartman wrote:
> On Tue, Apr 10, 2018 at 03:33:30PM +0200, Michal Simek wrote:
>> Baudrate calculation depends on requested baudrate and uart clock.
>> This patch is checking that uartclk is also passed.
>>
>> The same logic is used 8250_early.c/init_port function.
>>
>> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
>> ---
>>
>>  drivers/tty/serial/xilinx_uartps.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c
>> index b9b2bc76bcac..a654cda203c7 100644
>> --- a/drivers/tty/serial/xilinx_uartps.c
>> +++ b/drivers/tty/serial/xilinx_uartps.c
>> @@ -1181,7 +1181,7 @@ static int __init cdns_early_console_setup(struct earlycon_device *device,
>>  	/* only set baud if specified on command line - otherwise
>>  	 * assume it has been initialized by a boot loader.
>>  	 */
>> -	if (device->baud) {
>> +	if (port->uartclk && device->baud) {
>>  		u32 cd = 0, bdiv = 0;
>>  		u32 mr;
>>  		int div8;
>> -- 
>> 1.9.1
> 
> This patch conflicts with the previous patch you sent: Subject: [PATCH]
> serial: xuartps: Fix the early_console junk character issue
> 
> So, which one should I apply?
> 
> I've dropped both from my review queue now, please resend the one(s) you
> want applied, in a patch series if needed.

First of all thanks for dropping. I forget that I have sent it in past.

Both patches are targeting the same problem. The first one is more
destructive.

And this one is what 8250 is doing.

I have also sent
"[PATCH] earlycon: Initialize port->uartclk based on clock-frequency
property" which is filling uartclk based on DT to do proper divider
calculation.

It means when patch above is applied we can keep divider calculation in
the driver because it is using right values. If not we need to remove
that baudrate calculation because it is not correct (uartclk is
hardcoded to BASE_BAUD * 16 in of_setup_earlycon).
And it is really a question if "port->uartclk = BASE_BAUD * 16" should
be in of_setup_earlycon.

Thanks,
Michal

-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP SoCs


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20180423/1f89883d/attachment.sig>

  reply	other threads:[~2018-04-23  8:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-10 13:33 [PATCH] tty: serial: xuartps: Setup early console when uartclk is also passed Michal Simek
2018-04-10 13:33 ` Michal Simek
2018-04-23  8:06 ` Greg Kroah-Hartman
2018-04-23  8:06   ` Greg Kroah-Hartman
2018-04-23  8:37   ` Michal Simek [this message]
2018-04-23  8:37     ` Michal Simek
2018-04-23  8:48     ` Greg Kroah-Hartman
2018-04-23  8:48       ` Greg Kroah-Hartman
2018-04-23  8:52       ` Michal Simek
2018-04-23  8:52         ` 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=ebc1b162-c5bf-3963-05ab-4b236f89966a@monstr.eu \
    --to=monstr@monstr.eu \
    --cc=gregkh@linuxfoundation.org \
    --cc=jslaby@suse.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=michal.simek@xilinx.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 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.