Commit Graph

360 Commits

Author SHA1 Message Date
Colin Cross 454f35fd75 am 48131449: am 858cd9db: am b2b06de5: Merge "statically link adb and fastboot against libc++"
* commit '48131449d6258e369e5afeb6c665cc6a343ca297':
  statically link adb and fastboot against libc++
2015-04-20 18:56:32 +00:00
Colin Cross 55bf5f0017 statically link adb and fastboot against libc++
libc++.so is not widely available on the host, so we compile against
one built as part of the platform.  This causes problems for adb and
fastboot, which are distributed through a number of channels - the
sdk, distro packages, downloaded from the build server, or manually
copied.  Instead of forcing all users to handle libc++.so too,
statically link against libc++.

Change-Id: I51b75258653a23558c8b598802005f6c1166a439
2015-04-16 17:09:46 -07:00
Mohamad Ayyash 94cd52391c am a15881a9: am ed926596: am 6900d34e: Merge "Add verbose param to sparse_file_import_auto"
* commit 'a15881a9e9d2951eda7a7a85fbaadd93bfb9da9b':
  Add verbose param to sparse_file_import_auto
2015-04-01 18:04:50 +00:00
Mohamad Ayyash 80cc1f6864 Add verbose param to sparse_file_import_auto
Change-Id: I0c5607f7aa5e964abc2031bbe71ff5c6e6ef56cc
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
2015-03-31 12:09:37 -07:00
Elliott Hughes ac6bc5f45a am 369aa9e9: am 99938804: Merge "fastboot/sparse: propagate error code"
* commit '369aa9e90d741545a7a639f7f0f4cd265faf252e':
  fastboot/sparse: propagate error code
2015-03-19 19:26:19 +00:00
Elliott Hughes 5b40fcbd1d am a782173a: am 261a82a6: Merge "Switch fastboot to ExtractEntryToFile."
* commit 'a782173a26f192fe9f51e1ee53e8d329501df409':
  Switch fastboot to ExtractEntryToFile.
2015-03-19 19:17:40 +00:00
Elliott Hughes 99938804a5 Merge "fastboot/sparse: propagate error code" 2015-03-19 19:05:24 +00:00
Elliott Hughes a82c89da1f Switch fastboot to ExtractEntryToFile.
Rather than malloc, ExtractToMemory, and write.

Also fix the tmpfile error check (tmpfile returns NULL on failure),
and improve error reporting.

Bug: 19765860
Change-Id: I236923e883128083377607f1519bb2e27b8f03f8
2015-03-19 11:44:32 -07:00
Elliott Hughes ddaabcf22f am 41233fcc: am 294d3f74: Merge "Remove a prehistoric fastboot hack."
* commit '41233fcc35ce8c5efa06348f013c31072505229b':
  Remove a prehistoric fastboot hack.
2015-03-19 18:27:08 +00:00
Elliott Hughes 787ed98d68 am f99e47a0: am 445e5ede: Merge "Switch fastboot to libziparchive."
* commit 'f99e47a0a0604aef2f3b1d07953d5f220662353c':
  Switch fastboot to libziparchive.
2015-03-19 17:39:57 +00:00
Elliott Hughes 7c6d884e2b Remove a prehistoric fastboot hack.
If you don't have android-info.txt in your zip file, you're probably
not using a current fastboot binary anyway.

Change-Id: Ic721dc5f068f704c6792493d1e99f05f907678ba
2015-03-19 10:30:53 -07:00
Elliott Hughes b7ca152be0 am 8e70f63a: am 57bf3109: Merge "Prepare for switching to libziparchive."
* commit '8e70f63aba8e14f3b40b2a0769522505c1019c33':
  Prepare for switching to libziparchive.
2015-03-19 16:01:06 +00:00
Elliott Hughes d30ad8a2ee Switch fastboot to libziparchive.
Bug: 19765860
Change-Id: I83ea56e3b317893995d7106852b65584f99c0e64
2015-03-18 23:23:11 -07:00
Elliott Hughes 253c18d2fb Prepare for switching to libziparchive.
Bug: 19765860
Change-Id: I58249d28fbc4975428d0dcac5107d1994c35676c
2015-03-18 22:47:54 -07:00
Jeremy Compostella 9f0d6bdd66 fastboot/sparse: propagate error code
sparse_file_write_block calls functions that might failed.  This patch
makes sparse_file_write_block catch the error code and propagate it.

Without this patch, fastboot crashes on a segmentation fault if
usb_write() fail during a sparse file image flashing.

Change-Id: If9c0e8dfac8fa380628a2504e13abe8cf7d62726
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
2015-03-01 11:54:02 +01:00
Elliott Hughes 7f4e0138ab am 0beef09b: am 58b81bf8: am a82f2b25: Merge "Support "fastboot reboot bootloader"."
* commit '0beef09b1c10ca7d1699078f7b9f2e0912854160':
  Support "fastboot reboot bootloader".
2015-02-25 18:57:43 +00:00
Elliott Hughes ca85df0662 Support "fastboot reboot bootloader".
This matches the more general adb syntax, though the fastboot
protocol doesn't support rebooting into the recovery image.

Change-Id: I6d93d4c63d4a9b81c71e681e7a7bf76867fba019
2015-02-25 10:02:00 -08:00
Elliott Hughes 6c8de1b1be resolved conflicts for merge of c162dbb2 to master
Change-Id: If7ffc80560a807cb8e4338d42bec454f567fd9ad
2014-12-10 13:53:17 -08:00
Yabin Cui 71a968602d kill libunz
Bug: 18571533
Change-Id: I4214f9236f80629152d969a6ee9fce489079cefa
2014-12-09 22:24:07 -08:00
Christopher Ferris 67a7a4ae27 Fix adb/fastboot windows compilations.
Many of the windows files where not including stdlib.h even though they
are using malloc/free calls.

(cherry-pick of ae7bf0959bd3f79afbf365e41f015ed1c304afdc.)

Change-Id: If6959df9909d9d9928e9f4a2a96018166361cf3c
2014-12-09 16:03:29 -08:00
Elliott Hughes 58cd6d3573 am 7da97265: am ab0d5425: Merge "fastboot: Support USB 3.x SuperSpeed devices on Linux"
* commit '7da97265e596fc1bb112a4b2aa939057fef18fcb':
  fastboot: Support USB 3.x SuperSpeed devices on Linux
2014-12-09 23:44:45 +00:00
Elliott Hughes 7da97265e5 am ab0d5425: Merge "fastboot: Support USB 3.x SuperSpeed devices on Linux"
* commit 'ab0d542506b5fdbcc431ba2606248471d22322ba':
  fastboot: Support USB 3.x SuperSpeed devices on Linux
2014-12-09 14:40:58 +00:00
Jack Pham 1c02213e89 fastboot: Support USB 3.x SuperSpeed devices on Linux
When enumerating USB 3.x devices, an extra 6-byte SuperSpeed
companion descriptor follows each standard endpoint descriptor.
The loop parsing the descriptors will stumble if they're not
handled. Since they're not needed once the bulk endpoints are
identified, we can simply skip over them.

Change-Id: I7e73bcf9135f23c3059cd7c55b432557b28cb6ef
2014-12-05 12:11:20 -08:00
Badhri Jagan Sridharan c8e84fe7d1 am ad32ebec: am 97133621: Merge "system: core: fastboot: Increase USB protocol buffer size to 1024"
* commit 'ad32ebecc9a0d781f66f39f467be0b30cc05f65b':
  system: core: fastboot: Increase USB protocol buffer size to 1024
2014-12-05 00:15:03 +00:00
Badhri Jagan Sridharan ad32ebecc9 am 97133621: Merge "system: core: fastboot: Increase USB protocol buffer size to 1024"
* commit '971336213a32e5f3841bc22413632e0108f1c9e2':
  system: core: fastboot: Increase USB protocol buffer size to 1024
2014-12-04 22:38:14 +00:00
Badhri Jagan Sridharan 971336213a Merge "system: core: fastboot: Increase USB protocol buffer size to 1024" 2014-12-04 18:58:46 +00:00
Stephen Hines 622a75d5ab am fafbd329: am ba1552bd: Merge "Clarify the strcmp() with the empty string."
* commit 'fafbd329cb1685dc91172230a0671175e80ca8b3':
  Clarify the strcmp() with the empty string.
