2013-09-24 23:51:05

by James Ralston

[permalink] [raw]
Subject: [PATCH 1/1] i2c-ismt: add Initialize DMA buffer code ismt_access()

This patch adds code to Initialize the DMA buffer to compensate for possible hardware data corruption.

Signed-off-by: James Ralston <[email protected]>
---
drivers/i2c/busses/i2c-ismt.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
index 8ed79a0..d3f30ea 100644
--- a/drivers/i2c/busses/i2c-ismt.c
+++ b/drivers/i2c/busses/i2c-ismt.c
@@ -393,6 +393,9 @@ static int ismt_access(struct i2c_adapter *adap, u16 addr,

desc = &priv->hw[priv->head];

+ /* Initialize the DMA buffer */
+ memset(priv->dma_buffer, 0, (I2C_SMBUS_BLOCK_MAX+1));
+
/* Initialize the descriptor */
memset(desc, 0, sizeof(struct ismt_desc));
desc->tgtaddr_rw = ISMT_DESC_ADDR_RW(addr, read_write);
--
1.7.7.6


2013-09-26 08:40:42

by Wolfram Sang

[permalink] [raw]
Subject: Re: [PATCH 1/1] i2c-ismt: add Initialize DMA buffer code ismt_access()

On Tue, Sep 24, 2013 at 04:47:55PM -0700, James Ralston wrote:
> This patch adds code to Initialize the DMA buffer to compensate for possible hardware data corruption.

Take care of the line width here.

> Signed-off-by: James Ralston <[email protected]>
> ---
> drivers/i2c/busses/i2c-ismt.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
> index 8ed79a0..d3f30ea 100644
> --- a/drivers/i2c/busses/i2c-ismt.c
> +++ b/drivers/i2c/busses/i2c-ismt.c
> @@ -393,6 +393,9 @@ static int ismt_access(struct i2c_adapter *adap, u16 addr,
>
> desc = &priv->hw[priv->head];
>
> + /* Initialize the DMA buffer */
> + memset(priv->dma_buffer, 0, (I2C_SMBUS_BLOCK_MAX+1));

sizeof()?

> +
> /* Initialize the descriptor */
> memset(desc, 0, sizeof(struct ismt_desc));
> desc->tgtaddr_rw = ISMT_DESC_ADDR_RW(addr, read_write);
> --
> 1.7.7.6
>


Attachments:
(No filename) (948.00 B)
signature.asc (836.00 B)
Digital signature
Download all attachments

2013-09-26 14:41:26

by Neil Horman

[permalink] [raw]
Subject: Re: [PATCH 1/1] i2c-ismt: add Initialize DMA buffer code ismt_access()

On Thu, Sep 26, 2013 at 10:40:32AM +0200, Wolfram Sang wrote:
> On Tue, Sep 24, 2013 at 04:47:55PM -0700, James Ralston wrote:
> > This patch adds code to Initialize the DMA buffer to compensate for possible hardware data corruption.
>
> Take care of the line width here.
>
> > Signed-off-by: James Ralston <[email protected]>
> > ---
> > drivers/i2c/busses/i2c-ismt.c | 3 +++
> > 1 files changed, 3 insertions(+), 0 deletions(-)
> >
> > diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
> > index 8ed79a0..d3f30ea 100644
> > --- a/drivers/i2c/busses/i2c-ismt.c
> > +++ b/drivers/i2c/busses/i2c-ismt.c
> > @@ -393,6 +393,9 @@ static int ismt_access(struct i2c_adapter *adap, u16 addr,
> >
> > desc = &priv->hw[priv->head];
> >
> > + /* Initialize the DMA buffer */
> > + memset(priv->dma_buffer, 0, (I2C_SMBUS_BLOCK_MAX+1));
>
> sizeof()?
>
Agreed.
Neil

> > +
> > /* Initialize the descriptor */
> > memset(desc, 0, sizeof(struct ismt_desc));
> > desc->tgtaddr_rw = ISMT_DESC_ADDR_RW(addr, read_write);
> > --
> > 1.7.7.6
> >

2013-09-28 13:10:16

by Wolfram Sang

[permalink] [raw]
Subject: Re: [PATCH 1/1] i2c-ismt: add Initialize DMA buffer code ismt_access()

On Thu, Sep 26, 2013 at 10:41:15AM -0400, Neil Horman wrote:
> On Thu, Sep 26, 2013 at 10:40:32AM +0200, Wolfram Sang wrote:
> > On Tue, Sep 24, 2013 at 04:47:55PM -0700, James Ralston wrote:
> > > This patch adds code to Initialize the DMA buffer to compensate for possible hardware data corruption.
> >
> > Take care of the line width here.
> >
> > > Signed-off-by: James Ralston <[email protected]>
> > > ---
> > > drivers/i2c/busses/i2c-ismt.c | 3 +++
> > > 1 files changed, 3 insertions(+), 0 deletions(-)
> > >
> > > diff --git a/drivers/i2c/busses/i2c-ismt.c b/drivers/i2c/busses/i2c-ismt.c
> > > index 8ed79a0..d3f30ea 100644
> > > --- a/drivers/i2c/busses/i2c-ismt.c
> > > +++ b/drivers/i2c/busses/i2c-ismt.c
> > > @@ -393,6 +393,9 @@ static int ismt_access(struct i2c_adapter *adap, u16 addr,
> > >
> > > desc = &priv->hw[priv->head];
> > >
> > > + /* Initialize the DMA buffer */
> > > + memset(priv->dma_buffer, 0, (I2C_SMBUS_BLOCK_MAX+1));
> >
> > sizeof()?
> >
> Agreed.

Fixed that myself so it can be in my pull-request to Linus today.


Attachments:
(No filename) (1.05 kB)
signature.asc (836.00 B)
Digital signature
Download all attachments