History log of /frameworks/av/media/mtp/MtpFfsHandle.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5410756e75fb7567540f13d3813f42f4ac3838a0 15-May-2017 Jerry Zhang <zhangjerry@google.com> Fix file transfer corner cases.

Fix zero packet read/write in corner cases
with initial read/writes. This affects transfers
of 16372 bytes to the device and transfers of
1012 bytes (or packet size - 12) from the device.

Test: Transfer various length files
Bug: 37175601
Change-Id: Ic1281e8757d1a33d78c66d2c57319b5ee38d6a46
/frameworks/av/media/mtp/MtpFfsHandle.h
0475d911fcc1e6e1b4f49626f59a0a07038590fa 03-Apr-2017 Jerry Zhang <zhangjerry@google.com> Add timeout to lock in MtpServer configure

In situations where MtpServer is in a bad state, this will prevent
the configure call from blocking indefinitely, which will prevent
a few visible problems and allow the state to recover on the next
config change.

Bug: 34873000
Test: Connect to AA test sled
Change-Id: I5daf9cfcec69c967bde6bf3f6fd90e1c434e18bb
/frameworks/av/media/mtp/MtpFfsHandle.h
b4f54266042f0553b41409a3d1f0542b684c2129 03-Feb-2017 Jerry Zhang <zhangjerry@google.com> Retry allocations in case of ENODEV

Unlike the read() and write() calls, the ioctl() call
does not wait for endpoints to be enabled, which is
problematic if ioctls() are the first calls on the
usb connection, since they may be called before the
endpoints are set up. We'll have to retry if this
causes them to fail.

Bug: 34822471
Test: Change configs to mtp and ptp
Change-Id: I89610b9614c33f0b22535cc68cd0c9b502cb55c9
/frameworks/av/media/mtp/MtpFfsHandle.h
cc9d0fdd302cf997607055e0a8b5559509cba766 27-Jan-2017 Jerry Zhang <zhangjerry@google.com> Make Mtp FFS allocations per session rather than per file

Workloads that send a large number of small files could
repeatedly allocate and free the buffer, causing fragmentation
and eventually running out of allocable memory. Instead
have the allocation be once per MTP session, and retry
with smaller buffers if it fails initially.

Bug: 34741015
Bug: 34822471
Test: Transfer files via MTP
Change-Id: I775376076d3a0c26765b211100830ea0c08450ef
/frameworks/av/media/mtp/MtpFfsHandle.h
487be61fb0a38873aec1d12da92437fba5e728f2 24-Oct-2016 Jerry Zhang <zhangjerry@google.com> Refactored Mtp driver interface into multiple classes.

Added new interface for FunctionFS. This allows most of
the driver code to exist in userspace. The driver will
automatically use FunctionFS if it is enabled for that
device, otherwise it will default to the kernel driver.

The intention is to eventually deprecate the kernel driver.

Bug: 30976142
Change-Id: I36b8d16ca254fddd995b3ea1bd3d37b0ff4a28f7
Test: New automated tests for MtpFfsHandle, AsyncIO.
Manual testing on each device.
/frameworks/av/media/mtp/MtpFfsHandle.h