All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Hennerich, Michael" <Michael.Hennerich@analog.com>
To: Oskar Schirmer <os@emlix.com>, Mike Frysinger <vapier.adi@gmail.com>
Cc: "Dmitry Torokhov" <dmitry.torokhov@gmail.com>,
	"Daniel Glöckner" <dg@emlix.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"linux-input@vger.kernel.org" <linux-input@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Oliver Schneidewind" <osw@emlix.com>
Subject: RE: [PATCH] ad7877: fix spi word size to 16 bit
Date: Mon, 17 May 2010 09:14:39 +0100	[thread overview]
Message-ID: <544AC56F16B56944AEC3BD4E3D5917712E568FC181@LIMKCMBX1.ad.analog.com> (raw)
In-Reply-To: <20100517072935.GA14891@emlix.com>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 2932 bytes --]

Oskar Schirmer wrote on 2010-05-17:
> On Sun, May 16, 2010 at 15:25:34 -0400, Mike Frysinger wrote:
>> On Sat, May 15, 2010 at 14:15, Oskar Schirmer wrote:
>>> On Thu, May 13, 2010 at 00:53:35 -0700, Dmitry Torokhov wrote:
>>>> On Fri, May 07, 2010 at 02:23:07PM -0400, Mike Frysinger wrote:
>>>>> On Fri, May 7, 2010 at 05:41, Daniel Glöckner wrote:
>>>>>> On 05/06/2010 08:26 PM, Mike Frysinger wrote:
>>>>>>> i think it'd be a better idea to do something like:
>>>>>>>   if (spi->bits_per_word != 16) {
>>>>>>>     if (spi->bits_per_word) {
>>>>>>>       dev_err(&spi->dev, "Invalid SPI settings;
>>>>>>> bits_per_word must be 16\n");
>>>>>>>       return -EINVAL;
>>>>>>>     }
>>>>>>>     spi->bits_per_word = 16;
>>>>>>>     spi_setup(spi);
>>>>>>>   }
>>>>>>
>>>>>> There is no way to set bits_per_word using struct spi_board_info.
>>>>>> The description of that structure in spi.h explicitly lists the
>>>>>> wordsize as one of the parameters drivers should set themself in
>>>>>> probe().
>>>>>>
>>>>>> Only struct bfin5xx_spi_chip allows to set this value in the
> board code.
>>>>>
>>>>> an obvious shortcoming in the SPI framework that should be fixed,
>>>>> but that doesnt make any difference to the above code now does it ?
>>>>>  it'll operate correctly regardless of the SPI bus master.
>>>>
>>>> So is the updated patch coming?
>>>
>>> The basic question I see is, whether it is in the responsibility
>>> of
>>> ad7877 to check a wrong setting possibly caused in board specific
>>> code. If so, then the proposal by Mike should be used, but if not
>>> so, it would introduce unneeded code.
>>>
>>> Remember: both versions end up in correctly setting bits_per_word,
>>> with the difference merely in feedback level.
>>
>> imo, unsupported board settings should always be detected & rejected.
>> all SPI master drivers do this (detect & reject unsupported SPI
>> slave settings).
>
> please note, that bits_per_word is not a board setting, it's a demand
> of the device. consequently, there is no one to set unsupported values
> and thus none to be detected.
>
> the only architecture setting bits_per_word thru spi_chip is blackfin,
> but I cannot see a good reason, why the board settings should engage
> with a fixed demand of the device?
>
>   Oskar

100% agreed.

Two ways to address the issue:
1) Forcing spi->bits_per_word = 16 like this patch does.
2) Or going with the default 8-bit transfers and using be16_to_cpu().

Personally I prefer 1) unless someone tells me that not all SPI bus drivers
support 16-bit transfers.

Greetings,
Michael

Analog Devices GmbH      Wilhelm-Wagenfeld-Str. 6      80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 4036 Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif


ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥

WARNING: multiple messages have this Message-ID (diff)
From: "Hennerich, Michael" <Michael.Hennerich@analog.com>
To: Oskar Schirmer <os@emlix.com>, Mike Frysinger <vapier.adi@gmail.com>
Cc: "Dmitry Torokhov" <dmitry.torokhov@gmail.com>,
	"Daniel Glöckner" <dg@emlix.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"linux-input@vger.kernel.org" <linux-input@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Oliver Schneidewind" <osw@emlix.com>
Subject: RE: [PATCH] ad7877: fix spi word size to 16 bit
Date: Mon, 17 May 2010 09:14:39 +0100	[thread overview]
Message-ID: <544AC56F16B56944AEC3BD4E3D5917712E568FC181@LIMKCMBX1.ad.analog.com> (raw)
In-Reply-To: <20100517072935.GA14891@emlix.com>

Oskar Schirmer wrote on 2010-05-17:
> On Sun, May 16, 2010 at 15:25:34 -0400, Mike Frysinger wrote:
>> On Sat, May 15, 2010 at 14:15, Oskar Schirmer wrote:
>>> On Thu, May 13, 2010 at 00:53:35 -0700, Dmitry Torokhov wrote:
>>>> On Fri, May 07, 2010 at 02:23:07PM -0400, Mike Frysinger wrote:
>>>>> On Fri, May 7, 2010 at 05:41, Daniel Glöckner wrote:
>>>>>> On 05/06/2010 08:26 PM, Mike Frysinger wrote:
>>>>>>> i think it'd be a better idea to do something like:
>>>>>>>   if (spi->bits_per_word != 16) {
>>>>>>>     if (spi->bits_per_word) {
>>>>>>>       dev_err(&spi->dev, "Invalid SPI settings;
>>>>>>> bits_per_word must be 16\n");
>>>>>>>       return -EINVAL;
>>>>>>>     }
>>>>>>>     spi->bits_per_word = 16;
>>>>>>>     spi_setup(spi);
>>>>>>>   }
>>>>>>
>>>>>> There is no way to set bits_per_word using struct spi_board_info.
>>>>>> The description of that structure in spi.h explicitly lists the
>>>>>> wordsize as one of the parameters drivers should set themself in
>>>>>> probe().
>>>>>>
>>>>>> Only struct bfin5xx_spi_chip allows to set this value in the
> board code.
>>>>>
>>>>> an obvious shortcoming in the SPI framework that should be fixed,
>>>>> but that doesnt make any difference to the above code now does it ?
>>>>>  it'll operate correctly regardless of the SPI bus master.
>>>>
>>>> So is the updated patch coming?
>>>
>>> The basic question I see is, whether it is in the responsibility
>>> of
>>> ad7877 to check a wrong setting possibly caused in board specific
>>> code. If so, then the proposal by Mike should be used, but if not
>>> so, it would introduce unneeded code.
>>>
>>> Remember: both versions end up in correctly setting bits_per_word,
>>> with the difference merely in feedback level.
>>
>> imo, unsupported board settings should always be detected & rejected.
>> all SPI master drivers do this (detect & reject unsupported SPI
>> slave settings).
>
> please note, that bits_per_word is not a board setting, it's a demand
> of the device. consequently, there is no one to set unsupported values
> and thus none to be detected.
>
> the only architecture setting bits_per_word thru spi_chip is blackfin,
> but I cannot see a good reason, why the board settings should engage
> with a fixed demand of the device?
>
>   Oskar

100% agreed.

Two ways to address the issue:
1) Forcing spi->bits_per_word = 16 like this patch does.
2) Or going with the default 8-bit transfers and using be16_to_cpu().

Personally I prefer 1) unless someone tells me that not all SPI bus drivers
support 16-bit transfers.

Greetings,
Michael

