#define INPUT_TOUCH_PARAMETER "virtio-touchscreen-pci"
#define ARGS_LIMIT 128
-#define LEN_MARU_KERNEL_CMDLINE 512
-char maru_kernel_cmdline[LEN_MARU_KERNEL_CMDLINE];
+char *maru_kernel_cmdline;
char tizen_target_path[PATH_MAX];
reset_variables();
LOG_INFO("Exit emulator...\n");
+
+ maru_atexit();
}
static Notifier emulator_exit = { .notify = emulator_notify_exit };
fprintf(stdout, "qemu args: =========================================\n");
for (i = 0; i < _qemu_argc; ++i) {
- fprintf(stdout, "%s ", _qemu_argv[i]);
+ fprintf(stdout, "\"%s\" ", _qemu_argv[i]);
}
fprintf(stdout, "\n====================================================\n");
fflush(stdout);
}
-#define PROXY_BUFFER_LEN 128
-static void prepare_basic_features(gchar * const kernel_cmdline)
-{
- gchar * tmp_str;
-
- LOG_INFO("Prepare_basic_features\n");
- set_base_port();
- tmp_str = g_strdup_printf(" sdb_port=%d,"
- " vm_resolution=%dx%d", get_emul_vm_base_port(),
- get_emul_resolution_width(), get_emul_resolution_height());
- set_emul_host_ip(kernel_cmdline);
- g_strlcat(kernel_cmdline, tmp_str, LEN_MARU_KERNEL_CMDLINE);
- g_free(tmp_str);
-}
-
-const char *prepare_maru(const gchar * const kernel_cmdline)
+const char *prepare_maru(const char * const kernel_cmdline)
{
- LOG_INFO("Prepare maru specified feature\n");
-
- atexit(maru_atexit);
emulator_add_exit_notifier(&emulator_exit);
-
socket_init();
-
print_system_info();
+ set_base_port();
- g_strlcpy(maru_kernel_cmdline, kernel_cmdline, LEN_MARU_KERNEL_CMDLINE);
-
- /* Prepare basic features */
- prepare_basic_features(maru_kernel_cmdline);
-
- LOG_INFO("kernel command : %s\n", maru_kernel_cmdline);
+ // assemble new kernel cmdline
+ maru_kernel_cmdline = g_strdup_printf("%s sdb_port=%d, "
+ "vm_resolution=%dx%d", kernel_cmdline, get_emul_vm_base_port(),
+ get_emul_resolution_width(), get_emul_resolution_height());
+ set_emul_host_ip(maru_kernel_cmdline);
+ LOG_INFO("kernel commandline : %s\n", maru_kernel_cmdline);
return maru_kernel_cmdline;
}