2014-11-27 14:01:26 +00:00
Stephen Hines d97d6d524a am 8d49c8b0: am f66486ef: Merge "Fix incorrect path name check."
* commit '8d49c8b0bfdc7bed855acec603bacc355b5bcb8c':
  Fix incorrect path name check.
2014-11-27 14:01:25 +00:00
Stephen Hines fafbd329cb am ba1552bd: Merge "Clarify the strcmp() with the empty string."
* commit 'ba1552bd2438a8a47779ed3d05d5ce15bfb5741c':
  Clarify the strcmp() with the empty string.
2014-11-27 13:54:31 +00:00
Stephen Hines 8d49c8b0bf am f66486ef: Merge "Fix incorrect path name check."
* commit 'f66486ef09bfc53da65ca6b4137c47d583f31356':
  Fix incorrect path name check.
2014-11-27 13:54:24 +00:00
Stephen Hines 04f895314d Clarify the strcmp() with the empty string.
Change-Id: Ie246b3c2de3f19b95693f634b0ebd46bdcf3962b
2014-11-26 14:54:43 -08:00
Stephen Hines f66486ef09 Merge "Fix incorrect path name check." 2014-11-26 22:32:23 +00:00
Stephen Hines 60f21a7f61 Fix incorrect path name check.
This was caught by clang 3.6's -Wpointer-bool-conversion. The device_path
field is a char[256], and thus never NULL. The intention for this code was
to check whether or not there is a named path at all. Checking whether this
is an empty string matches the original intent.

Change-Id: I5ccedc03167e6a457e472089de26130aff7f96e3
2014-11-26 14:30:01 -08:00
Elliott Hughes 0e6d8a3ab4 am 87fdfc71: am cb321921: Merge "fastboot: add parameter for unbuffered stderr/stdout"
* commit '87fdfc718e9eccdd9c40e7bca7a48af40b6bf732':
  fastboot: add parameter for unbuffered stderr/stdout
2014-11-25 19:56:53 +00:00
Elliott Hughes 87fdfc718e am cb321921: Merge "fastboot: add parameter for unbuffered stderr/stdout"
* commit 'cb321921fe04f6ccaeb56c4bf3e8965ee4764738':
  fastboot: add parameter for unbuffered stderr/stdout
2014-11-25 18:52:01 +00:00
Florian Bäuerle 27ded4832d fastboot: add parameter for unbuffered stderr/stdout
This is useful for writing Windows GUIs that want to parse the output of
fastboot before it exits.

Change-Id: Ic0171fe379fc4db7b65b1501e5f2e771ac7c62c4
Signed-off-by: Florian Bäuerle <florian.bae@gmail.com>
2014-11-24 18:12:22 +01:00
Elliott Hughes 224c3735ee am 542324f4: am 0750f786: Merge "Remove explict use of ASCII encoding"
* commit '542324f4b48897d40adb010afc440261c599633d':
  Remove explict use of ASCII encoding
2014-11-21 22:32:42 +00:00
Elliott Hughes 542324f4b4 am 0750f786: Merge "Remove explict use of ASCII encoding"
* commit '0750f78659758352490e599d057a39dc44e93340':
  Remove explict use of ASCII encoding
2014-11-21 19:08:15 +00:00
Al Sutton 2a4b5f9e80 Remove explict use of ASCII encoding
Replace the use of CFStringGetCString with kCFStringEncodingASCII specified
with CFStringGetFileSystemRepresentation which will ensure the correct
character encoding is used to conver the CFString into a NULL terminated
char array suitable for use with POSIX APIs.

Change-Id: Ibab1dc05c4f4db8604d329a493b4241992b8e69d
2014-11-21 15:56:59 +00:00
Elliott Hughes b99dbe9aaf am 4c2aec09: am aa3e17e1: Merge "Return path including executable instead of without"
* commit '4c2aec09cf2da437f3995ff4cac87e4c20d1d4b0':
  Return path including executable instead of without
2014-11-20 18:47:24 +00:00
Elliott Hughes 4c2aec09cf am aa3e17e1: Merge "Return path including executable instead of without"
* commit 'aa3e17e1b685218cddeb7a05e68ff1721a322147':
  Return path including executable instead of without
2014-11-20 18:43:12 +00:00
Al Sutton 26b53bb75e Return path including executable instead of without
The previous implementation returned the path the executable was in instead
of returning the path including the executable (i.e. it returned ...bin
instead of ...bin/executable). This is not what the original methods did
and caused the process forking of adb to fail.

This patch corrects the implementation.

Change-Id: Ib58497cab35706041f170c1bc97c31fd5d965f90
2014-11-20 13:33:57 +00:00
Elliott Hughes 6309cb35f7 am 2097e9a1: am 20860a28: Merge "Fix building on modern versions of Xcode and OS X."
* commit '2097e9a1491e850545cd0c38522c22dafd2cf6af':
  Fix building on modern versions of Xcode and OS X.
2014-11-19 22:00:18 +00:00
Elliott Hughes 2097e9a149 am 20860a28: Merge "Fix building on modern versions of Xcode and OS X."
* commit '20860a28c5be013da111cb794c92dae02aa30089':
  Fix building on modern versions of Xcode and OS X.
2014-11-19 21:55:28 +00:00
Al Sutton f456d47c50 Fix building on modern versions of Xcode and OS X.
Recent versions of XCode fail to compile the adb and fastboot binaries due to
two functions being deprecated in 10.9 (GetCurrentProcess and
ProcessInformationCopyDictionary), and the use of -Werrror.

This patch replaces the method implementations which use calls to methods
deprecated in the 10.9 SDK with versions which only call non-deprecated methods.

Change-Id: I855bf26aff45093ca9022924f3ecd1b80f2305a8
2014-11-19 19:50:48 +00:00
Channagoud Kadabi b2117739ed system: core: fastboot: Increase USB protocol buffer size to 1024
With USB3.0 SS support the max packet size supported by USB protocol
is 1024 bytes. When connected to a USB device in SuperSpeed, if only
512 bytes are sent at a time the device would interpret each transfer
as a short packet and slows down overall throughput. To accommodate
for SuperSpeed USB bulk endpoints, increase the buffer size to 1024.

Change-Id: I4f447fe38045bc0008e2d6dd3f36c2d6819d6c15
2014-11-07 12:01:33 -08:00
Christopher Ferris 8e8ae85754 am ae7bf095: Fix adb/fastboot windows compilations.
* commit 'ae7bf0959bd3f79afbf365e41f015ed1c304afdc':
  Fix adb/fastboot windows compilations.
2014-11-07 03:49:08 +00:00
Christopher Ferris ae7bf0959b Fix adb/fastboot windows compilations.
Many of the windows files where not including stdlib.h even though they
are using malloc/free calls.

Change-Id: If6959df9909d9d9928e9f4a2a96018166361cf3c
2014-11-06 14:34:24 -08:00
Stephen Hines 82921192f4 am f9d61a00: am 4acabfee: am 64f44b84: Merge "Remove obsolete reference to ddk; Fixes for -Werror" into lmp-dev
* commit 'f9d61a007426f47337f9842930b15c2160281c58':
  Remove obsolete reference to ddk; Fixes for -Werror
2014-10-02 13:52:59 +00:00
Stephen Hines f9d61a0074 am 4acabfee: am 64f44b84: Merge "Remove obsolete reference to ddk; Fixes for -Werror" into lmp-dev
* commit '4acabfee9e00962be02d06a6771da2e7ade20859':
  Remove obsolete reference to ddk; Fixes for -Werror
2014-10-02 13:37:26 +00:00
Stephen Hines 1e95e0b19c am 64f44b84: Merge "Remove obsolete reference to ddk; Fixes for -Werror" into lmp-dev
* commit '64f44b8444dabd69cf391d42e10d44e8e926a79d':
  Remove obsolete reference to ddk; Fixes for -Werror
2014-10-01 23:21:09 +00:00
Andrew Hsieh b75d6f1429 Remove obsolete reference to ddk; Fixes for -Werror
Bug: 14416410

1. The new mingw-w64 toolchain x86_64-w64-mingw32-4.8 has ddk
   in x86_64-w64-mingw32/include/ddk
2. Add -Wno-error=cpp to suppress a warning that turns into error
   thanks to -Werror:

      Please include winsock2.h before windows.h
3. Cast GetLastError() return type DWORD to "int"
4. Include direct.h for _mkdir
5. Include stdint.h for uint8_t on Windows

