search for: i2c_lock

Displaying 19 results from an estimated 19 matches for "i2c_lock".

2020 Sep 03
9
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...ult from the backend + */ +struct virtio_i2c_msg { + struct virtio_i2c_hdr hdr; + char *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_i2c_msg_done(struct virtqueue...
2020 Sep 03
9
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...ult from the backend + */ +struct virtio_i2c_msg { + struct virtio_i2c_hdr hdr; + char *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_i2c_msg_done(struct virtqueue...
2020 Sep 11
6
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; + u8 *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @vmsg: the virtio I2C message for communication + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct virtio_i2c_msg vmsg; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_...
2020 Sep 11
6
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; + u8 *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @vmsg: the virtio I2C message for communication + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct virtio_i2c_msg vmsg; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_...
2020 Sep 04
2
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...t it out of virtio_i2c_hdr. > >> +}; >> + >> +/** >> + * struct virtio_i2c - virtio I2C data >> + * @vdev: virtio device for this controller >> + * @completion: completion of virtio I2C message >> + * @adap: I2C adapter for this controller >> + * @i2c_lock: lock for virtqueue processing >> + * @vq: the virtio virtqueue for communication >> + */ >> +struct virtio_i2c { >> +??? struct virtio_device *vdev; >> +??? struct completion completion; >> +??? struct i2c_adapter adap; >> +??? struct mutex i2c_lock; >&...
2020 Sep 04
2
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...t it out of virtio_i2c_hdr. > >> +}; >> + >> +/** >> + * struct virtio_i2c - virtio I2C data >> + * @vdev: virtio device for this controller >> + * @completion: completion of virtio I2C message >> + * @adap: I2C adapter for this controller >> + * @i2c_lock: lock for virtqueue processing >> + * @vq: the virtio virtqueue for communication >> + */ >> +struct virtio_i2c { >> +??? struct virtio_device *vdev; >> +??? struct completion completion; >> +??? struct i2c_adapter adap; >> +??? struct mutex i2c_lock; >&...
2020 Sep 22
3
[PATCH v3] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; + u8 *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @vmsg: the virtio I2C message for communication + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct virtio_i2c_msg vmsg; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_...
2020 Sep 22
3
[PATCH v3] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; + u8 *buf; + u8 status; +}; + +/** + * struct virtio_i2c - virtio I2C data + * @vdev: virtio device for this controller + * @completion: completion of virtio I2C message + * @vmsg: the virtio I2C message for communication + * @adap: I2C adapter for this controller + * @i2c_lock: lock for virtqueue processing + * @vq: the virtio virtqueue for communication + */ +struct virtio_i2c { + struct virtio_device *vdev; + struct completion completion; + struct virtio_i2c_msg vmsg; + struct i2c_adapter adap; + struct mutex i2c_lock; + struct virtqueue *vq; +}; + +static void virtio_...
2020 Sep 03
0
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; > + char *buf; > + u8 status; > +}; > + > +/** > + * struct virtio_i2c - virtio I2C data > + * @vdev: virtio device for this controller > + * @completion: completion of virtio I2C message > + * @adap: I2C adapter for this controller > + * @i2c_lock: lock for virtqueue processing > + * @vq: the virtio virtqueue for communication > + */ > +struct virtio_i2c { > + struct virtio_device *vdev; > + struct completion completion; > + struct i2c_adapter adap; > + struct mutex i2c_lock; > + struct virtqueue *vq; > +}; > +...
2020 Sep 03
0
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...+ struct virtio_i2c_hdr hdr; > + char *buf; > + u8 status; > +}; > + > +/** > + * struct virtio_i2c - virtio I2C data > + * @vdev: virtio device for this controller > + * @completion: completion of virtio I2C message > + * @adap: I2C adapter for this controller > + * @i2c_lock: lock for virtqueue processing > + * @vq: the virtio virtqueue for communication > + */ > +struct virtio_i2c { > + struct virtio_device *vdev; > + struct completion completion; > + struct i2c_adapter adap; > + struct mutex i2c_lock; > + struct virtqueue *vq; > +}; > +...
2020 Sep 14
0
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...patch. Thanks > + > +/** > + * struct virtio_i2c - virtio I2C data > + * @vdev: virtio device for this controller > + * @completion: completion of virtio I2C message > + * @vmsg: the virtio I2C message for communication > + * @adap: I2C adapter for this controller > + * @i2c_lock: lock for virtqueue processing > + * @vq: the virtio virtqueue for communication > + */ > +struct virtio_i2c { > + struct virtio_device *vdev; > + struct completion completion; > + struct virtio_i2c_msg vmsg; > + struct i2c_adapter adap; > + struct mutex i2c_lock; > + str...
2020 Sep 04
0
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...atus; Any reason for separating status out of virtio_i2c_hdr? > +}; > + > +/** > + * struct virtio_i2c - virtio I2C data > + * @vdev: virtio device for this controller > + * @completion: completion of virtio I2C message > + * @adap: I2C adapter for this controller > + * @i2c_lock: lock for virtqueue processing > + * @vq: the virtio virtqueue for communication > + */ > +struct virtio_i2c { > + struct virtio_device *vdev; > + struct completion completion; > + struct i2c_adapter adap; > + struct mutex i2c_lock; > + struct virtqueue *vq; > +}; > +...
2020 Sep 22
0
[PATCH v3] i2c: virtio: add a virtio i2c frontend driver
...status; > +}; > + > +/** > + * struct virtio_i2c - virtio I2C data > + * @vdev: virtio device for this controller > + * @completion: completion of virtio I2C message > + * @vmsg: the virtio I2C message for communication > + * @adap: I2C adapter for this controller > + * @i2c_lock: lock for virtqueue processing > + * @vq: the virtio virtqueue for communication > + */ > +struct virtio_i2c { > + struct virtio_device *vdev; > + struct completion completion; > + struct virtio_i2c_msg vmsg; > + struct i2c_adapter adap; > + struct mutex i2c_lock; > + str...
2020 Sep 14
2
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...-09-11 113 struct virtio_i2c_msg *vmsg; > 0a54ec77196674 Jie Deng 2020-09-11 114 unsigned long time_left; > 0a54ec77196674 Jie Deng 2020-09-11 115 int len, i, ret = 0; > 0a54ec77196674 Jie Deng 2020-09-11 116 > 0a54ec77196674 Jie Deng 2020-09-11 117 mutex_lock(&vi->i2c_lock); > 0a54ec77196674 Jie Deng 2020-09-11 118 vmsg = &vi->vmsg; > 0a54ec77196674 Jie Deng 2020-09-11 119 vmsg->buf = NULL; > 0a54ec77196674 Jie Deng 2020-09-11 120 > 0a54ec77196674 Jie Deng 2020-09-11 121 for (i = 0; i < num; i++) { > 0a54ec77196674 Jie Deng 202...
2020 Sep 14
2
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...-09-11 113 struct virtio_i2c_msg *vmsg; > 0a54ec77196674 Jie Deng 2020-09-11 114 unsigned long time_left; > 0a54ec77196674 Jie Deng 2020-09-11 115 int len, i, ret = 0; > 0a54ec77196674 Jie Deng 2020-09-11 116 > 0a54ec77196674 Jie Deng 2020-09-11 117 mutex_lock(&vi->i2c_lock); > 0a54ec77196674 Jie Deng 2020-09-11 118 vmsg = &vi->vmsg; > 0a54ec77196674 Jie Deng 2020-09-11 119 vmsg->buf = NULL; > 0a54ec77196674 Jie Deng 2020-09-11 120 > 0a54ec77196674 Jie Deng 2020-09-11 121 for (i = 0; i < num; i++) { > 0a54ec77196674 Jie Deng 202...
2020 Sep 07
0
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...; >>> +}; >>> + >>> +/** >>> + * struct virtio_i2c - virtio I2C data >>> + * @vdev: virtio device for this controller >>> + * @completion: completion of virtio I2C message >>> + * @adap: I2C adapter for this controller >>> + * @i2c_lock: lock for virtqueue processing >>> + * @vq: the virtio virtqueue for communication >>> + */ >>> +struct virtio_i2c { >>> +??? struct virtio_device *vdev; >>> +??? struct completion completion; >>> +??? struct i2c_adapter adap; >>> +???...
2020 Sep 03
0
[PATCH] i2c: virtio: add a virtio i2c frontend driver
...ta(adap); > + struct virtio_i2c_msg *vmsg_o, *vmsg_i; > + struct virtqueue *vq = vi->vq; > + unsigned long time_left; > + int len, i, ret = 0; > + > + vmsg_o = kzalloc(sizeof(*vmsg_o), GFP_KERNEL); > + if (!vmsg_o) > + return -ENOMEM; > + > + mutex_lock(&vi->i2c_lock); > + vmsg_o->buf = NULL; > + for (i = 0; i < num; i++) { > + ret = virtio_i2c_add_msg(vq, vmsg_o, &msgs[i]); > + if (ret) { > + dev_err(&adap->dev, "failed to add msg[%d] to virtqueue.\n", i); > + goto err_unlock_free; break; > + } > + &...
2020 Sep 14
0
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...196674 Jie Deng 2020-09-11 113 struct virtio_i2c_msg *vmsg; 0a54ec77196674 Jie Deng 2020-09-11 114 unsigned long time_left; 0a54ec77196674 Jie Deng 2020-09-11 115 int len, i, ret = 0; 0a54ec77196674 Jie Deng 2020-09-11 116 0a54ec77196674 Jie Deng 2020-09-11 117 mutex_lock(&vi->i2c_lock); 0a54ec77196674 Jie Deng 2020-09-11 118 vmsg = &vi->vmsg; 0a54ec77196674 Jie Deng 2020-09-11 119 vmsg->buf = NULL; 0a54ec77196674 Jie Deng 2020-09-11 120 0a54ec77196674 Jie Deng 2020-09-11 121 for (i = 0; i < num; i++) { 0a54ec77196674 Jie Deng 2020-09-11 122 ret = vir...
2020 Sep 14
0
[PATCH v2] i2c: virtio: add a virtio i2c frontend driver
...virtio_i2c_msg *vmsg; > > 0a54ec77196674 Jie Deng 2020-09-11 114 unsigned long time_left; > > 0a54ec77196674 Jie Deng 2020-09-11 115 int len, i, ret = 0; > > 0a54ec77196674 Jie Deng 2020-09-11 116 > > 0a54ec77196674 Jie Deng 2020-09-11 117 mutex_lock(&vi->i2c_lock); > > 0a54ec77196674 Jie Deng 2020-09-11 118 vmsg = &vi->vmsg; > > 0a54ec77196674 Jie Deng 2020-09-11 119 vmsg->buf = NULL; > > 0a54ec77196674 Jie Deng 2020-09-11 120 > > 0a54ec77196674 Jie Deng 2020-09-11 121 for (i = 0; i < num; i++) { > > 0a...