* [PATCH 1/2] Move /dev/zero to separate unit
@ 2012-06-09 7:34 Alexander Shiyan
2012-06-09 7:34 ` [PATCH 2/2] Added "/dev/full" and "/dev/null" devices Alexander Shiyan
2012-06-09 11:27 ` [PATCH 1/2] Move /dev/zero to separate unit Sascha Hauer
0 siblings, 2 replies; 3+ messages in thread
From: Alexander Shiyan @ 2012-06-09 7:34 UTC (permalink / raw)
To: barebox
This patch allows to present "/dev/zero" always in system and not
depending of mem-command. Standard files allow to test other memory
devices, not only "mem", such as NOR, NAND, MCI-devices e.t.c.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
---
commands/Makefile | 1 +
commands/mem.c | 29 -----------------------------
commands/stddev.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 52 insertions(+), 29 deletions(-)
create mode 100644 commands/stddev.c
diff --git a/commands/Makefile b/commands/Makefile
index 4c8a0a9..d39c466 100644
--- a/commands/Makefile
+++ b/commands/Makefile
@@ -1,3 +1,4 @@
+obj-y += stddev.o
obj-$(CONFIG_CMD_BOOTM) += bootm.o
obj-$(CONFIG_CMD_UIMAGE) += uimage.o
obj-$(CONFIG_CMD_LINUX16) += linux16.o
diff --git a/commands/mem.c b/commands/mem.c
index 080bfde..9a67cf3 100644
--- a/commands/mem.c
+++ b/commands/mem.c
@@ -623,32 +623,3 @@ static int mem_init(void)
}
device_initcall(mem_init);
-
-static ssize_t zero_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags)
-{
- memset(buf, 0, count);
- return count;
-}
-
-static struct file_operations zeroops = {
- .read = zero_read,
- .lseek = dev_lseek_default,
-};
-
-static int zero_init(void)
-{
- struct cdev *cdev;
-
- cdev = xzalloc(sizeof (*cdev));
-
- cdev->name = "zero";
- cdev->size = ~0;
- cdev->ops = &zeroops;
-
- devfs_create(cdev);
-
- return 0;
-}
-
-device_initcall(zero_init);
-
diff --git a/commands/stddev.c b/commands/stddev.c
new file mode 100644
index 0000000..18fea94
--- /dev/null
+++ b/commands/stddev.c
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2011 Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * MA 02111-1307 USA
+ */
+
+#include <common.h>
+#include <init.h>
+
+static ssize_t zero_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags)
+{
+ memset(buf, 0, count);
+ return count;
+}
+
+static struct file_operations zeroops = {
+ .read = zero_read,
+ .lseek = dev_lseek_default,
+};
+
+static int zero_init(void)
+{
+ struct cdev *cdev;
+
+ cdev = xzalloc(sizeof (*cdev));
+
+ cdev->name = "zero";
+ cdev->size = ~0;
+ cdev->ops = &zeroops;
+
+ devfs_create(cdev);
+
+ return 0;
+}
+
+device_initcall(zero_init);
--
1.7.3.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 2/2] Added "/dev/full" and "/dev/null" devices
2012-06-09 7:34 [PATCH 1/2] Move /dev/zero to separate unit Alexander Shiyan
@ 2012-06-09 7:34 ` Alexander Shiyan
2012-06-09 11:27 ` [PATCH 1/2] Move /dev/zero to separate unit Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Alexander Shiyan @ 2012-06-09 7:34 UTC (permalink / raw)
To: barebox
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
---
commands/stddev.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 55 insertions(+), 0 deletions(-)
diff --git a/commands/stddev.c b/commands/stddev.c
index 18fea94..8995fad 100644
--- a/commands/stddev.c
+++ b/commands/stddev.c
@@ -49,3 +49,58 @@ static int zero_init(void)
}
device_initcall(zero_init);
+
+static ssize_t full_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags)
+{
+ memset(buf, 0xff, count);
+ return count;
+}
+
+static struct file_operations fullops = {
+ .read = full_read,
+ .lseek = dev_lseek_default,
+};
+
+static int full_init(void)
+{
+ struct cdev *cdev;
+
+ cdev = xzalloc(sizeof (*cdev));
+
+ cdev->name = "full";
+ cdev->size = ~0;
+ cdev->ops = &fullops;
+
+ devfs_create(cdev);
+
+ return 0;
+}
+
+device_initcall(full_init);
+
+static ssize_t null_write(struct cdev *cdev, const void *buf, size_t count, ulong offset, ulong flags)
+{
+ return count;
+}
+
+static struct file_operations nullops = {
+ .write = null_write,
+ .lseek = dev_lseek_default,
+};
+
+static int null_init(void)
+{
+ struct cdev *cdev;
+
+ cdev = xzalloc(sizeof (*cdev));
+
+ cdev->name = "null";
+ cdev->size = 0;
+ cdev->ops = &nullops;
+
+ devfs_create(cdev);
+
+ return 0;
+}
+
+device_initcall(null_init);
--
1.7.3.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] Move /dev/zero to separate unit
2012-06-09 7:34 [PATCH 1/2] Move /dev/zero to separate unit Alexander Shiyan
2012-06-09 7:34 ` [PATCH 2/2] Added "/dev/full" and "/dev/null" devices Alexander Shiyan
@ 2012-06-09 11:27 ` Sascha Hauer
1 sibling, 0 replies; 3+ messages in thread
From: Sascha Hauer @ 2012-06-09 11:27 UTC (permalink / raw)
To: Alexander Shiyan; +Cc: barebox
On Sat, Jun 09, 2012 at 11:34:25AM +0400, Alexander Shiyan wrote:
> This patch allows to present "/dev/zero" always in system and not
> depending of mem-command. Standard files allow to test other memory
> devices, not only "mem", such as NOR, NAND, MCI-devices e.t.c.
>
> Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Applied to -next. Thanks
Sascha
> ---
> commands/Makefile | 1 +
> commands/mem.c | 29 -----------------------------
> commands/stddev.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 52 insertions(+), 29 deletions(-)
> create mode 100644 commands/stddev.c
>
> diff --git a/commands/Makefile b/commands/Makefile
> index 4c8a0a9..d39c466 100644
> --- a/commands/Makefile
> +++ b/commands/Makefile
> @@ -1,3 +1,4 @@
> +obj-y += stddev.o
> obj-$(CONFIG_CMD_BOOTM) += bootm.o
> obj-$(CONFIG_CMD_UIMAGE) += uimage.o
> obj-$(CONFIG_CMD_LINUX16) += linux16.o
> diff --git a/commands/mem.c b/commands/mem.c
> index 080bfde..9a67cf3 100644
> --- a/commands/mem.c
> +++ b/commands/mem.c
> @@ -623,32 +623,3 @@ static int mem_init(void)
> }
>
> device_initcall(mem_init);
> -
> -static ssize_t zero_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags)
> -{
> - memset(buf, 0, count);
> - return count;
> -}
> -
> -static struct file_operations zeroops = {
> - .read = zero_read,
> - .lseek = dev_lseek_default,
> -};
> -
> -static int zero_init(void)
> -{
> - struct cdev *cdev;
> -
> - cdev = xzalloc(sizeof (*cdev));
> -
> - cdev->name = "zero";
> - cdev->size = ~0;
> - cdev->ops = &zeroops;
> -
> - devfs_create(cdev);
> -
> - return 0;
> -}
> -
> -device_initcall(zero_init);
> -
> diff --git a/commands/stddev.c b/commands/stddev.c
> new file mode 100644
> index 0000000..18fea94
> --- /dev/null
> +++ b/commands/stddev.c
> @@ -0,0 +1,51 @@
> +/*
> + * Copyright (c) 2011 Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2
> + * as published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> + * MA 02111-1307 USA
> + */
> +
> +#include <common.h>
> +#include <init.h>
> +
> +static ssize_t zero_read(struct cdev *cdev, void *buf, size_t count, ulong offset, ulong flags)
> +{
> + memset(buf, 0, count);
> + return count;
> +}
> +
> +static struct file_operations zeroops = {
> + .read = zero_read,
> + .lseek = dev_lseek_default,
> +};
> +
> +static int zero_init(void)
> +{
> + struct cdev *cdev;
> +
> + cdev = xzalloc(sizeof (*cdev));
> +
> + cdev->name = "zero";
> + cdev->size = ~0;
> + cdev->ops = &zeroops;
> +
> + devfs_create(cdev);
> +
> + return 0;
> +}
> +
> +device_initcall(zero_init);
> --
> 1.7.3.4
>
>
> _______________________________________________
> barebox mailing list
> barebox@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-06-09 11:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-06-09 7:34 [PATCH 1/2] Move /dev/zero to separate unit Alexander Shiyan
2012-06-09 7:34 ` [PATCH 2/2] Added "/dev/full" and "/dev/null" devices Alexander Shiyan
2012-06-09 11:27 ` [PATCH 1/2] Move /dev/zero to separate unit Sascha Hauer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox