diff --git a/repos/dde_linux/src/include/lx_emul/usb.h b/repos/dde_linux/src/include/lx_emul/usb.h new file mode 100644 index 0000000000..38d9245ed6 --- /dev/null +++ b/repos/dde_linux/src/include/lx_emul/usb.h @@ -0,0 +1,27 @@ +/* + * \brief Lx_emul support for USB + * \author Stefan Kalkowski + * \date 2022-03-08 + */ + +/* + * Copyright (C) 2022 Genode Labs GmbH + * + * This file is distributed under the terms of the GNU General Public License + * version 2. + */ + +#ifndef _LX_EMUL__USB_H_ +#define _LX_EMUL__USB_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +extern struct genode_usb_rpc_callbacks lx_emul_usb_rpc_callbacks; + +#ifdef __cplusplus +} +#endif + +#endif /* _LX_EMUL__USB_H_ */ diff --git a/repos/pc/src/drivers/usb_host/pc/usb.c b/repos/dde_linux/src/lib/lx_emul/usb.c similarity index 99% rename from repos/pc/src/drivers/usb_host/pc/usb.c rename to repos/dde_linux/src/lib/lx_emul/usb.c index 66ffb99d60..496951aa26 100644 --- a/repos/pc/src/drivers/usb_host/pc/usb.c +++ b/repos/dde_linux/src/lib/lx_emul/usb.c @@ -155,7 +155,7 @@ static int endpoint_descriptor(genode_usb_bus_num_t bus, } -struct genode_usb_rpc_callbacks genode_usb_rpc_callbacks_obj = { +struct genode_usb_rpc_callbacks lx_emul_usb_rpc_callbacks = { .alloc_fn = lx_emul_shared_dma_buffer_allocate, .free_fn = lx_emul_shared_dma_buffer_free, .cfg_desc_fn = config_descriptor, diff --git a/repos/pc/src/drivers/usb_host/pc/main.cc b/repos/pc/src/drivers/usb_host/pc/main.cc index f80934e55f..705340b00a 100644 --- a/repos/pc/src/drivers/usb_host/pc/main.cc +++ b/repos/pc/src/drivers/usb_host/pc/main.cc @@ -16,6 +16,7 @@ #include #include +#include #include #include #include @@ -27,8 +28,6 @@ using namespace Genode; static bool _bios_handoff; -extern struct genode_usb_rpc_callbacks genode_usb_rpc_callbacks_obj; - extern "C" int inhibit_pci_fixup(char const *name) { @@ -76,7 +75,7 @@ struct Main : private Entrypoint::Io_progress_handler genode_usb_init(genode_env_ptr(env), genode_allocator_ptr(sliced_heap), genode_signal_handler_ptr(signal_handler), - &genode_usb_rpc_callbacks_obj); + &lx_emul_usb_rpc_callbacks); lx_emul_start_kernel(nullptr); diff --git a/repos/pc/src/drivers/usb_host/pc/target.inc b/repos/pc/src/drivers/usb_host/pc/target.inc index f908710215..534657f2a0 100644 --- a/repos/pc/src/drivers/usb_host/pc/target.inc +++ b/repos/pc/src/drivers/usb_host/pc/target.inc @@ -12,10 +12,10 @@ SRC_CC += time.cc SRC_CC += lx_emul/shared_dma_buffer.cc SRC_C += dummies.c SRC_C += lx_emul.c -SRC_C += usb.c SRC_C += $(notdir $(wildcard $(REL_PRG_DIR)/generated_dummies.c)) SRC_C += common_dummies.c SRC_C += lx_emul/spec/x86/pci.c +SRC_C += lx_emul/usb.c vpath %.c $(REL_PRG_DIR) vpath %.cc $(REL_PRG_DIR)