Hi Carlos,

...
>+static ssize_t hsc_read(struct file *file, char __user *buf, size_t len,
>+                                              loff_t *ppos __maybe_unused)
>+{
...
>+      ret = hsi_async_read(channel->cl, msg);
>+
>+      ret = wait_event_interruptible(channel->rx_wait,
>+                                      !list_empty(&channel->rx_msgs_queue));
...

>+}
>+
>+static ssize_t hsc_write(struct file *file, const char __user *buf, size_t 
>len,
>+                                              loff_t *ppos __maybe_unused)
>+{
>+      ret = hsi_async_write(channel->cl, msg);
>+      if (ret < 0)
>+              goto out;
>+
>+      ret = wait_event_interruptible(channel->tx_wait,
>+                                      !list_empty(&channel->tx_msgs_queue));

I would really like to see support for non-blocking read/write operation here.

...
>+
>+static const struct file_operations hsc_fops = {
>+      .owner          = THIS_MODULE,
>+      .read           = hsc_read,
>+      .write          = hsc_write,
>+      .unlocked_ioctl = hsc_ioctl,
>+      .open           = hsc_open,
>+      .release        = hsc_release,
>+};

No poll?
Currently we do bulk read/write operations upon modem-crash or firmware upload,
and would perfeer to be able do asynchronous IO (select/poll) in order to
receive other system events or timeouts during HSI bulk transfers.

Regards,
Sjur
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to