Change-Id: I4bec0587f6573692f08c760da6c98ae551b8b5eb
2014-09-30 02:24:07 -07:00
Daniel Rosenberg aa3ed7844a am 81b857f3: Merge "fastboot: Remove tos from flashall" into lmp-dev
* commit '81b857f3a21f3ae96a5ec72e54982fe30278049f':
  fastboot: Remove tos from flashall
2014-09-17 14:12:09 +00:00
Daniel Rosenberg 4c13769dba am 24e834ab: am 81b857f3: Merge "fastboot: Remove tos from flashall" into lmp-dev
* commit '24e834ab6037cee0d3e8569d5fd45695f86865bd':
  fastboot: Remove tos from flashall
2014-09-16 21:46:37 +00:00
Daniel Rosenberg 24e834ab60 am 81b857f3: Merge "fastboot: Remove tos from flashall" into lmp-dev
* commit '81b857f3a21f3ae96a5ec72e54982fe30278049f':
  fastboot: Remove tos from flashall
2014-09-16 21:34:45 +00:00
Daniel Rosenberg 015d73ff4e fastboot: Remove tos from flashall
bug: 17498561
Change-Id: I0190c1a5ac635375404799c040e4be523fa29622
Signed-off-by: Daniel Rosenberg <drosen@google.com>
2014-09-15 13:44:07 -07:00
Jeremy Compostella 310db68903 am a42adff9: fastboot: add the support of the second stage image [DO NOT MERGE]
* commit 'a42adff905600219cbf5ef217d2b46670225aca3':
  fastboot: add the support of the second stage image [DO NOT MERGE]
2014-08-16 05:17:12 +00:00
Jeremy Compostella a42adff905 fastboot: add the support of the second stage image [DO NOT MERGE]
The AOSP bootimage format allows the use of a second stage image
however the fastboot boot and flash:row commands do not allow the
"secondstage" optional argument.  This patch adds the support of this
argument for both commands.

Change-Id: I00403a95d7460a00233841ba0fe0e8a69d78c7b4
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
2014-08-15 21:21:09 -07:00
Ying Wang 0c3d98b02b am 87ad7cdc: am e1ba39aa: Merge "Fix 64-bit host build."
* commit '87ad7cdc590aa4033f0b7ae23d83e2fbc119d07a':
  Fix 64-bit host build.
2014-08-14 23:20:06 +00:00
Ying Wang 42a809ba06 Fix 64-bit host build.
Bug: 13751317
Change-Id: Ibf62935b7d12a55ffc57242a26a2581b52796847
2014-08-14 15:52:54 -07:00
Tim Murray b2e13ae4fe am 3a5f3db2: am c894ced1: Merge "Fix fastboot for Darwin."
* commit '3a5f3db2aa5324518eb71c69cd1fb3e2125cbd43':
  Fix fastboot for Darwin.
2014-07-25 02:38:02 +00:00
Tim Murray bd87944805 Fix fastboot for Darwin.
bug 16172793

Change-Id: Ib58446effc13a6e465d176da141b025d36841b8f
2014-07-24 19:27:37 -07:00
Patrick Tjin 4415e2a269 Scan all descriptors when checking for fastboot [DO NOT MERGE]
For Linux, the USB code was only looking at the first
descriptor when searching for the fastboot interface
which caused some devices to not be found.

Also clarify some code by using the actual USB structures
instead of void or char pointers.

(Cherry Picked from aac89db8a5)
Change-Id: I9e4871c4d477ac10ba75bb17a955f176809af289
Signed-off-by: Patrick Tjin <pattjin@google.com>
2014-07-17 10:07:19 -07:00
Patrick Tjin 3a07ce8c04 am 7793a109: am 5328f671: Merge "Scan all descriptors when checking for fastboot"
* commit '7793a10993a357db6a963760737193992055a690':
  Scan all descriptors when checking for fastboot
2014-07-17 12:59:43 +00:00
Patrick Tjin aac89db8a5 Scan all descriptors when checking for fastboot
For Linux, the USB code was only looking at the first
descriptor when searching for the fastboot interface
which caused some devices to not be found.

Also clarify some code by using the actual USB structures
instead of void or char pointers.

Change-Id: I9e4871c4d477ac10ba75bb17a955f176809af289
Signed-off-by: Patrick Tjin <pattjin@google.com>
2014-07-11 14:15:30 -07:00
Markus Mayer c335a3500c Fix typo in fs.h
fs.h defined _FH_H_ rather than _FS_H_

Change-Id: I710ef53e88d3601e486fde9957f6d022871d9602
Signed-off-by: Markus Mayer <code@mmayer.net>
2014-07-09 15:27:53 -07:00
Elliott Hughes 67db9d5f73 am b2ac4243: am f76c8fe6: am 328c3ef6: Merge "Fix typo in fs.h"
* commit 'b2ac4243000057baf1656c93197150ba7665137e':
  Fix typo in fs.h
2014-07-10 00:49:53 +00:00
JP Abgrall fab6ebafa6 am 47050442: am 31132182: am 07703339: Merge "Wait for device to disappear after "fastboot reboot"."
* commit '4705044243225ffde88910154485a84c27a33709':
  Wait for device to disappear after "fastboot reboot".
2014-06-25 00:28:50 +00:00
Daniel Rosenberg f530c93c4a Added support for vendor partition and image
Modified fastboot to flash vendor.img as well. Moved symlink
for /vendor to occur after mounting partitions. Changed mount
to also create the mount point.

Change-Id: I78e1ba24e6bb8b4af96a67ee0569af579439e682
Signed-off-by: Daniel Rosenberg <drosen@google.com>
2014-06-24 21:51:31 +00:00
Mark Wachsler ec25e7bc4b Wait for device to disappear after "fastboot reboot".
This is a follow-up to commit 157b00171a.
After "fastboot reboot", "fastboot devices" was still showing the device as
connected even though it was starting to reboot; now "fastboot reboot" will
wait until the device has disconnected.

The wait timeout is 3 seconds.

Change-Id: I8066741f0be91e53f3e3f5bc968bc1b9de31db05
2014-06-24 22:34:34 +00:00
JP Abgrall 188fdd1c0f Merge "fastboot: Allow searching for needed dynamic libs in '.' (F2FS)" 2014-06-19 20:37:59 +00:00
JP Abgrall 436abebf8c fastboot: Allow searching for needed dynamic libs in '.' (F2FS)
Currently the default rpath includes $ORIGIN/../lib
So we throw in '.' which should help distributions of fastboot.

readelf -d $(which fastboot)|grep RPATH
 0x0000000f (RPATH) Library rpath: [$ORIGIN/../lib:.]

Bug: 15731906
Change-Id: I2f4345d178e5b3c87f6f159faf105ae30f3b52eb
Signed-off-by: JP Abgrall <jpa@google.com>
2014-06-19 14:47:19 -07:00
Ying Wang 6b048ce839 Store libf2fs_fmt_host_dyn on the build server.
It will be dynamically loaded by fastboot.

Bug: 15731906
Change-Id: Iff6f2b745b4ffd2c5fe343160b3efb8dcd5702fa
2014-06-19 14:44:23 -07:00
JP Abgrall 64c0ff21e4 fastboot: correctly set dependency on f2fs dynamic lib
In the past it would incorrectly also link against the dlopen()'d lib.

Now it clearly does not care about it.

ldd $(which fastboot)
        linux-gate.so.1 =>  (0xf7735000)
        libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf76d9000)
        libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf75f4000)
        libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf75c7000)
        libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf75a9000)
        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf73ff000)
        /lib/ld-linux.so.2 (0xf7736000)

Bug: 15717498
Change-Id: I5465e97a445b17f5493a1f590e181ef98a382451
Signed-off-by: JP Abgrall <jpa@google.com>
2014-06-18 11:13:05 -07:00
Torne (Richard Coles) 11d8ac2afb Only try and use f2fs on linux.
F2FS was already disabled on windows, but the library doesn't build for
mac either, so only try and use it on Linux hosts.

