All of lore.kernel.org
 help / color / mirror / Atom feed
From: Radu Pirea <radu.pirea@microchip.com>
To: Mark Brown <broonie@kernel.org>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>,
	devicetree <devicetree@vger.kernel.org>,
	"open list:SERIAL DRIVERS" <linux-serial@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-arm Mailing List <linux-arm-kernel@lists.infradead.org>,
	linux-spi <linux-spi@vger.kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Rob Herring <robh+dt@kernel.org>,
	Lee Jones <lee.jones@linaro.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jslaby@suse.com>,
	Richard Genoud <richard.genoud@gmail.com>,
	<alexandre.belloni@bootlin.com>,
	Nicolas Ferre <nicolas.ferre@microchip.com>
Subject: Re: [PATCH v3 5/6] spi: at91-usart: add driver for at91-usart as spi
Date: Thu, 24 May 2018 19:04:11 +0300	[thread overview]
Message-ID: <0e6e71e2-f8ac-7889-0d81-8d8a4c15223d@microchip.com> (raw)
In-Reply-To: <20180517045437.GE20254@sirena.org.uk>



On 05/17/2018 07:54 AM, Mark Brown wrote:
> On Tue, May 15, 2018 at 12:22:24PM +0300, Radu Pirea wrote:
>> On Mon, 2018-05-14 at 20:38 +0300, Andy Shevchenko wrote:
> 
>>> So, what is not going as expected in "SPI core takes care of CSs"
>>> case?
>>> Did you use oscilloscope for that?
> 
>> Yes, I used and CSs was not asserted. Anyway, I will will try again.
> 
> If the core chip select handling is not working properly for some reason
> then the core chip select handling should be fixed rather than just open
> coding in your driver - probably it's also broken for other users.
> 

Hi Mark,

I found the fix for cs-gpios. If I change spi_add_device function like 
this(see below) everything is ok.

int spi_add_device(struct spi_device *spi)

...

     if (ctlr->cs_gpios){
         spi->cs_gpio = ctlr->cs_gpios[spi->chip_select];
         if(gpio_is_valid(spi->cs_gpio))
             gpio_direction_output(spi->cs_gpio, !(spi->mode & 
SPI_CS_HIGH));

     }

...

     return status;
}

In the subsystem gpio direction of pins is never set and 
gpio_set_value() don't set the direction.
In my opinion gpio_direction_output() set direction should be called in 
spi_add_device. What do you think? Is ok?

WARNING: multiple messages have this Message-ID (diff)
From: Radu Pirea <radu.pirea@microchip.com>
To: Mark Brown <broonie@kernel.org>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>,
	devicetree <devicetree@vger.kernel.org>,
	"open list:SERIAL DRIVERS" <linux-serial@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-arm Mailing List <linux-arm-kernel@lists.infradead.org>,
	linux-spi <linux-spi@vger.kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Rob Herring <robh+dt@kernel.org>,
	Lee Jones <lee.jones@linaro.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jslaby@suse.com>,
	Richard Genoud <richard.genoud@gmail.com>,
	alexandre.belloni@bootlin.com,
	Nicolas Ferre <nicolas.ferre@microchip.com>
Subject: Re: [PATCH v3 5/6] spi: at91-usart: add driver for at91-usart as spi
Date: Thu, 24 May 2018 19:04:11 +0300	[thread overview]
Message-ID: <0e6e71e2-f8ac-7889-0d81-8d8a4c15223d@microchip.com> (raw)
In-Reply-To: <20180517045437.GE20254@sirena.org.uk>



On 05/17/2018 07:54 AM, Mark Brown wrote:
> On Tue, May 15, 2018 at 12:22:24PM +0300, Radu Pirea wrote:
>> On Mon, 2018-05-14 at 20:38 +0300, Andy Shevchenko wrote:
> 
>>> So, what is not going as expected in "SPI core takes care of CSs"
>>> case?
>>> Did you use oscilloscope for that?
> 
>> Yes, I used and CSs was not asserted. Anyway, I will will try again.
> 
> If the core chip select handling is not working properly for some reason
> then the core chip select handling should be fixed rather than just open
> coding in your driver - probably it's also broken for other users.
> 

Hi Mark,

I found the fix for cs-gpios. If I change spi_add_device function like 
this(see below) everything is ok.

int spi_add_device(struct spi_device *spi)

...

     if (ctlr->cs_gpios){
         spi->cs_gpio = ctlr->cs_gpios[spi->chip_select];
         if(gpio_is_valid(spi->cs_gpio))
             gpio_direction_output(spi->cs_gpio, !(spi->mode & 
SPI_CS_HIGH));

     }

...

     return status;
}

In the subsystem gpio direction of pins is never set and 
gpio_set_value() don't set the direction.
In my opinion gpio_direction_output() set direction should be called in 
spi_add_device. What do you think? Is ok?

WARNING: multiple messages have this Message-ID (diff)
From: radu.pirea@microchip.com (Radu Pirea)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 5/6] spi: at91-usart: add driver for at91-usart as spi
Date: Thu, 24 May 2018 19:04:11 +0300	[thread overview]
Message-ID: <0e6e71e2-f8ac-7889-0d81-8d8a4c15223d@microchip.com> (raw)
In-Reply-To: <20180517045437.GE20254@sirena.org.uk>



