[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160418072606.GB13078@ulmo.ba.sec>
Date: Mon, 18 Apr 2016 09:26:06 +0200
From: Thierry Reding <thierry.reding@...il.com>
To: Shardar Mohammed <smohammed@...dia.com>
Cc: Laxman Dewangan <ldewangan@...dia.com>,
"swarren@...dotorg.org" <swarren@...dotorg.org>,
"linux-i2c@...r.kernel.org" <linux-i2c@...r.kernel.org>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"wsa@...-dreams.de" <wsa@...-dreams.de>,
"gnurou@...il.com" <gnurou@...il.com>
Subject: Re: [PATCH] i2c: tegra: proper handling of error cases
On Sat, Apr 16, 2016 at 08:08:50AM +0000, Shardar Mohammed wrote:
[...]
> > > if (!(msg->flags & I2C_M_RD))
> > > tegra_i2c_fill_tx_fifo(i2c_dev);
> > >
> > > - int_mask = I2C_INT_NO_ACK | I2C_INT_ARBITRATION_LOST;
> > > if (i2c_dev->hw->has_per_pkt_xfer_complete_irq)
> > > int_mask |= I2C_INT_PACKET_XFER_COMPLETE;
> > > if (msg->flags & I2C_M_RD)
> > > int_mask |= I2C_INT_RX_FIFO_DATA_REQ;
> > > else if (i2c_dev->msg_buf_remaining)
> > > int_mask |= I2C_INT_TX_FIFO_DATA_REQ;
> > > +
> > > tegra_i2c_unmask_irq(i2c_dev, int_mask);
> >
> > Can this line be removed? The NO_ACK and ARBITRATION_LOST interrupts
> > are already unmasked earlier.
>
> [Shardar] unmask_irq() here is enabling other interrupts
> (PACKET_XFER_COMPLETE/TX_FIFO_DATA_REQ/RX_FIFO_DATA_REQ). please let
> me know if my understanding is wrong from your comment.
You're right, I obviously wasn't looking closely enough.
Thierry
Download attachment "signature.asc" of type "application/pgp-signature" (820 bytes)
Powered by blists - more mailing lists