Re: [PATCH 4/4] remoteproc: debugfs: Add ability to boot remote processor using debugfs

2015-08-26 Thread Lee Jones
On Wed, 26 Aug 2015, Nathan Lynch wrote:

> On 08/26/2015 08:08 AM, Lee Jones wrote:
> > Signed-off-by: Lee Jones 
> > ---
> >  drivers/remoteproc/remoteproc_debugfs.c | 25 +
> >  1 file changed, 25 insertions(+)
> 
> The commit message should describe why this is needed...
> 
> > diff --git a/drivers/remoteproc/remoteproc_debugfs.c 
> > b/drivers/remoteproc/remoteproc_debugfs.c
> > index 9d30809..9620962 100644
> > --- a/drivers/remoteproc/remoteproc_debugfs.c
> > +++ b/drivers/remoteproc/remoteproc_debugfs.c
> > @@ -88,8 +88,33 @@ static ssize_t rproc_state_read(struct file *filp, char 
> > __user *userbuf,
> > return simple_read_from_buffer(userbuf, count, ppos, buf, i);
> >  }
> >  
> > +static ssize_t rproc_state_write(struct file *filp, const char __user 
> > *userbuf,
> > +size_t count, loff_t *ppos)
> > +{
> > +   struct rproc *rproc = filp->private_data;
> > +   char buf[2];
> > +   int ret;
> > +
> > +   ret = copy_from_user(buf, userbuf, 1);
> > +   if (ret)
> > +   return -EFAULT;
> > +
> > +   switch (buf[0]) {
> > +   case '1':
> > +   ret = rproc_boot(rproc);
> > +   if (ret)
> > +   dev_warn(&rproc->dev, "Boot failed: %d\n", ret);
> > +   break;
> > +   default:
> > +   rproc_shutdown(rproc);
> > +   }
> > +
> > +   return count;
> > +}
> 
> ... and I suggest that the user interface be reconsidered.  If '1' means
> "boot" and literally anything else means "shut down" then you can't add
> operations in the future without potentially breaking things.

Good points, will fix.

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 4/4] remoteproc: debugfs: Add ability to boot remote processor using debugfs

2015-08-26 Thread Nathan Lynch
On 08/26/2015 08:08 AM, Lee Jones wrote:
> Signed-off-by: Lee Jones 
> ---
>  drivers/remoteproc/remoteproc_debugfs.c | 25 +
>  1 file changed, 25 insertions(+)

The commit message should describe why this is needed...


> diff --git a/drivers/remoteproc/remoteproc_debugfs.c 
> b/drivers/remoteproc/remoteproc_debugfs.c
> index 9d30809..9620962 100644
> --- a/drivers/remoteproc/remoteproc_debugfs.c
> +++ b/drivers/remoteproc/remoteproc_debugfs.c
> @@ -88,8 +88,33 @@ static ssize_t rproc_state_read(struct file *filp, char 
> __user *userbuf,
>   return simple_read_from_buffer(userbuf, count, ppos, buf, i);
>  }
>  
> +static ssize_t rproc_state_write(struct file *filp, const char __user 
> *userbuf,
> +  size_t count, loff_t *ppos)
> +{
> + struct rproc *rproc = filp->private_data;
> + char buf[2];
> + int ret;
> +
> + ret = copy_from_user(buf, userbuf, 1);
> + if (ret)
> + return -EFAULT;
> +
> + switch (buf[0]) {
> + case '1':
> + ret = rproc_boot(rproc);
> + if (ret)
> + dev_warn(&rproc->dev, "Boot failed: %d\n", ret);
> + break;
> + default:
> + rproc_shutdown(rproc);
> + }
> +
> + return count;
> +}

... and I suggest that the user interface be reconsidered.  If '1' means
"boot" and literally anything else means "shut down" then you can't add
operations in the future without potentially breaking things.

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


[PATCH 4/4] remoteproc: debugfs: Add ability to boot remote processor using debugfs

2015-08-26 Thread Lee Jones
Signed-off-by: Lee Jones 
---
 drivers/remoteproc/remoteproc_debugfs.c | 25 +
 1 file changed, 25 insertions(+)

diff --git a/drivers/remoteproc/remoteproc_debugfs.c 
b/drivers/remoteproc/remoteproc_debugfs.c
index 9d30809..9620962 100644
--- a/drivers/remoteproc/remoteproc_debugfs.c
+++ b/drivers/remoteproc/remoteproc_debugfs.c
@@ -88,8 +88,33 @@ static ssize_t rproc_state_read(struct file *filp, char 
__user *userbuf,
return simple_read_from_buffer(userbuf, count, ppos, buf, i);
 }
 
+static ssize_t rproc_state_write(struct file *filp, const char __user *userbuf,
+size_t count, loff_t *ppos)
+{
+   struct rproc *rproc = filp->private_data;
+   char buf[2];
+   int ret;
+
+   ret = copy_from_user(buf, userbuf, 1);
+   if (ret)
+   return -EFAULT;
+
+   switch (buf[0]) {
+   case '1':
+   ret = rproc_boot(rproc);
+   if (ret)
+   dev_warn(&rproc->dev, "Boot failed: %d\n", ret);
+   break;
+   default:
+   rproc_shutdown(rproc);
+   }
+
+   return count;
+}
+
 static const struct file_operations rproc_state_ops = {
.read = rproc_state_read,
+   .write = rproc_state_write,
.open = simple_open,
.llseek = generic_file_llseek,
 };
-- 
1.9.1

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