diff options
author | marius <marius@FreeBSD.org> | 2007-06-16 21:38:04 +0000 |
---|---|---|
committer | marius <marius@FreeBSD.org> | 2007-06-16 21:38:04 +0000 |
commit | 128f33dd8aefae83112dfebcc1cb3b63292197d6 (patch) | |
tree | 7f9b99f8f66314d2a02d40054cdcfedbd666d630 /sys/boot/ofw | |
parent | 85ff88bb21884ad047d0e6910561de52b378a0d7 (diff) | |
download | FreeBSD-src-128f33dd8aefae83112dfebcc1cb3b63292197d6.zip FreeBSD-src-128f33dd8aefae83112dfebcc1cb3b63292197d6.tar.gz |
Sync the styles of sys/boot/ofw/libofw/openfirm.c and
sys/dev/ofw/openfirm.c with themselves, with each-other
and with style(9).
Diffstat (limited to 'sys/boot/ofw')
-rw-r--r-- | sys/boot/ofw/libofw/openfirm.c | 651 |
1 files changed, 275 insertions, 376 deletions
diff --git a/sys/boot/ofw/libofw/openfirm.c b/sys/boot/ofw/libofw/openfirm.c index 9972f8f..97477dd 100644 --- a/sys/boot/ofw/libofw/openfirm.c +++ b/sys/boot/ofw/libofw/openfirm.c @@ -69,12 +69,12 @@ int (*openfirmware)(void *); ihandle_t mmu; ihandle_t memory; -/* Initialiaser */ +/* Initialiser */ void OF_init(int (*openfirm)(void *)) { - phandle_t chosen; + phandle_t chosen; openfirmware = openfirm; @@ -90,15 +90,14 @@ OF_init(int (*openfirm)(void *)) phandle_t OF_chosennode(void) { - static phandle_t chosen; + static phandle_t chosen; - if (chosen) - return (chosen); + if (chosen) + return (chosen); - if ((chosen = OF_finddevice("/chosen")) == -1) - OF_exit(); - - return (chosen); + if ((chosen = OF_finddevice("/chosen")) == -1) + OF_exit(); + return (chosen); } /* @@ -110,23 +109,21 @@ int OF_test(char *name) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t service; - cell_t missing; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t service; + cell_t missing; } args = { (cell_t)"test", 1, 1, - 0, - 0 }; args.service = (cell_t)name; if (openfirmware(&args) == -1) - return -1; - return (int)args.missing; + return (-1); + return (args.missing); } /* Return firmware millisecond count. */ @@ -134,19 +131,18 @@ int OF_milliseconds() { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t ms; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t ms; } args = { (cell_t)"milliseconds", 0, 1, - 0 }; - + openfirmware(&args); - return (int)args.ms; + return (args.ms); } /* @@ -158,23 +154,21 @@ phandle_t OF_peer(phandle_t node) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t node; - cell_t next; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t node; + cell_t next; } args = { (cell_t)"peer", 1, 1, - 0, - 0 }; - args.node = (u_int)node; + args.node = node; if (openfirmware(&args) == -1) - return -1; - return (phandle_t)args.next; + return (-1); + return (args.next); } /* Return the first child of this node or 0. */ @@ -182,23 +176,21 @@ phandle_t OF_child(phandle_t node) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t node; - cell_t child; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t node; + cell_t child; } args = { (cell_t)"child", 1, 1, - 0, - 0 }; - args.node = (u_int)node; + args.node = node; if (openfirmware(&args) == -1) - return -1; - return (phandle_t)args.child; + return (-1); + return (args.child); } /* Return the parent of this node or 0. */ @@ -206,23 +198,21 @@ phandle_t OF_parent(phandle_t node) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t node; - cell_t parent; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t node; + cell_t parent; } args = { (cell_t)"parent", 1, 1, - 0, - 0 }; - args.node = (u_int)node; + args.node = node; if (openfirmware(&args) == -1) - return -1; - return (phandle_t)args.parent; + return (-1); + return (args.parent); } /* Return the package handle that corresponds to an instance handle. */ @@ -230,23 +220,21 @@ phandle_t OF_instance_to_package(ihandle_t instance) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; - cell_t package; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; + cell_t package; } args = { (cell_t)"instance-to-package", 1, 1, - 0, - 0 }; - - args.instance = (u_int)instance; + + args.instance = instance; if (openfirmware(&args) == -1) - return -1; - return (phandle_t)args.package; + return (-1); + return (args.package); } /* Get the length of a property of a package. */ @@ -254,26 +242,23 @@ int OF_getproplen(phandle_t package, char *propname) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t package; - cell_t propname; - cell_t proplen; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t package; + cell_t propname; + cell_t proplen; } args = { (cell_t)"getproplen", 2, 1, - 0, - 0, - 0 }; - args.package = (u_int)package; + args.package = package; args.propname = (cell_t)propname; if (openfirmware(&args) == -1) - return -1; - return (int)args.proplen; + return (-1); + return (args.proplen); } /* Get the value of a property of a package. */ @@ -281,32 +266,27 @@ int OF_getprop(phandle_t package, char *propname, void *buf, int buflen) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t package; - cell_t propname; - cell_t buf; - cell_t buflen; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t package; + cell_t propname; + cell_t buf; + cell_t buflen; + cell_t size; } args = { (cell_t)"getprop", 4, 1, - 0, - 0, - 0, - 0, - 0 }; - - args.package = (u_int)package; + + args.package = package; args.propname = (cell_t)propname; args.buf = (cell_t)buf; - args.buflen = (u_int)buflen; + args.buflen = buflen; if (openfirmware(&args) == -1) - return -1; - return (int)args.size; + return (-1); + return (args.size); } /* Get the next property of a package. */ @@ -314,29 +294,25 @@ int OF_nextprop(phandle_t package, char *previous, char *buf) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t package; - cell_t previous; - cell_t buf; - cell_t flag; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t package; + cell_t previous; + cell_t buf; + cell_t flag; } args = { (cell_t)"nextprop", 3, 1, - 0, - 0, - 0, - 0 }; - args.package = (u_int)package; + args.package = package; args.previous = (cell_t)previous; args.buf = (cell_t)buf; if (openfirmware(&args) == -1) - return -1; - return (int)args.flag; + return (-1); + return (args.flag); } /* Set the value of a property of a package. */ @@ -345,32 +321,27 @@ int OF_setprop(phandle_t package, char *propname, void *buf, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t package; - cell_t propname; - cell_t buf; - cell_t len; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t package; + cell_t propname; + cell_t buf; + cell_t len; + cell_t size; } args = { (cell_t)"setprop", 4, 1, - 0, - 0, - 0, - 0, - 0 }; - - args.package = (u_int)package; + + args.package = package; args.propname = (cell_t)propname; args.buf = (cell_t)buf; - args.len = (u_int)len; + args.len = len; if (openfirmware(&args) == -1) - return -1; - return (int)args.size; + return (-1); + return (args.size); } /* Convert a device specifier to a fully qualified pathname. */ @@ -378,29 +349,25 @@ int OF_canon(const char *device, char *buf, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t device; - cell_t buf; - cell_t len; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t device; + cell_t buf; + cell_t len; + cell_t size; } args = { (cell_t)"canon", 3, 1, - 0, - 0, - 0, - 0 }; - + args.device = (cell_t)device; args.buf = (cell_t)buf; - args.len = (cell_t)len; + args.len = len; if (openfirmware(&args) == -1) - return -1; - return (int)args.size; + return (-1); + return (args.size); } /* Return a package handle for the specified device. */ @@ -408,24 +375,21 @@ phandle_t OF_finddevice(const char *device) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t device; - cell_t package; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t device; + cell_t package; } args = { (cell_t)"finddevice", 1, 1, - 0, - 0 - }; - + }; + args.device = (cell_t)device; if (openfirmware(&args) == -1) - return -1; - - return (phandle_t)args.package; + return (-1); + return (args.package); } /* Return the fully qualified pathname corresponding to an instance. */ @@ -433,29 +397,25 @@ int OF_instance_to_path(ihandle_t instance, char *buf, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; - cell_t buf; - cell_t len; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; + cell_t buf; + cell_t len; + cell_t size; } args = { (cell_t)"instance-to-path", 3, 1, - 0, - 0, - 0, - 0 }; - args.instance = (u_int)instance; + args.instance = instance; args.buf = (cell_t)buf; - args.len = (u_int)len; + args.len = len; if (openfirmware(&args) == -1) - return -1; - return (int)args.size; + return (-1); + return (args.size); } /* Return the fully qualified pathname corresponding to a package. */ @@ -463,29 +423,25 @@ int OF_package_to_path(phandle_t package, char *buf, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t package; - cell_t buf; - cell_t len; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t package; + cell_t buf; + cell_t len; + cell_t size; } args = { (cell_t)"package-to-path", 3, 1, - 0, - 0, - 0, - 0 }; - args.package = (u_int)package; + args.package = package; args.buf = (cell_t)buf; - args.len = (u_int)len; + args.len = len; if (openfirmware(&args) == -1) - return -1; - return (int)args.size; + return (-1); + return (args.size); } /* Call the method in the scope of a given instance. */ @@ -494,45 +450,41 @@ OF_call_method(char *method, ihandle_t instance, int nargs, int nreturns, ...) { va_list ap; static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t method; - cell_t instance; - cell_t args_n_results[12]; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t method; + cell_t instance; + cell_t args_n_results[12]; } args = { (cell_t)"call-method", 2, 1, - 0, - 0, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }; int *ip, n; if (nargs > 6) - return -1; + return (-1); args.nargs = nargs + 2; args.nreturns = nreturns + 1; args.method = (cell_t)method; - args.instance = (u_int)instance; + args.instance = instance; va_start(ap, nreturns); for (ip = (int *)(args.args_n_results + (n = nargs)); --n >= 0;) *--ip = va_arg(ap, int); - if (openfirmware(&args) == -1) - return -1; + return (-1); if (args.args_n_results[nargs]) - return (int)args.args_n_results[nargs]; + return (args.args_n_results[nargs]); for (ip = (int *)(args.args_n_results + nargs + (n = args.nreturns)); --n > 0;) *va_arg(ap, int *) = *--ip; va_end(ap); - return 0; + return (0); } /* - * Device I/O functions. + * Device I/O functions */ /* Open an instance for a device. */ @@ -540,24 +492,22 @@ ihandle_t OF_open(char *device) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t device; - cell_t instance; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t device; + cell_t instance; } args = { (cell_t)"open", 1, 1, - 0, - 0 }; - + args.device = (cell_t)device; if (openfirmware(&args) == -1 || args.instance == 0) { - return -1; + return (-1); } - return (ihandle_t)args.instance; + return (args.instance); } /* Close an instance. */ @@ -565,18 +515,16 @@ void OF_close(ihandle_t instance) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; } args = { (cell_t)"close", 1, - 0, - 0 }; - - args.instance = (u_int)instance; + + args.instance = instance; openfirmware(&args); } @@ -585,26 +533,22 @@ int OF_read(ihandle_t instance, void *addr, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; - cell_t addr; - cell_t len; - cell_t actual; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; + cell_t addr; + cell_t len; + cell_t actual; } args = { (cell_t)"read", 3, 1, - 0, - 0, - 0, - 0 }; - args.instance = (u_int)instance; + args.instance = instance; args.addr = (cell_t)addr; - args.len = (u_int)len; + args.len = len; #if defined(OPENFIRM_DEBUG) printf("OF_read: called with instance=%08x, addr=%p, len=%d\n", @@ -612,14 +556,14 @@ OF_read(ihandle_t instance, void *addr, int len) #endif if (openfirmware(&args) == -1) - return -1; + return (-1); #if defined(OPENFIRM_DEBUG) printf("OF_read: returning instance=%d, addr=%p, len=%d, actual=%d\n", args.instance, args.addr, args.len, args.actual); #endif - return (int)args.actual; + return (args.actual); } /* Write to an instance. */ @@ -627,29 +571,25 @@ int OF_write(ihandle_t instance, void *addr, int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; - cell_t addr; - cell_t len; - cell_t actual; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; + cell_t addr; + cell_t len; + cell_t actual; } args = { (cell_t)"write", 3, 1, - 0, - 0, - 0, - 0 }; - args.instance = (u_int)instance; + args.instance = instance; args.addr = (cell_t)addr; - args.len = (u_int)len; + args.len = len; if (openfirmware(&args) == -1) - return -1; - return (int)args.actual; + return (-1); + return (args.actual); } /* Seek to a position. */ @@ -657,33 +597,29 @@ int OF_seek(ihandle_t instance, u_int64_t pos) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t instance; - cell_t poshi; - cell_t poslo; - cell_t status; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t instance; + cell_t poshi; + cell_t poslo; + cell_t status; } args = { (cell_t)"seek", 3, 1, - 0, - 0, - 0, - 0 }; - - args.instance = (u_int)instance; + + args.instance = instance; args.poshi = pos >> 32; args.poslo = pos; if (openfirmware(&args) == -1) - return -1; - return (int)args.status; + return (-1); + return (args.status); } /* - * Memory functions. + * Memory functions */ /* Claim an area of memory. */ @@ -691,29 +627,25 @@ void * OF_claim(void *virt, u_int size, u_int align) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t virt; - cell_t size; - cell_t align; - cell_t baseaddr; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t virt; + cell_t size; + cell_t align; + cell_t baseaddr; } args = { (cell_t)"claim", 3, 1, - 0, - 0, - 0, - 0 }; args.virt = (cell_t)virt; args.size = size; args.align = align; if (openfirmware(&args) == -1) - return (void *)-1; - return (void *)args.baseaddr; + return ((void *)-1); + return ((void *)args.baseaddr); } /* Allocate an area of physical memory */ @@ -721,38 +653,30 @@ vm_offset_t OF_claim_virt(vm_offset_t virt, size_t size, int align) { static struct { - cell_t name; - cell_t nargs; - cell_t nret; - cell_t method; - cell_t ihandle; - cell_t align; - cell_t size; - cell_t virt; - cell_t status; - cell_t ret; + cell_t name; + cell_t nargs; + cell_t nret; + cell_t method; + cell_t ihandle; + cell_t align; + cell_t size; + cell_t virt; + cell_t status; + cell_t ret; } args = { (cell_t)"call-method", 5, 2, (cell_t)"claim", - 0, - 0, - 0, - 0, - 0, /* ret */ - 0, }; args.ihandle = mmu; args.align = align; args.size = size; - args.virt = virt; - + args.virt = (cell_t)virt; if (openfirmware(&args) == -1) - return (vm_offset_t)-1; - - return (vm_offset_t)args.ret; + return (-1); + return (args.ret); } /* Allocate an area of physical memory */ @@ -760,37 +684,29 @@ void * OF_alloc_phys(size_t size, int align) { static struct { - cell_t name; - cell_t nargs; - cell_t nret; - cell_t method; - cell_t ihandle; - cell_t align; - cell_t size; - cell_t status; - cell_t phys_hi; - cell_t phys_low; + cell_t name; + cell_t nargs; + cell_t nret; + cell_t method; + cell_t ihandle; + cell_t align; + cell_t size; + cell_t status; + cell_t phys_hi; + cell_t phys_low; } args = { (cell_t)"call-method", 4, 3, (cell_t)"claim", - 0, - 0, - 0, - 0, /* ret */ - 0, - 0, }; args.ihandle = memory; args.size = size; args.align = align; - if (openfirmware(&args) == -1) - return (void *)-1; - - return (void *)(args.phys_hi << 32 | args.phys_low); + return ((void *)-1); + return ((void *)(args.phys_hi << 32 | args.phys_low)); } /* Release an area of memory. */ @@ -798,19 +714,16 @@ void OF_release(void *virt, u_int size) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t virt; - cell_t size; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t virt; + cell_t size; } args = { (cell_t)"release", 2, - 0, - 0, - 0 }; - + args.virt = (cell_t)virt; args.size = size; openfirmware(&args); @@ -821,34 +734,30 @@ void OF_release_phys(vm_offset_t phys, u_int size) { static struct { - cell_t name; - cell_t nargs; - cell_t nret; - cell_t method; - cell_t ihandle; - cell_t size; - cell_t phys_hi; - cell_t phys_lo; + cell_t name; + cell_t nargs; + cell_t nret; + cell_t method; + cell_t ihandle; + cell_t size; + cell_t phys_hi; + cell_t phys_lo; } args = { (cell_t)"call-method", 5, 0, (cell_t)"release", - 0, - 0, - 0, - 0 }; args.ihandle = memory; - args.phys_hi = (u_int32_t)(phys >> 32); - args.phys_lo = (u_int32_t)phys; + args.phys_hi = phys >> 32; + args.phys_lo = phys; args.size = size; openfirmware(&args); } /* - * Control transfer functions. + * Control transfer functions */ /* Reset the system and call "boot <bootspec>". */ @@ -856,20 +765,19 @@ void OF_boot(char *bootspec) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t bootspec; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t bootspec; } args = { (cell_t)"boot", 1, - 0, - 0 }; args.bootspec = (cell_t)bootspec; openfirmware(&args); - for (;;); /* just in case */ + for (;;) /* just in case */ + ; } /* Suspend and drop back to the Open Firmware interface. */ @@ -877,16 +785,15 @@ void OF_enter() { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; + cell_t name; + cell_t nargs; + cell_t nreturns; } args = { (cell_t)"enter", - 0, - 0 }; openfirmware(&args); + /* We may come back. */ } /* Shut down and drop back to the Open Firmware interface. */ @@ -894,17 +801,16 @@ void OF_exit() { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; + cell_t name; + cell_t nargs; + cell_t nreturns; } args = { (cell_t)"exit", - 0, - 0 }; openfirmware(&args); - for (;;); /* just in case */ + for (;;) /* just in case */ + ; } /* Free <size> bytes starting at <virt>, then call <entry> with <arg>. */ @@ -913,23 +819,17 @@ void OF_chain(void *virt, u_int size, void (*entry)(), void *arg, u_int len) { static struct { - cell_t name; - cell_t nargs; - cell_t nreturns; - cell_t virt; - cell_t size; - cell_t entry; - cell_t arg; - cell_t len; + cell_t name; + cell_t nargs; + cell_t nreturns; + cell_t virt; + cell_t size; + cell_t entry; + cell_t arg; + cell_t len; } args = { (cell_t)"chain", 5, - 0, - 0, - 0, - 0, - 0, - 0 }; args.virt = (cell_t)virt; @@ -950,7 +850,6 @@ OF_chain(void *virt, u_int size, void (*entry)(), void *arg, u_int len) if (size > 0) OF_release(virt, size); #endif - entry(0, 0, openfirmware, arg, len); } #endif |