Message ID | C70A636B101FD44999B82525C3E92AFA03A512BC@otis.burlington.evertz.tv (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Saturday 03 May 2014 02:35 AM, Junfeng Feng wrote: > Hello there, > > Right now, I try to support the IGMP functionality on Davinci. I have > configured the option CONFIG_IP_MULTICAST. > But when I try to join or leave one multicast group, I did not see the > multicast traffic. For comparison, I have tried the same test program on > Netra chip with kernel 2.6.37 and there is multicast message there. > > Have anyone encountered the same issue before? Thanks. This could be some issue in the mainline driver patched for in the TI tree. If you have not done so already, can you please send a mail to netdev list preferably after testing with latest mainline. You can also cc Mugunthan V N <mugunthanvnm@ti.com> Thanks, Sekhar
Hi, --On May 06, 2014 14:22 +0530 Sekhar Nori <nsekhar@ti.com> wrote: > On Saturday 03 May 2014 02:35 AM, Junfeng Feng wrote: >> Hello there, >> >> Right now, I try to support the IGMP functionality on Davinci. I have >> configured the option CONFIG_IP_MULTICAST. >> But when I try to join or leave one multicast group, I did not see the >> multicast traffic. For comparison, I have tried the same test program on >> Netra chip with kernel 2.6.37 and there is multicast message there. >> >> Have anyone encountered the same issue before? Thanks. > > This could be some issue in the mainline driver patched for in the TI > tree. If you have not done so already, can you please send a mail to > netdev list preferably after testing with latest mainline. You can also > cc Mugunthan V N <mugunthanvnm@ti.com> I never tried it with such old kernels, but I am using multicast on the AM1808 (DA850) with kernels 3.1 and 3.4. IGMP works fine here with CONFIG_IP_MULTICAST enabled. Could you try again with a more recent kernel? Best regards, Christian
The problem is that it is hard for us to switch to another kernel version. We have other things depending on the kernel 2.6.31. Anyone on the list have tried the multicast functionality with 2.6.31? By the way, what is the netdev list address? Thanks, Junfeng -----Original Message----- From: Christian Riesch [mailto:christian.riesch@gmail.com] Sent: Tuesday, May 06, 2014 7:38 AM To: Sekhar Nori; Junfeng Feng; davinci-linux-open-source@linux.davincidsp.com Subject: Re: IGMP issue with Davinci kernel 2.6.31 Hi, --On May 06, 2014 14:22 +0530 Sekhar Nori <nsekhar@ti.com> wrote: > On Saturday 03 May 2014 02:35 AM, Junfeng Feng wrote: >> Hello there, >> >> Right now, I try to support the IGMP functionality on Davinci. I have >> configured the option CONFIG_IP_MULTICAST. >> But when I try to join or leave one multicast group, I did not see >> the multicast traffic. For comparison, I have tried the same test >> program on Netra chip with kernel 2.6.37 and there is multicast message there. >> >> Have anyone encountered the same issue before? Thanks. > > This could be some issue in the mainline driver patched for in the TI > tree. If you have not done so already, can you please send a mail to > netdev list preferably after testing with latest mainline. You can > also cc Mugunthan V N <mugunthanvnm@ti.com> I never tried it with such old kernels, but I am using multicast on the AM1808 (DA850) with kernels 3.1 and 3.4. IGMP works fine here with CONFIG_IP_MULTICAST enabled. Could you try again with a more recent kernel? Best regards, Christian
--On May 06, 2014 16:22 -0400 Junfeng Feng <jfeng@evertz.com> wrote:
> By the way, what is the netdev list address?
netdev@vger.kernel.org
diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c index 389bc68..cd97920 100644 --- a/drivers/i2c/busses/i2c-davinci.c +++ b/drivers/i2c/busses/i2c-davinci.c @@ -97,6 +97,10 @@ #define DAVINCI_I2C_IMR_NACK BIT(1) #define DAVINCI_I2C_IMR_AL BIT(0) +/* capabilities */ +#define I2C_CAPABILITIES (I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL | \ + I2C_FUNC_SMBUS_READ_BLOCK_DATA) + struct davinci_i2c_dev { struct device *dev; void __iomem *base; @@ -318,7 +322,13 @@ i2c_davinci_xfer_msg(struct i2c_adapter *adap, struct i2c_msg *msg, int stop) davinci_i2c_write_reg(dev, DAVINCI_I2C_SAR_REG, msg->addr); dev->buf = msg->buf; - dev->buf_len = msg->len; + + /* if first received byte is length, set buf_len = 0xffff as flag */ + if (msg->flags & I2C_M_RECV_LEN) + dev->buf_len = 0xffff; + else + dev->buf_len = msg->len; + dev->stop = stop;