On 07/26/2017 10:47 AM, Johannes Kliemann wrote: > Hi Sebastian, > > thanks for your answer. > > I tried to implement the relevant parts with Lx::Tasks. It seems to me > that those Tasks are designed to run some kind of endless control flow. > Beside this, I wasn't able to get an interrupt while blocking inside the > task.Yet I'm not sure if I used the tasks correctly. > > Maybe I should try to explain how the driver is intended to work. > It consists of two parts, a touch driver that is written natively for > Genode and uses I2C to communicate with its controller. And a I2C driver > for the controller that I try to port from Linux > (drivers/i2c/busses/i2c-designware-core.(c|h)). > The send method of the Linux driver is implemented as I described it in > my first mail. > This behaviour is only triggered if the send method is called and > returns after the message is sent or the controller timed out. The > return causes an unexpected return error in the task. > Beside that the interrupt never occurs while the task is inside the > Linux code. > > I'm not sure what I miss or how the Lx::Task should be used exactly in > this case. >
Can you please provide the name of the method and maybe the line of code where the i2c driver waits for the interrupt? This way I would be able to have a look. Thanks, Sebastian -- Sebastian Sumpf Genode Labs http://www.genode-labs.com · http://genode.org Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main