blob: 38dbedf4abf5d3df5f8da1ff17aafb1e8c956768 [file] [log] [blame]
dhendrix@google.com17bee8a2010-06-15 01:41:24 +00001mosys - The multifunction open system tool
2
3Introduction
4------------
5Mosys is designed to aid in obtaining obscure system-specific information
6and present it in a uniform, human-friendly manner that is also parseable. It
7is intended to complement other systems software and may overlap in some areas.
8
9Examples of information this program is useful for:
10- Platform identification
11- Snapshot of machine information
12- Listing non-enumerable devices
13- Retrieving vital product data
14
15Due to the system-specific nature of this program, it is unlikely to work with
16most platforms. A generic subset of functionality will be available, though
17its usefulness may be extremely limited.
18
19Configuration & Building
20------------------------
21Mosys uses the Linux kernel configuration and build system. "make help" lists
22the available configuration and build targets.
23
dhendrix@google.com8a8bbca2010-07-01 03:38:39 +000024After a fresh checkout, you will need to generate a configuration file before
25the sources may be compiled. To do so, run a configuration target (ie "make
26menuconfig") followed by a generic target such as "make" or "make all".
dhendrix@google.com17bee8a2010-06-15 01:41:24 +000027
28Usage
29-----
30Mosys uses a natural language syntax to navigate thru a command hierarchy for
31a given platform. Each supported platform will have a specific set of commands
32available.
33
34Typically, top-level commands will reflect classes of hardware components
35such as "cpu" or "sensor", available busses such as "pci" or "i2c", or a
36type of information such as "smbios" or "vpd".
37
38Mosys returns EXIT_SUCCESS upon successful completion of a command, or
39EXIT_FAILURE if a command is not supported on a given platform. These values
40are defined in the system's stdlib.h. In case of failure, mosys will also print
41a message to stderr to let the user know.
42
43Use "mosys -t" to display the command tree for the host platform.