Change-Id: I8bacfa4c01c9ee13123aef6d05d17b3f9094c765
2014-06-18 13:48:38 +01:00
JP Abgrall 6bd72beff6 fastboot: fix windows sdk build (don't do f2fs dyn load on windows)
Only do f2fs dynamic loading on linux.
Adds a stub for windows builds.

Change-Id: I7bbaaa1b2ff5992709d904b7ace40ae263d32922
Signed-off-by: JP Abgrall <jpa@google.com>
2014-06-17 23:43:18 -07:00
JP Abgrall 1235158c29 F2FS support for fastboot format and fsmgr
- Enables fsck.f2fs for partitions with type F2FS.
- Adds support for f2fs as format fs-type.
- f2fs is optional and support is dlopen()d when needed.

Needs changes in
  system/extras/f2fs_utils
  external/f2fs-tools

Change-Id: I8d141a0d4d14df9fe84d3b131484e9696fcd8870
Signed-off-by: JP Abgrall <jpa@google.com>
2014-06-17 17:01:14 -07:00
Ying Wang cf86e2f85d Fix host 64-bit build.
Bug: 13751317
Change-Id: Ib42d24408d053bacc24142ed18fc5f3181d2345b
2014-05-16 09:36:17 -07:00
Mark Salyzyn 5957c1ffe7 fastboot: turn on -Werror
- Deal with a missing initializer issue
- Deal with some -Wunused issues
- Deal with some signed/unsigned issues
- switch to usleep from sleep to facilitate win_sdk compile

Change-Id: I64e32a5b0782aeed9582f489e866173c4df1afbf
2014-05-14 08:33:56 -07:00
Alexander Levitskiy 8d7ddb35d5 Revert "System: Fastboot: warning fixit, misc bugs and cleanup."
This reverts commit 782111b3bc.

Change-Id: Ib66400dfaeef7f01e6461a57b9f09be08de2f1fe
2014-05-07 23:31:59 +00:00
Sasha Levitskiy 782111b3bc System: Fastboot: warning fixit, misc bugs and cleanup.
Change-Id: Ib8517a852977962de3f05c879ba7dce89bcef644
Signed-off-by: Sasha Levitskiy <sanek@google.com>
2014-05-07 11:43:12 -07:00
JP Abgrall 7e85974fc2 fastboot: support for overriding format fs-type and size
This changes allows overriding the fs-type and size that
are normally returned by the booloader.

This is in preparation for supporting other FSes.

Change-Id: I8d141a0d4d14df9fe84d3b131484e9696fcd8870
Signed-off-by: JP Abgrall <jpa@google.com>
2014-05-06 15:14:15 -07:00
Daniel Rosenberg 73a4ad288f fastboot: Added tos as an optional image
Change-Id: Ibff1f74ee4a949501ceae0b897f896067f022763
Signed-off-by: Daniel Rosenberg <drosen@google.com>
2014-05-06 12:28:41 -07:00
Daniel Rosenberg 82280594ef fastboot: Fixed optional entries
Previously, if an image was listed as optional, but was not found,
flashall would fail. Now it will proceed if optional images are not
present.

Change-Id: Ic82595cf0cd6ddce4c676de590f03f1a95f32040
Signed-off-by: Daniel Rosenberg <drosen@google.com>
2014-05-06 12:28:39 -07:00
Dmitry Grinberg e6f3e9bd26 fastboot: allow format on devices with small buffers
Formatting large partitions on devices with small transfer buffers did
not work before since format used a strange path through the code to
send data. It now uses the normal path. Also cleaned up a bit. FS
code now lives in a separate file and the custom path for format is
gone.

Change-Id: If4e01cabc2e250b7c02ca7ce8c268e51d49e1529
2014-05-06 12:28:37 -07:00
JP Abgrall 8e26b25222 Merge "Fastboot: fix fastboot timeout issue of Windows host side" 2014-05-06 02:24:19 +00:00
Mohamad Ayyash 29fd7b1f4f fastboot: Make tags_offset a command line option.
cherry picked from commit bdf513c5f2

Change-Id: I4ceca528f88cc8ede5742f8a67bec972e41eebe7
2014-05-01 20:31:29 +00:00
Jiebing Li bbb7981e49 Fastboot: fix fastboot timeout issue of Windows host side
Normally fastboot follows the procedure that host sends a command
to device and device sends back response after the command
is executed.

But sometimes device spends too long time to execute the command
so that timeout error occurs before host receives the response.

This patch fixes the issue by aligning with the solution of ADB.
ADB commit id: 1c4b760a5d

Change-Id: I50e6bf428ea38219b64cca6ab82db22af28e0264
Author: Jiebing Li <jiebing.li@intel.com>
Signed-off-by: Bo Huang <bo.b.huang@intel.com>
2014-04-25 14:15:08 +08:00
The Android Open Source Project 66ed50af68 Merge commit '536dea9d61a032e64bbe584a97463c6638ead009' into HEAD
Change-Id: I5c469a4b738629d99d721cad7ded02d6c35f56d5
2013-11-22 13:44:43 -08:00
Elliott Hughes 14e28d39f7 Fix a bunch of small system/core bugs.
Missing frees in:
  adb/file_sync_client.c
  fastboot/fastboot.c
  libsparse/output_file.c

Missing closedirs in:
  adb/file_sync_service.c
  cpio/mkbootfs.c
  libcutils/dir_hash.c

Potential buffer overrun in:
  gpttool/gpttool.c

Incorrect NULL check in:
  libsparse/backed_block.c

Bug: https://code.google.com/p/android/issues/detail?id=61564
Change-Id: If97838a9e73a77aef7f416c31c237ce1fca4ce21
2013-10-29 14:12:46 -07:00
Mark Wachsler 157b00171a Wait for device to disappear after reboot-bootloader.
(Linux only for now) With fastboot reading serial numbers from sysfs, it had
become possible for a fastboot command issued immediately after rebooting
the bootloader to fail, because sysfs still thought the device was online.
To prevent this, after reboot-bootloader we wait for the device to disconnect.

Also made usb_read and usb_write fail immediately if the descriptor has been
closed; this prevents an incorrect error message ("Bad file descriptor")
when errors from fb_getvar are ignored (e.g., by fb_format_supported).

Also removed unused fd param from filter_usb_device, and simplified logic
in usb_write by using do/while instead of a special case for len == 0.

Change-Id: I799b857eab411fd8ad25f5777fc61c685152ea86
2013-10-17 20:06:32 +00:00
jp abgrall e6e5daace5 am edeed28b: am 4a280e3d: Merge "Don\'t use control requests to read device serial numbers."
* commit 'edeed28bd397f863686ba3e5bb7479f881efc657':
  Don't use control requests to read device serial numbers.
2013-09-17 14:17:44 -07:00
Mark Wachsler bd446c76f3 Don't use control requests to read device serial numbers.
Instead of sending control requests to all devices to read their serial
numbers, read the cached strings from sysfs. This fixes two problems:
1) The control requests sometimes timed out, causing devices to show up
as "????????????????", and 2) a control request could mess up devices
which were in the middle of being flashed.

Also enumerate by walking sysfs rather than devs so that we can avoid
opening host controller devices, which can be slow. On a system with 10
EHCI controllers, fastboot devices now takes 7 msec instead of 700 msec.

Change-Id: I2ad2d58b48268d7950bd279fd6a6753dc2f79514
2013-09-16 18:08:07 -04:00
Rom Lemarchand 622810ceff fastboot: add support for sparse images in flashall and update
Change-Id: I66a73b16a988a65fc91fb22a26d11986025089de
Signed-off-by: Rom Lemarchand <romlem@google.com>
2013-07-01 12:42:58 -07:00
Rom Lemarchand c9cce4b981 fastboot: Remove legacy MINGW workarounds
The version of MINGW we compile with has more advanced POSIX support.
Removing legacy MINGW workarounds as those are not needed anymore.

Change-Id: Id5d67176b719db6c3667be6d63c41432e0ba9f30
Signed-off-by: Rom Lemarchand <romlem@google.com>
2013-06-28 17:00:41 -07:00
jp abgrall 88e8f61a9e Revert "fastboot: add preflash command to help with large downloads+flash"
This reverts commit 6f1cd0b2ad.

It causes some devices to fail (b/9581613). Revert for now.

Change-Id: I076158c704c2b4f0459322aa157c19ebd0c4615f
2013-06-26 03:51:29 +00:00
JP Abgrall 6f1cd0b2ad fastboot: add preflash command to help with large downloads+flash
Without the partition name, the bootloader would have to store all
of the data until the next flash command, which potentially wastes
time.
To help the bootloader deal with the data more efficiently, we now
issue a flashing hint ("preflash:%s", partname).
"preflash:" is used to indicate that the following download
should ignore any previous "preflash:%s".

