lkml.org 
[lkml]   [2011]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [RFC PATCHv5 4/7] HSI: hsi_char: Add HSI char device driver
    Date
    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


    \
     
     \ /
      Last update: 2011-06-22 21:39    [W:0.024 / U:62.864 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site