#define olpc_ofw(name, args, res) \
        __olpc_ofw((name), ARRAY_SIZE(args), args, ARRAY_SIZE(res), res)
 
-extern int __olpc_ofw(const char *name, int nr_args, void **args, int nr_res,
+extern int __olpc_ofw(const char *name, int nr_args, const void **args, int nr_res,
                void **res);
 
 /* determine whether OFW is available and lives in the proper memory */
 
 {
        size_t propsize;
        __be32 rev;
-       void *args[] = { NULL, "board-revision-int", &rev, (void *)4 };
+       const void *args[] = { NULL, "board-revision-int", &rev, (void *)4 };
        void *res[] = { &propsize };
 
        if (olpc_ofw("getprop", args, res) || propsize != 4) {
 
        early_iounmap(base, sizeof(olpc_ofw_pgd) * PTRS_PER_PGD);
 }
 
-int __olpc_ofw(const char *name, int nr_args, void **args, int nr_res,
+int __olpc_ofw(const char *name, int nr_args, const void **args, int nr_res,
                void **res)
 {
        int ofw_args[MAXARGS + 3];