Bug: 6045918
Change-Id: I4e9708f64f28a4781bde14eb3714d36b281ec5be
2013-06-25 11:52:05 -07:00
JP Abgrall 7b8970c577 fastboot: add support for some obscure args.
Some devices use mkbootimg with weird args for which fastboot
only a hardcoded value.

Now fastboot recognizes those args.

Made handling of global vars more consistent.

Bug: 8341331
Change-Id: Ic09f148ccd0249f49935fdc63e517cf8ab2229bc
2013-03-07 17:06:41 -08:00
Colin Cross fa341f5b66 Merge commit '35d5b7e6' into master 2013-01-23 21:20:23 -08:00
Colin Cross c86396eba2 am 5fc4fdc6: am 2447afdb: Merge "fastboot: use better exported api from libext4_utils"
# Via Android Git Automerger (1) and others
* commit '5fc4fdc6a06cfa151d29f751d9d9beb8cb781a6a':
  fastboot: use better exported api from libext4_utils
2013-01-23 20:52:29 -08:00
Colin Cross 81c632e4da fastboot: add errno.h to fix windows build
The removal of extra headers from ext4_utils.h removed an indirect
include of errno.h that breaks building with USE_MINGW=1.

Change-Id: Ic8448db97b5c056a139dc836e1d6f3aaafb917c9
2013-01-23 19:13:43 -08:00
Colin Cross 2aaf5e84f0 fastboot: use better exported api from libext4_utils
Switch fastboot to use an exported api from libext4_utils that
will change less often, and remove some of the implementation
details from fastboot.

Change-Id: I85a10c8f58abe8093d0c781e1a0e100c348ef0d9
2013-01-23 15:43:41 -08:00
Scott Anderson 9bfecb0e34 Add old fastboot_protocol.txt
fastboot_protocol.txt used to live in bootable/bootloader/legacy
which was old, obsolete code.  However, fastboot_protocol.txt is
a useful file and belongs with the fastboot code.

Change-Id: Iea50c3219f9ff9dd0c394fc6028c456fa948ffd9
Signed-off-by: Scott Anderson <saa@android.com>
2012-12-06 09:34:34 -08:00
Kenny Root efb5e3c709 resolved conflicts for merge of 20f5daa8 to master
Change-Id: Ie3e67696d265a56dfa4d089c777506f27783a9a6
2012-10-16 18:00:29 -07:00
Kenny Root 20f5daa865 resolved conflicts for merge of 44f4f8a4 to jb-mr1-dev-plus-aosp
Change-Id: I66988d8e87a8110ca9ab3da19870b80bbaf06eba
2012-10-16 17:51:14 -07:00
Kenny Root b83c09812f Remove HAVE_SELINUX guards
Change-Id: Idef0a784a1d237257ff4135bb1df62ff8a67ded3
2012-10-16 12:34:06 -07:00
Ken Sumrall 656a24cae7 am e17c821e: am 608634a1: am 48f3b576: Merge "Update fastboot to wipe ext4 partitions before flashing" into jb-mr1-dev
* commit 'e17c821e36163695f6d5024a71f8e706bda65fd6':
  Update fastboot to wipe ext4 partitions before flashing
2012-10-03 14:02:38 -07:00
Ken Sumrall 5ee5d389d6 Update fastboot to wipe ext4 partitions before flashing
To prevent false error reports from e2fsck, update fastboot to erase
a partition identified as being ext4 partition before flashing an image
to it.

bug: 7259359

Change-Id: I85e9963aa8247b4b33fdd57f994cdb3ee72b670f
2012-10-02 19:10:51 -07:00
Kenny Root d5d6d97def Host builds: add fastboot and adb
Add fastboot and adb host utilities to debug builds for debugging
and development purposes.

Change-Id: If77699a27497b8641998930f14d4ee418b856080
2012-09-26 10:01:40 -07:00
Colin Cross 80f9867431 fastboot: move help command before usb connect
Move the help command handling before the call to open_device
so that is doesn't block when no device is connected.

Bug: 7078873
Change-Id: I4e9a4317bd72b4ceb4b9fc838eafd2e57b17a473
2012-09-10 14:12:37 -07:00
Colin Cross ae807aaa02 Merge "fastboot: move help command before usb connect" into jb-mr1-dev 2012-09-10 14:11:44 -07:00
Ying Wang 96535ba620 Dist fastboot and adb for the sdk build.
So they can be downloaded from the build page.
Bug: 7109694

Change-Id: Ibc60d0acbc5d2445c01010fd0bd4654a240b0a88
2012-09-05 10:26:43 -07:00
Colin Cross c7b75dcc1a fastboot: move help command before usb connect
Move the help command handling before the call to open_device
so that is doesn't block when no device is connected.

Bug: 7078873
Change-Id: I4e9a4317bd72b4ceb4b9fc838eafd2e57b17a473
2012-08-29 18:21:06 -07:00
Jean-Baptiste Queru bb0d0721e6 am 94938c9d: am ed2e672f: Merge "Print strerror for file read errors during flashing"
* commit '94938c9d60d6467ec40df4254beadc50bb787934':
  Print strerror for file read errors during flashing
2012-08-20 10:29:39 -07:00
Jean-Baptiste Queru ed2e672f3b Merge "Print strerror for file read errors during flashing" 2012-08-20 09:19:09 -07:00
Joe Onorato ab163a9a17 am c56f4285: am a11f4bcf: Merge changes I5006b467,I0118cebf,Ibc792367
* commit 'c56f428530a307c850dc99024d23f7e5ebbf92d3':
  Support for multiple modules with the same name is going away.
  Fix build by removing TAGS from host module
  libext4_utils on host is now called libext4_utils_host so there is no name conflict
2012-08-17 00:53:14 -07:00
Joe Onorato 5069b01e21 Support for multiple modules with the same name is going away.
Change-Id: I5006b467978071f9107babe532efa71d05061580
2012-08-15 19:52:52 -07:00
Joe Onorato 2ffe3c8ac4 libext4_utils on host is now called libext4_utils_host so there is no name conflict
Change-Id: Ibc7923676925ed6942b3f672ee764cfaa98ee96e
2012-08-15 19:52:52 -07:00
Matt Gumbel 64ba258b7a Print strerror for file read errors during flashing
Change-Id: I7390867abd00036f19eb4d1a1ce23aa0aca50674
Signed-off-by: Matt Gumbel <matthew.k.gumbel@intel.com>
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2012-07-26 10:19:05 -07:00
Colin Cross a7a64579c2 am 36f2e2ac: am 23ee469c: Merge "fastboot: change default sparse limit to disabled"
* commit '36f2e2ac96f8b2163a37773f5cb92cfff75dede2':
  fastboot: change default sparse limit to disabled
2012-07-24 18:54:18 -07:00
Colin Cross a2b3ded589 am cecc3186: am f650c075: Merge "fastboot: check argc before using argv"
* commit 'cecc3186ca18ddf7a2d43a12353c45a81ab2baca':
  fastboot: check argc before using argv
2012-07-24 18:54:17 -07:00
Colin Cross 0bbfb3976e fastboot: change default sparse limit to disabled
Change the default sparse limit to disabled to prevent resparsing files
unless the bootloader or user specifies a sparse limit.  Some
bootloaders issue an erase before every flash command, which causes
earlier parts of the downloaded image to get erased.

Change-Id: Iac6f3b05580aba8b82ed0f2f800979a49c33c691
2012-07-24 18:07:18 -07:00
Colin Cross 8fb6e06ba4 fastboot: check argc before using argv
"fastboot -w" would segfault because *argv was invalid when no
non-option arguments were specified.  Check argc > 0 before
dereferencing argv.

Change-Id: I822a799e6a38e4e5c0a4eca48c6343b8a08a6185
2012-07-24 16:37:52 -07:00
Colin Cross 9a70e5c338 resolved conflicts for merge of 4d72d881 to master
Change-Id: Ic092d27d3fc2bcc4db8a375bbcb5b86c111bf062
2012-07-17 23:35:49 -07:00
Colin Cross f838788e6a fastboot: add support for auto-resparsing large files
Add support to fastboot for automatically using libsparse to break large
files, whether they are in sparse or normal format, into multiple sparse
files that can each fit into the target's memory.  Allows flashing
images that are larger than the size of the available memory on the
target.

