#include "ui/common/discover-client.h"
-static int print_device_add(struct device *device)
+static int print_device_add(const struct device *device,
+ void __attribute__((unused)) *arg)
{
- int i;
+ struct boot_option *opt;
printf("new device:\n");
printf("\tid: %s\n", device->id);
printf("\tdesc: %s\n", device->description);
printf("\ticon: %s\n", device->icon_file);
- printf("\t%d boot options:\n", device->n_options);
- for (i = 0; i < device->n_options; i++) {
- struct boot_option *opt = &device->options[i];
+ printf("\tboot options:\n");
+ list_for_each_entry(&device->boot_options, opt, list) {
printf("\t\tid: %s\n", opt->id);
printf("\t\tname: %s\n", opt->name);
printf("\t\tdesc: %s\n", opt->description);
return 0;
}
-static void print_device_remove(char *dev_id)
+static void print_device_remove(const struct device *device,
+ void __attribute__((unused)) *arg)
{
printf("removed device:\n");
- printf("\tid: %s\n", dev_id);
+ printf("\tid: %s\n", device->id);
+ printf("\tname: %s\n", device->name);
}
-struct discover_client_ops client_ops = {
+static struct discover_client_ops client_ops = {
.add_device = print_device_add,
.remove_device = print_device_remove,
};
{
struct discover_client *client;
- client = discover_client_init(&client_ops);
+ client = discover_client_init(&client_ops, NULL);
if (!client)
return -1;