On 05/17/2018 07:54 AM, Mark Brown wrote:
> On Tue, May 15, 2018 at 12:22:24PM +0300, Radu Pirea wrote:
>> On Mon, 2018-05-14 at 20:38 +0300, Andy Shevchenko wrote:
> 
>>> So, what is not going as expected in "SPI core takes care of CSs"
>>> case?
>>> Did you use oscilloscope for that?
> 
>> Yes, I used and CSs was not asserted. Anyway, I will will try again.
> 
> If the core chip select handling is not working properly for some reason
> then the core chip select handling should be fixed rather than just open
> coding in your driver - probably it's also broken for other users.
> 

Hi Mark,

I found the fix for cs-gpios. If I change spi_add_device function like 
this(see below) everything is ok.

int spi_add_device(struct spi_device *spi)

...

     if (ctlr->cs_gpios){
         spi->cs_gpio = ctlr->cs_gpios[spi->chip_select];
         if(gpio_is_valid(spi->cs_gpio))
             gpio_direction_output(spi->cs_gpio, !(spi->mode & 
SPI_CS_HIGH));

     }

...

     return status;
}

In the subsystem gpio direction of pins is never set and 
gpio_set_value() don't set the direction.
In my opinion gpio_direction_output() set direction should be called in 
spi_add_device. What do you think? Is ok?

  reply	other threads:[~2018-05-24 16:03 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-11 10:38 [PATCH v3 0/6] Driver for at91 usart in spi mode Radu Pirea
2018-05-11 10:38 ` Radu Pirea
2018-05-11 10:38 ` Radu Pirea
2018-05-11 10:38 ` [PATCH v3 1/6] MAINTAINERS: add at91 usart mfd driver Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38 ` [PATCH v3 2/6] mfd: at91-usart: added mfd driver for usart Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-18 22:19   ` Rob Herring
2018-05-18 22:19     ` Rob Herring
2018-05-19  7:08     ` Alexandre Belloni
2018-05-19  7:08       ` Alexandre Belloni
2018-05-11 10:38 ` [PATCH v3 3/6] MAINTAINERS: add at91 usart spi driver Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-13 13:14   ` Andy Shevchenko
2018-05-13 13:14     ` Andy Shevchenko
2018-05-11 10:38 ` [PATCH v3 4/6] dt-bindings: add binding for at91-usart in spi mode Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-18 21:40   ` Rob Herring
2018-05-18 21:40     ` Rob Herring
2018-05-11 10:38 ` [PATCH v3 5/6] spi: at91-usart: add driver for at91-usart as spi Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-13 13:33   ` Andy Shevchenko
2018-05-13 13:33     ` Andy Shevchenko
2018-05-13 13:35     ` Andy Shevchenko
2018-05-13 13:35       ` Andy Shevchenko
     [not found]     ` <5a3930b867cf8c279953d08c5d5dd1d93113a43b.camel@microchip.com>
2018-05-14 17:38       ` Andy Shevchenko
2018-05-14 17:38         ` Andy Shevchenko
2018-05-15  9:22         ` Radu Pirea
2018-05-15  9:22           ` Radu Pirea
2018-05-15  9:22           ` Radu Pirea
2018-05-17  4:54           ` Mark Brown
2018-05-17  4:54             ` Mark Brown
2018-05-24 16:04             ` Radu Pirea [this message]
2018-05-24 16:04               ` Radu Pirea
2018-05-24 16:04               ` Radu Pirea
2018-05-24 17:56               ` Alexandre Belloni
2018-05-24 17:56                 ` Alexandre Belloni
2018-05-24 18:16                 ` Mark Brown
2018-05-24 18:16                   ` Mark Brown
2018-05-24 18:15               ` Mark Brown
2018-05-24 18:15                 ` Mark Brown
2018-05-15  9:25     ` Radu Pirea
2018-05-15  9:25       ` Radu Pirea
2018-05-15  9:25       ` Radu Pirea
2018-05-17  5:04   ` Mark Brown
2018-05-17  5:04     ` Mark Brown
2018-05-23  8:10     ` Radu Pirea
2018-05-23  8:10       ` Radu Pirea
2018-05-23  8:10       ` Radu Pirea
2018-05-23  8:30       ` Mark Brown
2018-05-23  8:30         ` Mark Brown
2018-05-11 10:38 ` [PATCH v3 6/6] tty/serial: atmel: changed the driver to work under at91-usart mfd Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-11 10:38   ` Radu Pirea
2018-05-14 10:57   ` Richard Genoud
2018-05-14 10:57     ` Richard Genoud
2018-05-14 10:57     ` Richard Genoud
2018-05-14 16:56     ` Andy Shevchenko
2018-05-14 16:56       ` Andy Shevchenko
2018-05-15  6:28       ` Richard Genoud
2018-05-15  6:28         ` Richard Genoud
2018-05-15 12:47     ` Radu Pirea
2018-05-15 12:47       ` Radu Pirea
2018-05-15 12:47       ` Radu Pirea
2018-05-15 13:14       ` Richard Genoud
2018-05-15 13:14         ` Richard Genoud
2018-05-25 12:17         ` Radu Pirea
2018-05-25 12:17           ` Radu Pirea
2018-05-25 12:17           ` Radu Pirea
2018-05-25 13:35           ` Richard Genoud
2018-05-25 13:35             ` Richard Genoud
2018-05-25 14:07             ` Radu Pirea
2018-05-25 14:07               ` Radu Pirea
2018-05-25 14:07               ` Radu Pirea

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=0e6e71e2-f8ac-7889-0d81-8d8a4c15223d@microchip.com \
    --to=radu.pirea@microchip.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jslaby@suse.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=nicolas.ferre@microchip.com \
    --cc=richard.genoud@gmail.com \
    --cc=robh+dt@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 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.