Allow toggle of MTP debug
Via command line in TWRP: twrp set tw_mtp_debug 1 This will enable debugging for MTP. You will need to disable and re-enable MTP in order to see the debug logging. Change-Id: Ia7bb0c584e10a4322b65ecf80a67ed7ee836b38e
This commit is contained in:
+14
-9
@@ -21,20 +21,20 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#define MTP_DEBUG_BUFFER_SIZE 2048
|
||||
//#define MTP_DEBUG 1
|
||||
static int debug_enabled = 0;
|
||||
|
||||
extern "C" void mtpdebug(const char *fmt, ...)
|
||||
{
|
||||
#ifdef MTP_DEBUG
|
||||
char buf[MTP_DEBUG_BUFFER_SIZE]; // We're going to limit a single request to 512 bytes
|
||||
if (debug_enabled) {
|
||||
char buf[MTP_DEBUG_BUFFER_SIZE]; // We're going to limit a single request to 512 bytes
|
||||
|
||||
va_list ap;
|
||||
va_start(ap, fmt);
|
||||
vsnprintf(buf, MTP_DEBUG_BUFFER_SIZE, fmt, ap);
|
||||
va_end(ap);
|
||||
va_list ap;
|
||||
va_start(ap, fmt);
|
||||
vsnprintf(buf, MTP_DEBUG_BUFFER_SIZE, fmt, ap);
|
||||
va_end(ap);
|
||||
|
||||
fputs(buf, stdout);
|
||||
#endif
|
||||
fputs(buf, stdout);
|
||||
}
|
||||
}
|
||||
|
||||
struct CodeEntry {
|
||||
@@ -417,3 +417,8 @@ const char* MtpDebug::getDevicePropCodeName(MtpPropertyCode code) {
|
||||
return "NONE";
|
||||
return getCodeName(code, sDevicePropCodes);
|
||||
}
|
||||
|
||||
void MtpDebug::enableDebug(void) {
|
||||
debug_enabled = 1;
|
||||
MTPD("MTP debug logging enabled\n");
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@ public:
|
||||
static const char* getFormatCodeName(MtpObjectFormat code);
|
||||
static const char* getObjectPropCodeName(MtpPropertyCode code);
|
||||
static const char* getDevicePropCodeName(MtpPropertyCode code);
|
||||
static void enableDebug();
|
||||
};
|
||||
|
||||
|
||||
|
||||
+3
-1
@@ -68,7 +68,9 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
#endif //def TWRPMTP
|
||||
|
||||
twrpMtp::twrpMtp() {
|
||||
twrpMtp::twrpMtp(int debug_enabled = 0) {
|
||||
if (debug_enabled)
|
||||
MtpDebug::enableDebug();
|
||||
mtpstorages = new storages;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@
|
||||
|
||||
class twrpMtp {
|
||||
public:
|
||||
twrpMtp();
|
||||
twrpMtp(int debug_enabled /* = 0 */);
|
||||
pthread_t runserver(void);
|
||||
void addStorage(std::string display, std::string path, int mtpid);
|
||||
private:
|
||||
|
||||
@@ -2171,7 +2171,10 @@ bool TWPartitionManager::Enable_MTP(void) {
|
||||
TWFunc::write_file("/sys/class/android_usb/android0/idProduct", productstr);
|
||||
property_set("sys.usb.config", "mtp,adb");
|
||||
std::vector<TWPartition*>::iterator iter;
|
||||
twrpMtp *mtp = new twrpMtp();
|
||||
/* To enable MTP debug, use the twrp command line feature to
|
||||
* twrp set tw_mtp_debug 1
|
||||
*/
|
||||
twrpMtp *mtp = new twrpMtp(DataManager::GetIntValue("tw_mtp_debug"));
|
||||
for (iter = Partitions.begin(); iter != Partitions.end(); iter++) {
|
||||
if ((*iter)->Is_Storage && (*iter)->Is_Present && (*iter)->Mount(false)) {
|
||||
printf("twrp mtpid: %d\n", (*iter)->mtpid);
|
||||
|
||||
Reference in New Issue
Block a user