By default, any file over 512MB will be sparsed into 512MB chunks.  The
limit can be modified with the -m argument, or sparsing can be forced
with -S or avoided with -N.  If -m is not specified, the target can
override the default by implementing getvar:max-download-size

Change-Id: I6c59381c3d24475c4f2587ea877200b96971cbd7
2012-07-09 22:17:58 -07:00
Colin Cross 80f2d036a9 fastboot: add fb_getvar
Add an fb_getvar helper that can be used to get values from the
target.

Change-Id: I0da088fcbc8d40076c7bf5ef6e5bbd97fae61471
2012-07-09 22:16:57 -07:00
Colin Cross 8879f988ba fastboot: use getopt_long
Modify the fastboot argument parsing to use getopt_long.  This
simplifies argument parsing, and permutes all the commands to the end of
argv to allow parsing them later.

Also moves usb initailization between argument and command processing,
to allow commands to query parameters over usb.

Change-Id: I883572f52c4190c80ee3b4aa4511ea2061a6b734
2012-07-09 22:16:55 -07:00
JP Abgrall a032dedefe fastboot: Let "fastboot devices" work in all cases
Ignore ANDROID_SERIAL when requesting to list devices, or else it is
impossible to list devices without unsetting the env var. Even
  ANDROID_SERIAL=  fastboot devices
or
  fastboot -s "" devices
won't work.

Change-Id: Ie92f35bda852c6ecea4ebaefb75b8f18c10b6d0c
2012-06-06 11:53:33 -07:00
Scott Anderson dd32794a29 am 866b1bd5: fastboot: Make the format of "devices -l" match adb\'s
* commit '866b1bd5051db4f22b634df1f8a06bc1c9aa2e26':
  fastboot: Make the format of "devices -l" match adb's
2012-06-05 16:21:04 -07:00
Scott Anderson 866b1bd505 fastboot: Make the format of "devices -l" match adb's
Change-Id: Iec7b02fee8298a4437d1827623e9f61688a73f42
Signed-off-by: Scott Anderson <saa@android.com>
2012-06-05 11:13:45 -07:00
JP Abgrall 3447b11d3e am 177a74ac: am c1f88106: Merge "fastboot: Change -w to format after the erase of userdata & cache" into jb-dev
* commit '177a74aced971b89c319fb61ee12da0ca40f0c12':
  fastboot: Change -w to format after the erase of userdata & cache
2012-05-14 08:35:13 -07:00
JP Abgrall 30ae5806e9 fastboot: Change -w to format after the erase of userdata & cache
If the bootloader doesn't support formatting of those partitions
(either because it doesn't support the getvar commands needed or
the partition type is not supported), the errors are printed but
doesn't halt processing of subsequent commands.

Change-Id: I816ac2e5e7593846fcb4fd39c793a8dbdd996f6f
Signed-off-by: Mike J. Chen <mjchen@google.com>
2012-05-07 20:25:24 -07:00
Scott Anderson a61bcad58b resolved conflicts for merge of 13081c69 to master
Change-Id: I631e466fc53e9b0f4a39f24f959b4ae9b626bdda
2012-05-01 18:34:22 -07:00
Scott Anderson 13081c6915 fastboot: Add ability to specify device path
For manufacturing and testing, there is a need to talk to
whatever device is connected to a given port on the host.  This
change modifies fastboot's "-s" option to take either a serial
number or a device path.  The device paths of the connected
devices can be listed using "fastboot -l devices" whose output
will resemble:

    016B75D60A00600D	usb:2-5	fastboot
    AD3C12020173	usb:1-4.3	fastboot

The second column lists the device paths.  If the -l option is
not given, the output from "fastboot devices" will be the same as
it used to be (i.e. the paths will not be printed).

Finally, note that the format of the device paths are platform
dependent.  The example above is from Linux.  On OS-X, the paths
will be "usb:" followed by hex digits.  For Windows, the device
paths will be printed as "????????????" and the -s option will
not be able to select a device until someone implements the
underlying functionality in usb_windows.c.

Change-Id: I1f01b8f47acd32edb0ac18db107316a2c923bbde
Signed-off-by: Scott Anderson <saa@android.com>
2012-04-19 11:59:09 -07:00
JP Abgrall f8ff3a5ae2 fastboot: Keep borked bootloaders happy by shrinking URB len.
Some devices will fail to return the requested data if the final
URB len of the request to > 255.
So shrink the current data buffer from 128 to 127 in the acse of getting
the serial number seems to work just fine.

Change-Id: Ic24e6c86ec93f002dc721d92309b3f880f281f20
2012-04-18 15:31:23 -07:00
Kenny Root 82fd659667 Tweak makefile to let SELinux build
fastboot now needs SELinux support when not on Windows.

Change-Id: Ib32404ef5c9a1a183d7ae319cc94eaf7f12620d9
2012-04-08 11:27:06 -07:00
Kenny Root 1ecb8681c3 fastboot: add support for SELinux and fs_config_func
There were some changes to make_ext4fs to add SELinux context. Also, we
changed the "android" argument to an fs_config_func that allows you to
customize the permissions put into a ext4 filesystem.

Change-Id: If23152c40659122a91771fcbd094f713b38e321e
2012-03-30 20:46:16 -07:00
Anatol Pomazau 5ae3f93f3b Remove trailing whitespaces
Change-Id: I6f83333a6ee0fbc562a12bb9555c43a44c98768e
2012-02-28 07:21:08 -08:00
Ramanan Rajeswaran c4ddca25e0 am f1ab88c2: am 73c019b3: Add asus vendor id
* commit 'f1ab88c23460a608cd6d6f6492fb2b039405c0f2':
  Add asus vendor id
2012-02-27 12:00:45 -08:00
Ramanan Rajeswaran f1ab88c234 am 73c019b3: Add asus vendor id
* commit '73c019b30a7c70c50d2a854982143d5eb8c74f8c':
  Add asus vendor id
2012-02-27 11:59:20 -08:00
Ramanan Rajeswaran 73c019b30a Add asus vendor id
Change-Id: I6d10b1788903aba526af7f654b12c302c3e9fc89
2012-02-24 13:00:34 -08:00
Anatol Pomazau c8ba5366da Implement 'fastboot format' command
Some filesystems (e.g. ext4) require flushing an initial
fs image, right after erasing it the partition is unusable.

Doing erase,flush emptyfs is a little bit scaring so we have a
separate command that performs it as atomic step:

 - get size of partition
 - create an empty filesystem image
 - erase the partition
 - flush empty fs to the partition

This command applicable only for ext4 filesystem and checks the
partition type before formatting it.

Change-Id: I8529bc3485739487f0d91312f7c0ab1a6e5d8b44
2012-02-17 16:29:58 -08:00
Mike J. Chen 714052ba4d DO NOT MERGE
fastboot: Change -w to format after the erase of userdata & cache

If the bootloader doesn't support formatting of those partitions
(either because it doesn't support the getvar commands needed or
the partition type is not supported), the errors are printed but
doesn't halt processing of subsequent commands.

Change-Id: I816ac2e5e7593846fcb4fd39c793a8dbdd996f6f
Signed-off-by: Mike J. Chen <mjchen@google.com>
2012-02-16 09:32:42 -08:00
Mike Lockwood ca2074b78d Revert "Implement 'fastboot format' command"
until Windows support is done

This reverts commit 452e11885a.
2012-02-13 09:57:19 -08:00
Anatol Pomazau 452e11885a Implement 'fastboot format' command
Some filesystems (e.g. ext4) require flushing an initial
fs image, right after erasing it the partition is unusable.

Doing erase,flush emptyfs is a little bit scaring so we have a
separate command that performs it as atomic step:

 - get size of partition
 - create an empty filesystem image
 - erase the partition
 - flush empty fs to the partition

This command applicable only for ext4 filesystem and checks the
partition type before formatting it.

Change-Id: Ifa42deaa66c3cb96ff786a73c3fadad92658f395
2012-02-11 11:02:40 -08:00
Anatol Pomazau 6f53225ef9 Revert "Implement 'fastboot format' command"
This reverts commit 230d160a71
2012-02-03 18:20:02 -08:00
Anatol Pomazau 230d160a71 Implement 'fastboot format' command
Some filesystems (e.g. ext4) require flushing an initial
fs image, right after erasing it the partition is unusable.

Doing erase,flush emptyfs is a little bit scaring so we have a
separate command that performs it as atomic step:

 - get size of partition
 - create an empty filesystem image
 - erase the partition
 - flush empty fs to the partition

