summaryrefslogtreecommitdiffstats
path: root/cpukit/libmisc/monitor/mon-part.c
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2007-09-05 20:35:36 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2007-09-05 20:35:36 +0000
commit501ab69168fbfcd81270f7e1943162b87c62b8cc (patch)
treef747727466317e8b93709046fd0367270d6d550e /cpukit/libmisc/monitor/mon-part.c
parent2007-09-05 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-501ab69168fbfcd81270f7e1943162b87c62b8cc.tar.bz2
Added osmonweb support functionality to monitor
Diffstat (limited to 'cpukit/libmisc/monitor/mon-part.c')
-rw-r--r--cpukit/libmisc/monitor/mon-part.c68
1 files changed, 68 insertions, 0 deletions
diff --git a/cpukit/libmisc/monitor/mon-part.c b/cpukit/libmisc/monitor/mon-part.c
new file mode 100644
index 0000000000..ff9c165208
--- /dev/null
+++ b/cpukit/libmisc/monitor/mon-part.c
@@ -0,0 +1,68 @@
+/*
+ * RTEMS Monitor partition support
+ *
+ * $Id$
+ */
+
+#include <rtems.h>
+#include "monitor.h"
+#include <rtems/rtems/attr.inl>
+#include <stdio.h>
+#include <string.h> /* memcpy() */
+
+void
+rtems_monitor_part_canonical(
+ rtems_monitor_part_t *canonical_part,
+ void *part_void
+)
+{
+ Partition_Control *rtems_part = (Partition_Control *) part_void;
+
+ canonical_part->attribute = rtems_part->attribute_set;
+ canonical_part->start_addr = rtems_part->starting_address;
+ canonical_part->length = rtems_part->length;
+ canonical_part->buf_size = rtems_part->buffer_size;
+ canonical_part->used_blocks = rtems_part->number_of_used_blocks;
+}
+
+
+void
+rtems_monitor_part_dump_header(
+ boolean verbose
+)
+{
+ printf("\
+ ID NAME ATTR STARTADDR LENGTH BUF_SIZE USED_BLOCKS\n");
+/*23456789 123456789 123456789 123456789 123456789 123456789 123456789 1234
+ 1 2 3 4 5 6 7 */
+
+ rtems_monitor_separator();
+}
+
+/*
+ */
+
+void
+rtems_monitor_part_dump(
+ rtems_monitor_part_t *monitor_part,
+ boolean verbose
+)
+{
+ int length = 0;
+
+ length += rtems_monitor_dump_id(monitor_part->id);
+ length += rtems_monitor_pad(11, length);
+ length += rtems_monitor_dump_name(monitor_part->name);
+ length += rtems_monitor_pad(18, length);
+ length += rtems_monitor_dump_attributes(monitor_part->attribute);
+ length += rtems_monitor_pad(30, length);
+ length += rtems_monitor_dump_hex((uint32_t)monitor_part->start_addr);
+ length += rtems_monitor_pad(40, length);
+ length += rtems_monitor_dump_hex(monitor_part->length);
+ length += rtems_monitor_pad(50, length);
+ length += rtems_monitor_dump_hex(monitor_part->buf_size);
+ length += rtems_monitor_pad(60, length);
+ length += rtems_monitor_dump_hex(monitor_part->used_blocks);
+ printf("\n");
+}
+