+2009-04-10 David S. Miller <davem@davemloft.net>
+
+ * disk/ieee1275/nand.c (grub_nand_open): All ieee1275 call arg
+ slots are of type grub_ieee1275_cell_t.
+ (grub_nand_read): Likewise.
+ * kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_INVALID,
+ IEEE1275_IHANDLE_INVALID): Use grub_ieee1275_cell_t since these
+ macros are used to compare values in arg/ret block of the call.
+ (grub_ieee1275_finddevice, grub_ieee1275_get_property,
+ grub_ieee1275_next_property, grub_ieee1275_get_property_length,
+ grub_ieee1275_instance_to_package, grub_ieee1275_package_to_path,
+ grub_ieee1275_instance_to_path, grub_ieee1275_write,
+ grub_ieee1275_read, grub_ieee1275_seek, grub_ieee1275_peer,
+ grub_ieee1275_child, grub_ieee1275_parent, grub_ieee1275_open,
+ grub_ieee1275_close, grub_ieee1275_set_property,
+ grub_ieee1275_set_color): All ieee1275 call arg slots are of type
+ grub_ieee1275_cell_t.
+ * kern/ieee1275/openfw.c (grub_map): Likewise.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_ihandle_t,
+ grub_ieee1275_phandle_t): Define as grub_unit32_t type.
+
2009-04-10 Vladimir Serbinenko <phcoder@gmail.com>
UFS improvements
struct size_args
{
struct grub_ieee1275_common_hdr common;
- char *method;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t method;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t result;
grub_ieee1275_cell_t size1;
grub_ieee1275_cell_t size2;
data->handle = dev_ihandle;
INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 2);
- args.method = "block-size";
+ args.method = (grub_ieee1275_cell_t) "block-size";
args.ihandle = dev_ihandle;
args.result = 1;
data->block_size = (args.size1 >> GRUB_DISK_SECTOR_BITS);
INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 3);
- args.method = "size";
+ args.method = (grub_ieee1275_cell_t) "size";
args.ihandle = dev_ihandle;
args.result = 1;
struct read_args
{
struct grub_ieee1275_common_hdr common;
- char *method;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t method;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t ofs;
grub_ieee1275_cell_t page;
grub_ieee1275_cell_t len;
} args;
INIT_IEEE1275_COMMON (&args.common, "call-method", 6, 1);
- args.method = "pio-read";
+ args.method = (grub_ieee1275_cell_t) "pio-read";
args.ihandle = data->handle;
args.buf = (grub_ieee1275_cell_t) buf;
args.page = (grub_ieee1275_cell_t) ((grub_size_t) sector / data->block_size);
#include <grub/ieee1275/ieee1275.h>
#include <grub/types.h>
-#define IEEE1275_PHANDLE_INVALID ((grub_ieee1275_phandle_t) -1)
-#define IEEE1275_IHANDLE_INVALID ((grub_ieee1275_ihandle_t) 0)
+#define IEEE1275_PHANDLE_INVALID ((grub_ieee1275_cell_t) -1)
+#define IEEE1275_IHANDLE_INVALID ((grub_ieee1275_cell_t) 0)
#define IEEE1275_CELL_INVALID ((grub_ieee1275_cell_t) -1)
\f
{
struct grub_ieee1275_common_hdr common;
grub_ieee1275_cell_t device;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
}
args;
struct get_property_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
grub_ieee1275_cell_t prop;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t buflen;
struct get_property_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
grub_ieee1275_cell_t prev_prop;
grub_ieee1275_cell_t next_prop;
grub_ieee1275_cell_t flags;
struct get_property_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
grub_ieee1275_cell_t prop;
grub_ieee1275_cell_t length;
}
struct instance_to_package_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t ihandle;
+ grub_ieee1275_cell_t phandle;
}
args;
struct instance_to_package_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t buflen;
grub_ieee1275_cell_t actual;
struct instance_to_path_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t buflen;
grub_ieee1275_cell_t actual;
struct write_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t len;
grub_ieee1275_cell_t actual;
struct write_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t len;
grub_ieee1275_cell_t actual;
struct write_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t pos_hi;
grub_ieee1275_cell_t pos_lo;
grub_ieee1275_cell_t result;
struct peer_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t node;
- grub_ieee1275_phandle_t result;
+ grub_ieee1275_cell_t node;
+ grub_ieee1275_cell_t result;
}
args;
struct child_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t node;
- grub_ieee1275_phandle_t result;
+ grub_ieee1275_cell_t node;
+ grub_ieee1275_cell_t result;
}
args;
struct parent_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t node;
- grub_ieee1275_phandle_t result;
+ grub_ieee1275_cell_t node;
+ grub_ieee1275_cell_t result;
}
args;
{
struct grub_ieee1275_common_hdr common;
grub_ieee1275_cell_t path;
- grub_ieee1275_ihandle_t result;
+ grub_ieee1275_cell_t result;
}
args;
struct close_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t ihandle;
}
args;
struct set_property_args
{
struct grub_ieee1275_common_hdr common;
- grub_ieee1275_phandle_t phandle;
+ grub_ieee1275_cell_t phandle;
grub_ieee1275_cell_t propname;
grub_ieee1275_cell_t buf;
grub_ieee1275_cell_t size;
struct set_color_args
{
struct grub_ieee1275_common_hdr common;
- char *method;
- grub_ieee1275_ihandle_t ihandle;
+ grub_ieee1275_cell_t method;
+ grub_ieee1275_cell_t ihandle;
grub_ieee1275_cell_t index;
grub_ieee1275_cell_t b;
grub_ieee1275_cell_t g;
args;
INIT_IEEE1275_COMMON (&args.common, "call-method", 6, 1);
- args.method = "color!";
+ args.method = (grub_ieee1275_cell_t) "color!";
args.ihandle = ihandle;
args.index = index;
args.r = r;