linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Grant Likely <grant.likely@secretlab.ca>
To: dirk.brandewie@gmail.com
Cc: linux-kernel@vger.kernel.org, spi-devel-general@lists.sourceforge.net
Subject: Re: [PATCH 01/11] spi-dw: expose platform data stucture.
Date: Wed, 22 Jun 2011 21:47:06 -0600	[thread overview]
Message-ID: <BANLkTin9Ouf76VEFRam+eo=H7Gw3Tv6OLA@mail.gmail.com> (raw)
In-Reply-To: <1308794413-11069-2-git-send-email-dirk.brandewie@gmail.com>

On Wed, Jun 22, 2011 at 8:00 PM,  <dirk.brandewie@gmail.com> wrote:
> From: Dirk Brandewie <dirk.brandewie@gmail.com>
>
> Expose the platform data structure for use by client drivers. ATM
> there are not any in-tree drivers using the driver (that I can
> find). This patch exposes the platform data needed for client drivers.

?  Why would client drivers want to muck with this configuration?  I
can understand the dw_spi driver being able to have per-spi_device
configuration, but spi_drivers absolutely should not have visibility
into bus-specific details.  Am I misunderstanding something.

g.

>
> Signed-off-by: Dirk Brandewie <dirk.brandewie@gmail.com>
> ---
>  drivers/spi/spi-dw.c       |    3 ---
>  drivers/spi/spi-dw.h       |   18 +-----------------
>  include/linux/spi/spi-dw.h |   42 ++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 43 insertions(+), 20 deletions(-)
>  create mode 100644 include/linux/spi/spi-dw.h
>
> diff --git a/drivers/spi/spi-dw.c b/drivers/spi/spi-dw.c
> index ece5f69..61f7ed8 100644
> --- a/drivers/spi/spi-dw.c
> +++ b/drivers/spi/spi-dw.c
> @@ -38,9 +38,6 @@
>  #define QUEUE_RUNNING  0
>  #define QUEUE_STOPPED  1
>
> -#define MRST_SPI_DEASSERT      0
> -#define MRST_SPI_ASSERT                1
> -
>  /* Slave spi_dev related */
>  struct chip_data {
>        u16 cr0;
> diff --git a/drivers/spi/spi-dw.h b/drivers/spi/spi-dw.h
> index 7a5e78d..92bee30 100644
> --- a/drivers/spi/spi-dw.h
> +++ b/drivers/spi/spi-dw.h
> @@ -3,6 +3,7 @@
>
>  #include <linux/io.h>
>  #include <linux/scatterlist.h>
> +#include <linux/spi/spi-dw.h>
>
>  /* Bit fields in CTRLR0 */
>  #define SPI_DFS_OFFSET                 0
> @@ -49,11 +50,6 @@
>  /* TX RX interrupt level threshold, max can be 256 */
>  #define SPI_INT_THRESHOLD              32
>
> -enum dw_ssi_type {
> -       SSI_MOTO_SPI = 0,
> -       SSI_TI_SSP,
> -       SSI_NS_MICROWIRE,
> -};
>
>  struct dw_spi_reg {
>        u32     ctrl0;
> @@ -208,18 +204,6 @@ static inline void spi_umask_intr(struct dw_spi *dws, u32 mask)
>        dw_writel(dws, imr, new_mask);
>  }
>
> -/*
> - * Each SPI slave device to work with dw_api controller should
> - * has such a structure claiming its working mode (PIO/DMA etc),
> - * which can be save in the "controller_data" member of the
> - * struct spi_device
> - */
> -struct dw_spi_chip {
> -       u8 poll_mode;   /* 0 for contoller polling mode */
> -       u8 type;        /* SPI/SSP/Micrwire */
> -       u8 enable_dma;
> -       void (*cs_control)(u32 command);
> -};
>
>  extern int dw_spi_add_host(struct dw_spi *dws);
>  extern void dw_spi_remove_host(struct dw_spi *dws);
> diff --git a/include/linux/spi/spi-dw.h b/include/linux/spi/spi-dw.h
> new file mode 100644
> index 0000000..787b154
> --- /dev/null
> +++ b/include/linux/spi/spi-dw.h
> @@ -0,0 +1,42 @@
> +/*
> + *
> + * Copyright (c) 2009, Intel Corporation.
> + *
> + * This program is free software; you can redistribute it and/or modify it
> + * under the terms and conditions of the GNU General Public License,
> + * version 2, as published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope it will be useful, but WITHOUT
> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
> + * more details.
> + *
> + * You should have received a copy of the GNU General Public License along with
> + * this program; if not, write to the Free Software Foundation, Inc.,
> + * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
> + */
> +
> +#ifndef _SPI_DW_H_
> +#define _SPI_DW_H_
> +enum spi_dw_ssi_type {
> +       SSI_MOTO_SPI = 0,
> +       SSI_TI_SSP,
> +       SSI_NS_MICROWIRE,
> +};
> +
> +#define MRST_SPI_DEASSERT      0
> +#define MRST_SPI_ASSERT                1
> +
> +/*
> + * Each SPI slave device to work with dw_api controller should
> + * has such a structure claiming its working mode (PIO/DMA etc),
> + * which can be save in the "controller_data" member of the
> + * struct spi_device
> + */
> +struct spi_dw_chip {
> +       u8 poll_mode;   /* 0 for contoller polling mode */
> +       u8 type;        /* SPI/SSP/Micrwire */
> +       u8 enable_dma;
> +       void (*cs_control)(u32 command);
> +};
> +#endif
> --
> 1.7.3.4
>
>
> ------------------------------------------------------------------------------
> Simplify data backup and recovery for your virtual environment with vRanger.
> Installation's a snap, and flexible recovery options mean your data is safe,
> secure and there when you need it. Data protection magic?
> Nope - It's vRanger. Get your free trial download today.
> http://p.sf.net/sfu/quest-sfdev2dev
> _______________________________________________
> spi-devel-general mailing list
> spi-devel-general@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/spi-devel-general
>



-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.

  reply	other threads:[~2011-06-23  3:47 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-23  2:00 [PATCH 00/11] RFC spi-dw updates dirk.brandewie
2011-06-23  2:00 ` [PATCH 01/11] spi-dw: expose platform data stucture dirk.brandewie
2011-06-23  3:47   ` Grant Likely [this message]
2011-06-23  4:00     ` Dirk Brandewie
2011-06-23  4:03       ` glikely@secretlab.ca
2011-06-23  4:37         ` Dirk Brandewie
2011-06-23  5:06           ` glikely@secretlab.ca
2011-06-23  5:16             ` Dirk Brandewie
     [not found] ` <1308794413-11069-1-git-send-email-dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-06-23  2:00   ` [PATCH 02/11] spi-dw: update function naming convention to match file naming dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:00   ` [PATCH 03/11] spi-dw: change MRST prefix to generic prefix dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:00   ` [PATCH 04/11] spi-dw: remove unused definition dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:00   ` [PATCH 05/11] spi-dw: split spi_dw_enable_chip() into spi_dw_enable()/spi_dw_disable() dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:00   ` [PATCH 06/11] spi-dw: Force error on out of range chip select dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  3:51     ` Grant Likely
2011-06-23  4:13       ` Dirk Brandewie
2011-06-23  2:00   ` [PATCH 07/11] spi-dw: Set number of available chip selects correctly dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  3:53     ` Grant Likely
2011-06-23  2:00   ` [PATCH 08/11] spi-dw: Ensure fifo lenght is set dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:41     ` Feng Tang
2011-06-23  3:01       ` Dirk Brandewie
2011-06-23  3:21         ` Feng Tang
2011-06-23  3:55     ` Grant Likely
2011-06-23  4:20       ` Dirk Brandewie
2011-06-23  2:00   ` [PATCH 09/11] spi-dw: Fix condition in spi_dw_{writer/reader} dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:45     ` Feng Tang
2011-06-23  3:09       ` Dirk Brandewie
2011-06-23  3:25         ` Feng Tang
2011-06-23  3:30           ` Dirk Brandewie
2011-06-23  5:09             ` Feng Tang
2011-06-23  2:00   ` [PATCH 11/11] spi-dw: remove noop else clause dirk.brandewie-Re5JQEeQqe8AvxtiuMwx3w
2011-06-23  2:47     ` Feng Tang
2011-06-23  3:13       ` Dirk Brandewie
2011-06-23  2:00 ` [PATCH 10/11] spi-dw: Move checking of max_speed_hz value to be a prerequisite in spi_dw_setup dirk.brandewie
2011-06-23  2:39 ` [PATCH 00/11] RFC spi-dw updates Feng Tang

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='BANLkTin9Ouf76VEFRam+eo=H7Gw3Tv6OLA@mail.gmail.com' \
    --to=grant.likely@secretlab.ca \
    --cc=dirk.brandewie@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=spi-devel-general@lists.sourceforge.net \
    /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;
as well as URLs for NNTP newsgroup(s).