Messages in this thread | | | Date | Fri, 28 May 2010 10:31:41 +0530 | Subject | Re: | From | Jack <> |
| |
Hi, Thanks,
First solution needs additional GPIO pins, I have used all the pins. I'm going with the other solution, writing slave driver on the MIPS side. The MIPS provides an interrupt vector for the I2C bus.
Regards, Jack .
On Thu, May 27, 2010 at 11:25 AM, Haojian Zhuang <haojian.zhuang@gmail.com> wrote: > On Thu, May 27, 2010 at 1:05 PM, linux_newbie good > <mylinux.list@gmail.com> wrote: >> Hi, >> >> My board has a MIPS based Processor and a micro-controller. The >> communication between these two interfaces is through an I2C bus. The >> Linux driver for my I2C controller (i mean the one in MIPS processor) >> has support for master transmitter and master receiver whereas I could >> not find support for slave TX and slave RX modes. Do I need to write >> my own functions for slave support? If so, what kind of changes need >> to be done, for slave mode support? Is there any other sample driver >> which can help ? >> >> > > Maybe you needn't write a slave I2C driver on MIPS side. It should > based on your system requirement. > > I suggest the solution in below may be easier. > > ++++++++++++++ ++++++++++++ > + MIPS (Master) + -----> I2C -----------> + MCU (Slave) + > + +<----GPIO INT <----- + + > ++++++++++++++ ++++++++++++ > > Since MIPS is master, it can read/write data from slave directly. > While MCU want to contact with MIPS, it can trigger INT first. Then > MIPS can query MCU and feed its required. > > Perhaps you may not choice this solution. You have to write slave > driver on MIPS side and both master/slave driver on MCU side. You can > refer to $LINUX/drivers/i2c/busses/i2c-pxa.c for reference. i2c-pxa > driver supports both master and slave mode. > > Thanks > Haojian >
| |