summaryrefslogtreecommitdiffstats
path: root/utils/hwstub/lib/hwstub.h
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2016-02-07 21:42:15 +0000
committerAmaury Pouly <amaury.pouly@gmail.com>2016-04-08 19:37:30 +0200
commit3d8a08ca25c3041ac677335e51341d966a9b370b (patch)
tree1bf06dea354e3ae95c1ec91b6ee259d0ac21659c /utils/hwstub/lib/hwstub.h
parent56dc54d38ac6c1d47ea6dbae88b1e5f7fee9f3ec (diff)
downloadrockbox-3d8a08ca25c3041ac677335e51341d966a9b370b.tar.gz
rockbox-3d8a08ca25c3041ac677335e51341d966a9b370b.tar.bz2
rockbox-3d8a08ca25c3041ac677335e51341d966a9b370b.zip
hwstub: rewrite and expand library
Rewrite the hwstub library in C++, with a clean and modular design. The library was designed from the ground up to be aware of multithreading issues and to handle memory allocation nicely with shared pointers. Compared to the original library, it brings the following major features: - support for JZ boot devices, it is very easy to add support for others - support for network transparent operations (through sockets): both tcp and unix domains are support Change-Id: I75899cb9c7aa938c17ede2bb3f468e7a55d625b4
Diffstat (limited to 'utils/hwstub/lib/hwstub.h')
-rw-r--r--utils/hwstub/lib/hwstub.h70
1 files changed, 0 insertions, 70 deletions
diff --git a/utils/hwstub/lib/hwstub.h b/utils/hwstub/lib/hwstub.h
deleted file mode 100644
index 4d12de8eda..0000000000
--- a/utils/hwstub/lib/hwstub.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2012 by Amaury Pouly
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-#ifndef __HWSTUB__
-#define __HWSTUB__
-
-#include <libusb.h>
-#include "hwstub_protocol.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- *
- * Low-Level interface
- *
- */
-
-struct hwstub_device_t;
-
-/* Returns hwstub interface, or -1 if none was found */
-int hwstub_probe(libusb_device *dev);
-/* Helper function which returns a list of all hwstub devices found. The caller
- * must unref all of them when done, possibly using libusb_free_device_list().
- * Return number of devices or <0 on error */
-ssize_t hwstub_get_device_list(libusb_context *ctx, libusb_device ***list);
-/* Returns NULL on error */
-struct hwstub_device_t *hwstub_open(libusb_device_handle *handle);
-/* Returns 0 on success. Does *NOT* close the usb handle */
-int hwstub_release(struct hwstub_device_t *dev);
-
-/* Returns number of bytes filled */
-int hwstub_get_desc(struct hwstub_device_t *dev, uint16_t desc, void *info, size_t sz);
-/* Returns number of bytes filled */
-int hwstub_get_log(struct hwstub_device_t *dev, void *buf, size_t sz);
-/* Returns number of bytes written/read or <0 on error */
-int hwstub_read(struct hwstub_device_t *dev, uint32_t addr, void *buf, size_t sz);
-int hwstub_read_atomic(struct hwstub_device_t *dev, uint32_t addr, void *buf, size_t sz);
-int hwstub_write(struct hwstub_device_t *dev, uint32_t addr, const void *buf, size_t sz);
-int hwstub_write_atomic(struct hwstub_device_t *dev, uint32_t addr, const void *buf, size_t sz);
-int hwstub_rw_mem(struct hwstub_device_t *dev, int read, uint32_t addr, void *buf, size_t sz);
-int hwstub_rw_mem_atomic(struct hwstub_device_t *dev, int read, uint32_t addr, void *buf, size_t sz);
-/* Returns <0 on error */
-int hwstub_exec(struct hwstub_device_t *dev, uint32_t addr, uint16_t flags);
-int hwstub_call(struct hwstub_device_t *dev, uint32_t addr);
-int hwstub_jump(struct hwstub_device_t *dev, uint32_t addr);
-
-#ifdef __cplusplus
-} // extern "C"
-#endif
-
-#endif /* __HWSTUB__ */ \ No newline at end of file