svn commit: r209801 - in head/sys: dev/ofw powerpc/ofw
Nathan Whitehorn
nwhitehorn at FreeBSD.org
Thu Jul 8 14:29:24 UTC 2010
Author: nwhitehorn
Date: Thu Jul 8 14:29:23 2010
New Revision: 209801
URL: http://svn.freebsd.org/changeset/base/209801
Log:
Change the argument type to OF_call_method to take an array of cell_t
instead of unsigned longs to prepare for platforms where they are not
the same.
Modified:
head/sys/dev/ofw/ofw_if.m
head/sys/dev/ofw/ofw_standard.c
head/sys/dev/ofw/openfirm.c
head/sys/powerpc/ofw/ofw_real.c
Modified: head/sys/dev/ofw/ofw_if.m
==============================================================================
--- head/sys/dev/ofw/ofw_if.m Thu Jul 8 14:19:52 2010 (r209800)
+++ head/sys/dev/ofw/ofw_if.m Thu Jul 8 14:29:23 2010 (r209801)
@@ -229,7 +229,7 @@ METHOD int call_method {
int _nargs;
int _nreturns;
- unsigned long *_args_and_returns;
+ cell_t *_args_and_returns;
};
/**
Modified: head/sys/dev/ofw/ofw_standard.c
==============================================================================
--- head/sys/dev/ofw/ofw_standard.c Thu Jul 8 14:19:52 2010 (r209800)
+++ head/sys/dev/ofw/ofw_standard.c Thu Jul 8 14:29:23 2010 (r209801)
@@ -95,7 +95,7 @@ static ssize_t ofw_std_package_to_path(o
size_t len);
static int ofw_std_call_method(ofw_t ofw, ihandle_t instance,
const char *method, int nargs, int nreturns,
- unsigned long *args_and_returns);
+ cell_t *args_and_returns);
static ihandle_t ofw_std_open(ofw_t ofw, const char *device);
static void ofw_std_close(ofw_t ofw, ihandle_t instance);
static ssize_t ofw_std_read(ofw_t ofw, ihandle_t instance, void *addr,
@@ -515,7 +515,7 @@ ofw_std_package_to_path(ofw_t ofw, phand
/* Call the method in the scope of a given instance. */
static int
ofw_std_call_method(ofw_t ofw, ihandle_t instance, const char *method,
- int nargs, int nreturns, unsigned long *args_and_returns)
+ int nargs, int nreturns, cell_t *args_and_returns)
{
struct {
cell_t name;
@@ -529,8 +529,7 @@ ofw_std_call_method(ofw_t ofw, ihandle_t
2,
1,
};
- cell_t *cp;
- unsigned long *ap;
+ cell_t *cp, *ap;
int n;
if (nargs > 6)
Modified: head/sys/dev/ofw/openfirm.c
==============================================================================
--- head/sys/dev/ofw/openfirm.c Thu Jul 8 14:19:52 2010 (r209800)
+++ head/sys/dev/ofw/openfirm.c Thu Jul 8 14:29:23 2010 (r209801)
@@ -328,14 +328,14 @@ OF_call_method(const char *method, ihand
...)
{
va_list ap;
- unsigned long args_n_results[12];
+ cell_t args_n_results[12];
int n, status;
if (nargs > 6)
return (-1);
va_start(ap, nreturns);
for (n = 0; n < nargs; n++)
- args_n_results[n] = va_arg(ap, unsigned long);
+ args_n_results[n] = va_arg(ap, cell_t);
status = OFW_CALL_METHOD(ofw_obj, instance, method, nargs, nreturns,
args_n_results);
@@ -343,7 +343,7 @@ OF_call_method(const char *method, ihand
return (status);
for (; n < nargs + nreturns; n++)
- *va_arg(ap, unsigned long *) = args_n_results[n];
+ *va_arg(ap, cell_t *) = args_n_results[n];
va_end(ap);
return (0);
}
Modified: head/sys/powerpc/ofw/ofw_real.c
==============================================================================
--- head/sys/powerpc/ofw/ofw_real.c Thu Jul 8 14:19:52 2010 (r209800)
+++ head/sys/powerpc/ofw/ofw_real.c Thu Jul 8 14:29:23 2010 (r209801)
@@ -97,7 +97,7 @@ static ssize_t ofw_real_instance_to_path
static ssize_t ofw_real_package_to_path(ofw_t, phandle_t package, char *buf,
size_t len);
static int ofw_real_call_method(ofw_t, ihandle_t instance, const char *method,
- int nargs, int nreturns, unsigned long *args_and_returns);
+ int nargs, int nreturns, cell_t *args_and_returns);
static ihandle_t ofw_real_open(ofw_t, const char *device);
static void ofw_real_close(ofw_t, ihandle_t instance);
static ssize_t ofw_real_read(ofw_t, ihandle_t instance, void *addr, size_t len);
@@ -652,7 +652,7 @@ ofw_real_package_to_path(ofw_t ofw, phan
/* Call the method in the scope of a given instance. */
static int
ofw_real_call_method(ofw_t ofw, ihandle_t instance, const char *method,
- int nargs, int nreturns, unsigned long *args_and_returns)
+ int nargs, int nreturns, cell_t *args_and_returns)
{
struct {
cell_t name;
@@ -666,8 +666,7 @@ ofw_real_call_method(ofw_t ofw, ihandle_
2,
1,
};
- cell_t *cp;
- unsigned long *ap;
+ cell_t *cp, *ap;
int n;
if (nargs > 6)
More information about the svn-src-head
mailing list