Analog Devices GmbH      Wilhelm-Wagenfeld-Str. 6      80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 4036 Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif



  reply	other threads:[~2010-05-17  8:14 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-06 10:37 [PATCH] ad7877: fix spi word size to 16 bit Oskar Schirmer
2010-05-06 10:37 ` Oskar Schirmer
2010-05-06 10:37 ` [PATCH] ad7877: keep dma rx buffers in seperate cache lines Oskar Schirmer
2010-05-06 18:46   ` Mike Frysinger
2010-05-06 18:46     ` Mike Frysinger
2010-05-07 10:15     ` Oskar Schirmer
2010-05-07 10:15       ` Oskar Schirmer
2010-05-07 18:28       ` Mike Frysinger
2010-05-07 18:28         ` Mike Frysinger
2010-05-08 22:32         ` Johannes Weiner
2010-05-08 22:32           ` Johannes Weiner
2010-05-09  4:45           ` Mike Frysinger
2010-05-09  4:45             ` Mike Frysinger
2010-05-09  8:50             ` Oskar Schirmer
2010-05-09  8:50               ` Oskar Schirmer
2010-05-07 12:07     ` Johannes Weiner
2010-05-10 10:34   ` [PATCH v2] " Oskar Schirmer
2010-05-10 10:34     ` Oskar Schirmer
2010-05-10 10:42     ` [PATCH v3] " Oskar Schirmer
2010-05-10 10:42       ` Oskar Schirmer
2010-05-10 16:39       ` Mike Frysinger
2010-05-10 20:54         ` Dmitry Torokhov
2010-05-10 21:22       ` Andrew Morton
2010-05-10 21:27         ` Mike Frysinger
2010-05-11  6:05         ` Dmitry Torokhov
2010-05-11  6:05           ` Dmitry Torokhov
2010-05-11  6:11           ` Mike Frysinger
2010-05-11  6:11             ` Mike Frysinger
2010-05-11  3:20             ` Andrew Morton
2010-05-11  6:21             ` Dmitry Torokhov
2010-05-11  6:23               ` Mike Frysinger
2010-05-11  6:23                 ` Mike Frysinger
2010-05-11  6:33                 ` Dmitry Torokhov
2010-05-11  6:33                   ` Dmitry Torokhov
2010-05-11  6:37                   ` Mike Frysinger
2010-05-11  6:42                   ` Pekka Enberg
2010-05-11 13:57                     ` Christoph Lameter
2010-05-11 16:52                     ` Dmitry Torokhov
2010-05-11 17:31                       ` Mike Frysinger
2010-05-11 18:59                       ` Pekka Enberg
2010-05-11 20:03                     ` Mike Frysinger
2010-05-11 20:07                       ` Matt Mackall
2010-05-11 20:10                         ` Mike Frysinger
2010-05-11 20:10                           ` Mike Frysinger
2010-05-11 20:21                           ` Christoph Lameter
2010-05-11 20:34                             ` Mike Frysinger
2010-05-11 20:38                               ` Pekka Enberg
2010-05-11 20:43                                 ` Mike Frysinger
2010-05-11 20:43                                   ` Mike Frysinger
2010-05-11 20:47                                   ` Pekka Enberg
2010-05-13  6:21                                     ` Paul Mundt
2010-05-11 20:46                               ` Christoph Lameter
2010-05-11 20:54                                 ` Mike Frysinger
2010-05-11 20:54                                   ` Mike Frysinger
2010-05-11 21:01                                   ` Pekka Enberg
2010-05-11 21:11                                     ` Mike Frysinger
2010-05-11 21:11                                       ` Mike Frysinger
2010-05-12  1:58                                     ` FUJITA Tomonori
     [not found]                                   ` <20100511214836.GH1726@emlix.com>
2010-05-11 21:53                                     ` Dmitry Torokhov
2010-05-11 22:39                                       ` Mike Frysinger
2010-05-11 22:39                                         ` Mike Frysinger
2010-05-12  2:07                                         ` [LKML] " Marc Gauthier
2010-05-12  3:03                                           ` Nick Piggin
2010-05-12  3:23                                             ` FUJITA Tomonori
2010-05-12  4:35                                               ` Mike Frysinger
2010-05-12  4:35                                                 ` Mike Frysinger
2010-05-12  5:28                                                 ` FUJITA Tomonori
2010-05-12  5:28                                                   ` FUJITA Tomonori
2010-05-12 14:37                                                   ` Mike Frysinger
2010-05-12 14:37                                                     ` Mike Frysinger
2010-05-12 18:11                                                     ` Dmitry Torokhov
2010-05-12 18:28                                                       ` Mike Frysinger
2010-05-12 18:28                                                         ` Mike Frysinger
2010-05-12 10:36                                                 ` Johannes Weiner
2010-05-12 12:35                                                 ` Marc Gauthier
2010-05-12 14:36                                                   ` Mike Frysinger
2010-05-12 14:36                                                     ` Mike Frysinger
2010-05-19 12:48                                             ` David Woodhouse
2010-05-19 13:07                                               ` Nick Piggin
2010-05-19 13:17                                                 ` David Woodhouse
2010-05-19 13:36                                                   ` Nick Piggin
2010-05-19 13:44                                                     ` Johannes Weiner
2010-05-19 13:52                                                       ` Nick Piggin
2010-05-19 14:38                                                         ` FUJITA Tomonori
2010-05-19 14:58                                                           ` David Woodhouse
2010-05-20  4:42                                                             ` FUJITA Tomonori
2010-05-19 16:37                                                           ` Dmitry Torokhov
2010-05-19 15:00                                                         ` Johannes Weiner
2010-05-17  6:12                                         ` Michal Simek
2010-05-19 13:00                                   ` David Woodhouse
2010-05-11 22:37                               ` Alan Cox
2010-05-11 20:22                           ` Pekka Enberg
2010-05-11 14:12           ` Oskar Schirmer
2010-05-11 14:12             ` Oskar Schirmer
2010-05-06 11:18 ` [PATCH] ad7877: fix spi word size to 16 bit Hennerich, Michael
2010-05-06 11:18   ` Hennerich, Michael
2010-05-06 18:26 ` Mike Frysinger
2010-05-06 18:26   ` Mike Frysinger
2010-05-07  9:41   ` Daniel Glöckner
2010-05-07  9:41     ` Daniel Glöckner
2010-05-07 18:23     ` Mike Frysinger
2010-05-07 18:23       ` Mike Frysinger
2010-05-13  7:53       ` Dmitry Torokhov
2010-05-13  7:53         ` Dmitry Torokhov
2010-05-15 18:15         ` Oskar Schirmer
2010-05-15 18:15           ` Oskar Schirmer
2010-05-16 19:25           ` Mike Frysinger
2010-05-16 19:25             ` Mike Frysinger
2010-05-17  7:29             ` Oskar Schirmer
2010-05-17  7:29               ` Oskar Schirmer
2010-05-17  8:14               ` Hennerich, Michael [this message]
2010-05-17  8:14                 ` Hennerich, Michael
2010-05-17  8:41                 ` Oskar Schirmer
2010-05-17  8:41                   ` Oskar Schirmer
2010-05-17 23:49               ` Mike Frysinger
2010-05-17 23:49                 ` Mike Frysinger
2010-05-18  0:18                 ` H Hartley Sweeten
2010-05-18  0:18                   ` H Hartley Sweeten
2010-05-18  8:32                   ` Oskar Schirmer
2010-05-18  8:32                     ` Oskar Schirmer
2010-05-18  9:37                 ` Daniel Glöckner
2010-05-18  9:37                   ` Daniel Glöckner
2010-05-18  8:34 ` [PATCH v2] " Oskar Schirmer
2010-05-18  8:34   ` Oskar Schirmer

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=544AC56F16B56944AEC3BD4E3D5917712E568FC181@LIMKCMBX1.ad.analog.com \
    --to=michael.hennerich@analog.com \
    --cc=akpm@linux-foundation.org \
    --cc=dg@emlix.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=os@emlix.com \
    --cc=osw@emlix.com \
    --cc=vapier.adi@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 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.