mirror of
https://github.com/linux-msm/qdl.git
synced 2026-02-25 13:12:25 -08:00
On some newer platforms the device ignore the configure request to disable ZLP, causing the Firehose program request to stall, when the device is waiting for a ZLP to end a transfer. Mitigate this by circumventing the qcserial driver and drive the USB traffic directly using USBFS. The tool will attempt to detach qcserial from the device, in case it's already attached, so no changes are needed in the kernel or system configuration. Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
24 lines
695 B
C
24 lines
695 B
C
#ifndef __QDL_H__
|
|
#define __QDL_H__
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include "patch.h"
|
|
#include "program.h"
|
|
#include <libxml/tree.h>
|
|
|
|
struct qdl_device;
|
|
|
|
int qdl_read(struct qdl_device *qdl, void *buf, size_t len, unsigned int timeout);
|
|
int qdl_write(struct qdl_device *qdl, const void *buf, size_t len, bool eot);
|
|
|
|
int firehose_run(struct qdl_device *qdl, const char *incdir, const char *storage);
|
|
int sahara_run(struct qdl_device *qdl, char *prog_mbn);
|
|
void print_hex_dump(const char *prefix, const void *buf, size_t len);
|
|
unsigned attr_as_unsigned(xmlNode *node, const char *attr, int *errors);
|
|
const char *attr_as_string(xmlNode *node, const char *attr, int *errors);
|
|
|
|
extern bool qdl_debug;
|
|
|
|
#endif
|