blob: 33fb827fe414d0dea167a9e149d60e930d3d64ec [file] [log] [blame]
Lots of docs to follow...
KERNEL BUG ON LINUX
-------------------
Linux 2.6.16 is generally speaking required to use any MTP
device under USB 2.0. This is because the EHCI driver
previously did not support zero-length writes to endpoints.
It should work in most cases however, or if you connect it
to an UHCI/OHCI port instead (yielding lower speed). But
please just use a recent kernel.
RELATION TO LIBPTP2
-------------------
Parts of libptp2 are copied (and modified) from version 1.1.0:
ptp-pack.c
ptp-pack.h
ptp.c
ptp.h
These are just copies of the same files from libptp2.
In order to avoid clashes with the libptp2 endianness scripts
we have named libptp-endian.h and libptp-stdint.h the
same way as in libptp2, though they are created by libmtp
autoconfigure scripts.
We will try to track libptp2 and fold changes back into
libmtp.
TODO: check if the following still holds! (Linus)
I have changed the config script slightly for the le64atoh function
in libptp-endian.h. This is required for OS X on PowerPC (not sure why).
I've just cast the bytes to uint64_t to avoid shifting wrongly.