This command applicable only for ext4 filesystem and checks the
partition type before formatting it.

Change-Id: I8529bc1dc64237f1f0d91312f7c0ab1a6e5d8b44
2012-02-03 16:07:18 -08:00
Anatol Pomazau 7806e56485 Merge "Revert "Implement 'fastboot format' command"" 2012-02-03 11:18:43 -08:00
Anatol Pomazau 21311f87c6 Revert "Implement 'fastboot format' command"
This reverts commit 049dff53ef
2012-02-03 10:57:46 -08:00
Anatol Pomazau 65cf84f3ff Implement 'fastboot format' command
Some filesystems (e.g. ext4) require flushing an initial
fs image, right after erasing it the partition is unusable.

Doing erase,flush emptyfs is a little bit scaring so we have a
separate command that performs it as atomic step:

 - get size of partition
 - create an empty filesystem image
 - erase the partition
 - flush empty fs to the partition

This command applicable only for ext4 filesystem and checks the
partition type before formatting it.

Change-Id: I8529bc1dc64698f1f0d91312f7c0ab1a6e5d8b44
2012-02-03 10:29:56 -08:00
Anatol Pomazau e9f6e00c19 Merge "Implement 'fastboot format' command" 2012-02-03 10:13:31 -08:00
Jean-Baptiste Queru 0fe24c96be am 142e895a: am e83cd37e: am 0458d373: Merge "fastboot: set the language local string"
* commit '142e895a1d5030a4e032f08fa5814ebd42b964b6':
  fastboot: set the language local string
2012-01-27 21:09:21 -08:00
Jean-Baptiste Queru 142e895a1d am e83cd37e: am 0458d373: Merge "fastboot: set the language local string"
* commit 'e83cd37e58b00fb6b9eb50464067864ca0cb2ff7':
  fastboot: set the language local string
2012-01-27 14:00:21 -08:00
Anatol Pomazau 049dff53ef Implement 'fastboot format' command
Some filesystems (e.g. ext4) require flushing an initial
fs image, right after erasing it the partition is unusable.

Doing erase,flush emptyfs is a little bit scaring so we have a
separate command that performs it as atomic step:

 - get size of partition
 - create an empty filesystem image
 - erase the partition
 - flush empty fs to the partition

This command applicable only for ext4 filesystem and checks the
partition type before formatting it.

Change-Id: I8529bc1dc64698f1f0d91312f7c0ab1a6e5d8b44
2012-01-25 13:55:39 -08:00
Xavier Ducrohet 46f86f11d4 am 0c054095: am 746f3243: Add USB vendor IDs for Quanta, INQ and Sony.
* commit '0c05409510037fd7372c3fe7ab240ebf33b15831':
  Add USB vendor IDs for Quanta, INQ and Sony.
2012-01-24 11:32:19 -08:00
Xavier Ducrohet 0c05409510 am 746f3243: Add USB vendor IDs for Quanta, INQ and Sony.
* commit '746f3243f6d30ab51a36dcfea76eac3ba29ac625':
  Add USB vendor IDs for Quanta, INQ and Sony.
2012-01-24 11:29:50 -08:00
Xavier Ducrohet 746f3243f6 Add USB vendor IDs for Quanta, INQ and Sony.
Change-Id: I224e067d9a64e8e9e7afbad0760a4b07f965bf83
2012-01-24 11:18:50 -08:00
Jean-Baptiste Queru 38412163da am 70580b20: am 149ae11f: Merge "adb,fastboot: add USB support for Intel Vendor ID"
* commit '70580b20bc8485002df0b3e89e42754c8c9796ff':
  adb,fastboot: add USB support for Intel Vendor ID
2012-01-24 08:49:05 -08:00
mgross c840653efd fastboot: set the language local string
Set the language local string to 0x409 (English US / en-us) such that
fastboot will successfully read the usb descriptor serial number string.
The usbdevfs ioctl fails when the wIndex is not initialized with the
local for the unicode of the usb descriptor string.  usbdevfs is an
obsolete interface and fastboot probably needs a re-write to use libusb
like what is in adb.

Change-Id: I3687f84643f53c736f14b3ae7793185d9b5cccc0
Signed-off-by: Mark D Horn <mark.d.horn@intel.com>
2012-01-23 13:12:23 -08:00
Wu, Hao f60e863828 adb,fastboot: add USB support for Intel Vendor ID
This patch adds Intel USB Vendor ID into the support
list for adb and fastboot.

Signed-off-by: Wu, Hao <hao.wu@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
2012-01-17 12:08:06 -08:00
Jean-Baptiste Queru d7608a40d6 Flash cache partition with cache.img by default.
Bug: 5153694
Change-Id: If322d13286e9b0f14877d1a4f03f6bd288ee71f3
2011-09-30 14:39:25 -07:00
Conley Owens 66acffad76 am c4eaebbe: am ab6e55f7: Merge "Enlarge USB bulk transfer size for faster downloads"
* commit 'c4eaebbe7a0c125663f74e3961b62de8d3611a51':
  Enlarge USB bulk transfer size for faster downloads
2011-04-27 11:38:29 -07:00
Wink Saville b98762f782 Teach fastboot to allow required variables per product.
This is needed for products like xoom-cdma and xoom-cdma-lte.
The xoom-cdma-lte product requires an lte baseband binary but
it's not needed for xoom-cdma.

This is implemented by allowing an optional product parameter
to "required" statements. The parameter is separated from
"required" by a colon so the version-baseband-2 requirment in
board-info.txt for stingray becomes:

 require-for-product:xoom-cdma-lte version-baseband-2=ltedc_u_03.25.00|ltedc_u_03.19.00

In the above statement, only xoom-cdma-lte requires version-baseband-2
and the baseband can be lte_u_03.25.00 or lte_u_03.19.00. For other
products version-baseband-2 will be ignored.


Change-Id: I786bec5f5661c2243d87925b064fc6124d3cffa1
2011-04-04 17:54:59 -07:00
David Krause 913eb8bf87 Enlarge USB bulk transfer size for faster downloads
The default USB transfer bulk is fixed as 4096 in fastboot util code for
Windows and Linux. Enlarging the bulk size can greatly improve the image
download speed via USB.

For Windows, adjust the max bulk size to 1MB to maximize the USB transfer
speed. With this change, the USB transfer speed can be doubled to 20MB/s.

For Linux, adjust the max bulk size to 16384 to maximize the USB transfer
speed according to MAX_USBFS_BUFFER_SIZE definition in drivers/usb/core/devio.c.

For OSX, the maxLenToSend is already 1MB in code.

Change-Id: If6af8c6301f6f6c2ef345e37241706f16d8f5cda
2011-03-28 11:45:21 -05:00
JP Abgrall 2d13d1408b fastboot: fix arg handling causing no-op.
Change-Id: I89d4a6d14e542d8f2d7832d94b0a7cee6eb88305
2011-03-01 23:35:07 -08:00
Tsu Chiang Chuang ee52055ae5 Add explicit 'help' command to fastboot.
Change-Id: I350feab372e105755509c81604d57b2de1a69163
2011-02-25 18:38:53 -08:00
Jean-Baptiste Queru 512405a421 am f1c2a735: Merge "fastboot: Add help message for continue command"
* commit 'f1c2a7352f19cf729f91bf2559fc93ef12c74dca':
  fastboot: Add help message for continue command
2010-12-29 16:01:55 -08:00
Bruce Beare 24ce4bc8d7 fastboot: Add help message for continue command
Change-Id: I578b1b7c2d74d09d44ce9100bfe582aaa25c31b1
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
2010-12-29 13:11:53 -08:00
Ying Wang 1c061b9ea9 dist for dist_files
Change-Id: I665572a2212f1239b02b7816e37ada210afbdb48
2010-12-09 10:33:27 -08:00
Jean-Baptiste Queru 69f2d3ce91 am 42b871f1: am c37ba1c9: Merge "Check fastboot oem command line length"
Merge commit '42b871f1bfc116d53d1bff9d7497415494b2e0e0'

* commit '42b871f1bfc116d53d1bff9d7497415494b2e0e0':
  Check fastboot oem command line length
2010-07-29 11:11:07 -07:00
Jean-Baptiste Queru 42b871f1bf am c37ba1c9: Merge "Check fastboot oem command line length"
Merge commit 'c37ba1c916d73fbf35c6faba1e252e2916d2d41d' into gingerbread-plus-aosp

