X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=ui%2Ftwin%2Fpbt-client.c;h=48de8160eeee7d1f0877cdc52c13a467c2b4a85a;hp=09d8e99c2518e5d138b3e3781b76ab7688d02afb;hb=44ab15ff671fae26af2b5c8a5db8bcded677ef74;hpb=bd06734362bb727b09b943688d9b69aa0a84590d diff --git a/ui/twin/pbt-client.c b/ui/twin/pbt-client.c index 09d8e99..48de816 100644 --- a/ui/twin/pbt-client.c +++ b/ui/twin/pbt-client.c @@ -19,7 +19,6 @@ #include "config.h" #endif -#define _GNU_SOURCE #include #include @@ -30,6 +29,7 @@ #include "log/log.h" #include "talloc/talloc.h" #include "waiter/waiter.h" +#include "process/process.h" #include "ui/common/discover-client.h" static struct pb_opt_data *pbt_opt_data_from_item(struct pbt_item *item) @@ -57,7 +57,7 @@ static int pbt_client_boot(struct pbt_item *item) int result; struct pb_opt_data *opt_data = pbt_opt_data_from_item(item); - pb_log("%s: %s\n", __func__, pbt_item_name(item)); + pb_debug("%s: %s\n", __func__, pbt_item_name(item)); pbt_frame_status_printf(&item->pbt_client->frame, "Booting %s...", pbt_item_name(item)); @@ -87,7 +87,7 @@ static int pbt_device_add(struct device *dev, struct pbt_client *client) struct pbt_quad q; const char *icon_file; - pb_log("%s: %p %s: n_options %d\n", __func__, dev, dev->id, + pb_debug("%s: %p %s: n_options %d\n", __func__, dev, dev->id, dev->n_options); pb_protocol_dump_device(dev, "", pb_log_get_stream()); @@ -147,6 +147,8 @@ static int pbt_boot_option_add(struct device *dev, struct boot_option *opt, opt->boot_image_file); opt_data->bd->initrd = talloc_strdup(opt_data->bd, opt->initrd_file); + opt_data->bd->dtb = talloc_strdup(opt_data->bd, + opt->dtb_file); opt_data->bd->args = talloc_strdup(opt_data->bd, opt->boot_args); opt_data->opt = opt; @@ -178,7 +180,7 @@ static void pbt_device_remove(struct device *dev, struct pbt_client *client) struct pbt_item *next_item; struct pbt_item *i; - pb_log("%s: %p %s: n_options %d\n", __func__, dev, dev->id, + pb_debug("%s: %p %s: n_options %d\n", __func__, dev, dev->id, dev->n_options); pb_protocol_dump_device(dev, "", pb_log_get_stream()); @@ -242,7 +244,7 @@ static struct discover_client_ops pbt_client_ops = { static void pbt_client_destructor(struct pbt_client *client) { - pb_log("%s\n", __func__); + pb_debug("%s\n", __func__); // move to screen twin_x11_destroy(twin_ctx); talloc_free(client->discover_client); @@ -250,7 +252,7 @@ static void pbt_client_destructor(struct pbt_client *client) } struct pbt_client *pbt_client_init(enum pbt_twin_backend backend, - unsigned int width, unsigned int height, int start_deamon) + unsigned int width, unsigned int height, int start_daemon) { struct pbt_client *pbt_client; unsigned int i; @@ -267,6 +269,8 @@ struct pbt_client *pbt_client_init(enum pbt_twin_backend backend, pbt_client->waitset = waitset_create(pbt_client); + process_init(pbt_client, pbt_client->waitset, false); + pbt_client->sig = "pbt_client"; pbt_client->frame.scr = pbt_scr_init(pbt_client, pbt_client->waitset, backend, width, height, NULL, NULL); @@ -278,7 +282,7 @@ struct pbt_client *pbt_client_init(enum pbt_twin_backend backend, /* Loop here for scripts that just started the server. */ retry_start: - for (i = start_deamon ? 2 : 10; i; i--) { + for (i = start_daemon ? 2 : 10; i; i--) { pbt_client->discover_client = discover_client_init(pbt_client->waitset, &pbt_client_ops, pbt_client); @@ -288,12 +292,12 @@ retry_start: sleep(1); } - if (!pbt_client->discover_client && start_deamon) { + if (!pbt_client->discover_client && start_daemon) { int result; - start_deamon = 0; + start_daemon = 0; - result = pb_start_daemon(); + result = pb_start_daemon(pbt_client); if (!result) goto retry_start;