* commit 'c37ba1c916d73fbf35c6faba1e252e2916d2d41d':
  Check fastboot oem command line length
2010-07-29 11:08:02 -07:00
Nick Pelly 286d50fe34 Allow OSX fastboot to work with more devices.
ClearPipeStallBothEnds() appears to fail on some devices, but if we ignore
that error then fastboot does work. So ignore the error.

Change-Id: Ic866ece28a57c081e34079e1a032fa8155301ddf
2010-07-22 10:59:55 -07:00
Bruce Beare 50b3995d02 Check fastboot oem command line length
Change-Id: I301af09c4ec460c9049b75cc7f4d2c50cfe00ceb
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
2010-07-15 08:52:01 -07:00
Brian Swetland 587c286f98 am beb72464: am 63e5205c: fastboot: make it so I can actually see the bootloader chatter
Merge commit 'beb72464ff8c501597cd7e098090f7d131dc5ccb'

* commit 'beb72464ff8c501597cd7e098090f7d131dc5ccb':
  fastboot: make it so I can actually see the bootloader chatter
2010-07-13 17:18:39 -07:00
Brian Swetland 63e5205cd2 fastboot: make it so I can actually see the bootloader chatter
- prefix bootloader messages with (bootloader)
- remove the fancy right justified no newline business

Change-Id: Ica16ebe6a25971db423c5db06300a280d93faf3e
Signed-off-by: Brian Swetland <swetland@google.com>
2010-07-01 13:54:13 -07:00
Werner Johansson 4272a7ad70 am a8c74049: am 931bdcc0: Set explicit timeout on USB control transfer
Merge commit 'a8c7404956b4370162a87ae09b851266a4933b54'

* commit 'a8c7404956b4370162a87ae09b851266a4933b54':
  Set explicit timeout on USB control transfer
2010-06-30 21:52:19 -07:00
Werner Johansson 931bdcc09a Set explicit timeout on USB control transfer
This attempts to solve the intermittent issues with serial number
showing up as all question marks when issuing "fastboot devices"
2010-06-30 21:03:46 -07:00
Jeff Brown f6e83f7eb8 am dc594284: Merge "Fix kernel panics in fastboot on OS X." into kraken 2010-05-21 14:08:41 -07:00
Jeff Brown b64063737e Fix kernel panics in fastboot on OS X.
The kernel panic seems to be related to the driver trying to allocate
too many pages from the IO mapper.  That may be caused by the fact
that we try to perform a 100+ MiB transfer in a single IO operation.
This change breaks the transfer down into 1 MiB chunks.

So far after a day of testing, no kernel panics have occurred compared
to 5 in the previous 24 hours!

Change-Id: I8d27a546e0c0bf4fe2f0fc7fcad65a88d3e6bee0
2010-05-21 13:24:25 -07:00
Dima Zavin c09b7cf1c9 am 509f7399: fastboot: Add more vendor usb ids 2010-05-14 14:52:40 -07:00
Dima Zavin 509f7399b8 fastboot: Add more vendor usb ids
Change-Id: Ied48302b50412f27dcf49d40913e4b900f3bd153
Signed-off-by: Dima Zavin <dima@android.com>
2010-05-14 14:48:39 -07:00
Raphael b419c35c66 Fix adb, fastboot to compile in Windows SDK under Linux.
(Merged from master Change I3d0e4cab)

Change-Id: Ib3fd566bdaf09d5893a6b0c66168c76c6b0d92eb
2010-04-23 13:07:17 -07:00
Brian Carlstrom eb31c0bdc0 fastboot should return non-zero exit code on error
When using fastboot in scripts, it currently is necessary to parse the
output for FAILED messages and possible other indications of
error. This happens relatively often, for example when there are radio
update issues. Fortunately, fb_execute_queue already has a notion that
an error has occured which is used to abort the queue execution.

This change makes the status value be returned from fb_execute_queue
to main which can then return it as an exit status. usage cases were
also changed to return 1.

Note the code already returned 1 for error in one other case when
there was a problem with boot, so there is a precedent for return 1 on
error in this program.

Change-Id: Ib0463b08c8f2569495e248dd84e331f7e3691039
2010-04-23 12:45:38 -07:00
Raphael fab167850d Fix adb, fastboot to compile in Windows SDK under Linux.
Change-Id: I3d0e4cabd65d9de17036901a22ec3277a6d58e64
2010-04-13 15:28:26 -07:00
Daniel Sandler cb6e22b687 Add wall-clock timing for each fastboot Action.
(For diagnosing slow flashes.)

Change-Id: Ibbcbd080db551c8590ca8bfe50e9ddb45eea5661
2010-02-25 14:05:33 -05:00
Dima Zavin 931175a1c5 fastboot: add nand page size param, used for boot and flash:raw commands
Change-Id: I07451363f4d4ac8665598722491968e6ee0953ee
Signed-off-by: Dima Zavin <dima@android.com>
2010-02-16 09:40:05 -08:00
Jean-Baptiste Queru 2f3d96ee5b resolved conflicts for merge of 20f410a4 to master
Change-Id: I187f29848c223c8c548323e0fa20ea0f3b8a3909
2010-01-28 07:38:15 -08:00
Android Git Automerger 20f410a418 resolved simple conflict with dc9cf66c 2010-01-21 18:06:39 -08:00
Xavier Ducrohet af82f21df7 Add Dell's vendor ID to fastboot.
Change-Id: I1d88d2a8b3f5c0a9bade2a207b5d9c5a0b776655
2010-01-21 17:39:25 -08:00
Erik Gilling 37e9e90436 fastboot: add Nvidia vendor id to fastboot
Signed-off-by: Erik Gilling <konkers@android.com>
2010-01-20 17:40:30 -08:00
Jean-Baptiste Queru c923980e78 am ef063fe3: merge from open-source master
Merge commit 'ef063fe3066153dab5389b6baba6cb4e36888106'

* commit 'ef063fe3066153dab5389b6baba6cb4e36888106':
  Add support for Acer devices
  FreeBSD support for usb-connected devices in adb
  Make get_my_path() safer
  Fix use of memset function
2009-11-09 12:07:42 -08:00
Jean-Baptiste Queru ef063fe306 merge from open-source master 2009-11-09 09:40:48 -08:00
Jean-Baptiste Queru 436db2e382 merge from open-source master 2009-11-08 16:11:17 -08:00
Robert CH Chou e25ff1c682 Add support for Acer devices 2009-11-03 10:48:17 -08:00
Android (Google) Code Review 44a0270c1e Merge change I31dbed7b
* changes:
  Add adb's ANDROID_SERIAL to fastboot too.
2009-10-08 11:30:10 -04:00
Elliott Hughes c500be926c Fix flashstation breakage.
We need to reset 'writable' each time round the loop (i.e. for each device).
2009-10-07 17:24:39 -07:00
Elliott Hughes 31dbed7b60 Add adb's ANDROID_SERIAL to fastboot too.
We noticed this when trying to script on-device testing for the dalvik
continuous build.

Also fix a typo in adb's help.
2009-10-07 15:38:53 -07:00
Elliott Hughes b4add9b745 Make fastboot say "no permissions" for non-writable devices.
Without this patch, "adb devices" will say "no permissions" when it sees
a device it can't write to, but "fastboot devices" will silently ignore it.
This is confusing to n00bs, especially since it doesn't seem to be widely
known that a device's USB id might be different in the bootloader (meaning
two udev rules are needed). It can also be confusing if you're sshed in,
when you can't access the device because you won't be in the "plugdev"
group, but "fastboot devices" won't make this clear.

I'm not sure about the Mac OS and Windows changes. AIUI, devices are always
writable on those platforms, but I don't use either, so I can't test this.
This patch shouldn't alter the behavior on either of those platforms.
2009-10-06 18:07:49 -07:00
Mathias Agopian 3969080e23 get rid of utils/executablepath.h, which now lives in the simulator 2009-08-26 14:46:18 -07:00
Dan Murphy b2de4db941 fastboot: Add retry to USB read call.
If the USB connection to the device is reset but is still there
the code should retry to re-connect the device and continue.

This is a short term fix for a bootloader issue.
We should revisit and look for a better solution.

Signed-off-by: Dan Murphy <D.Murphy@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-08-19 14:32:01 -04:00