Age | Commit message (Collapse) | Author |
|
It was barely even a stub, and hasn't seen any development since 2009
Change-Id: I0aa15d9a7b90ae8c771924d9f401380d4cc0fab9
|
|
Change-Id: Ie6fa343a65a6bd19e578664b10bac771289ed0b3
|
|
The checksum only needs to be calculated once. A small oversight on
my initial implementation.
Change-Id: Ie23faf36f5add7ed7f146769b604dbd8204c2605
|
|
Change-Id: I283834a653506fd95ff8b56897e5f3afaf375cf5
|
|
This imports the MD5 code used by other utilities and creates
a function for checking the provided NK.bin against known original
firmware checksums. Integration into mknkboot and beastpatcher is
also added.
For the sake of consistency with beastpatcher, mknkboot had its
printf statements rewrote to print to stderr like beastpatcher
does.
Change-Id: I0e52271d8d627a5b02302ab5cd1da2815b7cec1e
|
|
This mainly fixes some compiler warnings and makes it
work with mingw64.
Change-Id: Iabd13b5bed3427869ae78ceeb7e2255e68a6f7bd
|
|
This patches some compile warnings and also makes it work correctly
with modern mingw64.
Change-Id: I8cd292bc989ae04bbaa1d7149d58d6d833a51c0a
|
|
- Drop obsolete NAND patch script (it's simpler to use 'dd' directly)
- Remove an outdated comment
- Fix missing 'void' in a function definition
- Reset the poweroff timer when we poke the backlight
Change-Id: I752624386f30ac95f41a731d2b6be837e12275a9
|
|
Have pcm-x1000 handle most work, so target's audiohw code touches
only the relevant settings.
Change-Id: Icf3d1b7ca428ac50a5a16ecec39ed8186ac5ae13
|
|
I think this covers everything now, although some fields are missing
enum values. Those can be added in if and when they are needed.
Change-Id: Ib1a94ba9c9a5949b6a038f8c1a49786823fae58f
|
|
This only required a minor patch to the usb-designware driver due
to DMA requiring physical addresses -- on the X1000, these differ
from virtual addresses so we have to do the usual conversion.
Both the mass storage and HID drivers work, but there are a few
issues so this can't be considered 100% stable yet.
- Mass storage might not be detected properly on insertion,
and USB has to be replugged before it shows up
- HID driver may occasionally panic or hang the machine
Change-Id: Ia3ce7591d5928ec7cbca7953abfef01bdbd873ef
|
|
Change-Id: I7517e7d5459e129dcfc9465c6fbd708619888fbe
|
|
This uses the new unicode string literal feature that is available
now to greatly simplify the initialization of these special string
types. This makes them much more readable at a quick glance.
Change-Id: Iad8b49aa763486608e3bb7e83fb8abfb48ce0a7b
|
|
Change-Id: Ib9ec35c068e1cff8dcf120a13cfe3f5f58908a95
|
|
This is essentially an expanded version of jz4760_tools/usbboot,
able to support both X1000 and JZ4760 CPUs and easily extended to
handle other Ingenic CPUs using the same boot protocol.
Change-Id: I70ce3acc3531d65390c6bbae4d2b3352140acf0a
|
|
Change-Id: Ie9790faac44c33a170bc2dc39d706575cefa0f2f
|
|
Don't always operate on the remote head, instead default to the local
HEAD, and allow passing a hash to use for calculating statistics.
Change-Id: I420308e66769689c1dfac56e19058b097a0533a2
|
|
Change-Id: If23a2ee8056b124500e385a9d973dfbddbc32e02
|
|
the rest..
Change-Id: I50585ba2191aa8134de3045b1445859b27503a68
|
|
Change-Id: Ib87406c95fc6c579f108b81246350d12de428ba4
|
|
Make sure the target version isn't the default one so it also runs on
older macOS version than the current one.
Change-Id: Ib3517c97eee23ce1648e644ffc9daba2d1e7b599
|
|
- When make on Windows finds sh.exe it will try to use that. We use
cmd.exe calls when detecting Windows, so make sure we use cmd.exe as
shell.
- Add missing Windows compatibility to tomcrypt Makefile.
Change-Id: Iaef133ca27472a5ddf449174d540983f15c66aea
|
|
Change-Id: Iab79eb0c9b0bbf8fb7622f5630f385d56878507a
|
|
On macOS we pass the full path to the compiler. On recent versions this
causes the compiler to not find its SDK path, this needs to get passed
via the isysroot option.
Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511
|
|
There's nothing C++ left.
Change-Id: I98d8406215287c02b56029ed7c0e2b0e645bbcf1
|
|
Replace the use of crypto++ with tomcrypt, which is much smaller and C.
This gets rid of various build issues for systems that don't ship
crypo++ (i.e. everything except Linux.)
Change-Id: Ic0799e17b94935c71b14765cf9a2a7ea2b0adc7a
|
|
libtomcrypt uses a macro "byte" which conflicts with this type. Since
the underlying type is uint8_t and there's no real benefit from using a
custom type use the actual underlying type.
Change-Id: I982c9b8bdcb657b99fa645a5235303af7afda25b
|
|
Change-Id: I6b9ffe86b9e78b494a3a9211d6e79bb81c9fb6d4
|
|
Add the parts of libtomcrypt that we're about to use.
Change-Id: I0adc1d7d1f4833e7bb3ed53b9a4d9a85977cfb8b
|
|
Change-Id: I10727311db4747a66b3ae7f72a92a64cc99dfc82
|
|
When generating the MD5 using -z index,name the tool would add the entry but
forgot to increase the file size, hence truncating the file.
Change-Id: Ibd3c594722ab46350cda60d158666fe34a96e922
|
|
I forgot to fixup the windows up and missed it because of conditional
compilation
Change-Id: I526c765b9d56508815941ecb9b9dbac7ea407cf0
|
|
It turns out the calculation gives the right result for the wrong reason, this
fixes it.
Change-Id: I36053c8993b5ae1e85380da59546ffade265fb3f
|
|
When compressing, it is possible to tell the tool to add an entry to the MD5
file (index 1), it is still necessary to give an empty file for that index.
To do so, pass the option "-z idx,name" insteas of "-z idx". This will create
an entry of the form "size md5 name". For instance "-z 6,system.img".
When decompressing, if one passes "-z idx,name" instead of "-z idx", the tool
will decompress and check against the value in the MD5 file.
Change-Id: Ifb945f6121644ae9105265d2d83ce6067301c5b2
|
|
Change-Id: I24bc6b15c954540cfa9b4f176ecbf817b1b641e7
|
|
To decompress some output file(s), simply pass -z <idx> where idx is the index
of the file to decompress, starting from 0. For example
upgtool -e NW_WM_FW.UPG -o tmp/ -m nw-wm1a -z 6 -z 7
to decompress files 6 and 7. To compress file, use the same options:
upgtool -c NW_WM_FW.UPG -m nw-wm1a -z 2 script.sh md5sum.txt system.img
Change-Id: I1ef0b3e02c98e58154f1a959fb1ad70ad2ce6500
|
|
In order to avoid the crypto++ mess, the code uses the Windows Cryptography API,
which is standard. There is also some makefile magic to cross-compile:
make PREFIX=i686-w64-mingw32- EXE_EXT=.exe
I selected the option so that it should statically link supports libraries used
by gcc (slsj and libwinpthread).
Change-Id: Iaf07da23afe81ed217fb3921ce13367c5441514d
|
|
Change-Id: I0f4e5b6c5e88a1ae49102e6f6fc6f8c86cb63959
|
|
The new code supports reading and writing UPG files. I kept the old keysig
search code but it only supports the old format (the new format has too long
keys anyway). Since we now have to support two types of encryption(DES and AES),
I reorganized the crypto routines and clean-up some code.
Change-Id: Ie9be220ec2431ec6d0bd11699fa0493b62e1cec2
|
|
Change-Id: Ic5cb3dfa3be684f31a2c55a3cb7d45cfe8c65b25
|
|
Split WM1A/WM1Z because they don't have the same KAS. On newer devices, the KAS
is actually 64 bytes, not 60. The strange thing is that "get_dnk_nvp kas" returns
60 bytes whereas "get_dnk_prop kas" returns 64, not sure why.
Change-Id: I944d3d838209ba58388439af0cdf5d7c74f1f7fc
|
|
* DMA Bulk IN (ie our TX) results in sequential transfers 33-68% faster.
* DMA Bulk OUT (ie RX) is mostly stripped out due to complete brokenness.
* Interrupt and control endpoints remain PIO-driven.
Other improvements:
1) Use consistent endpoint references (no magic numbers)
2) Greatly enhanced logging
3) DMA support can be compiled out completely
4) Setting lockswitch will disable all DMA operations at runtime
5) Much more robust error checking and recovery
Change-Id: I57b82e655e55ced0dfe289e379b0b61d8fe443b4
|
|
We're not using svn anymore. This isn't used, but at least try to get
the right value.
Change-Id: I66e726d28b504a0f15d5b6497a02963243ba466a
|
|
Change-Id: Iec78635b46e08a508a20048a14687f3be830ad63
|
|
Change-Id: I592a28f64f88c4ec0d1c4f45aeb8148ac2bc7d9b
|
|
- Replace use of obsolete members with their replacements.
- Fix type issue that requires explicitly creating the right object now.
- Update project file to work with Qt5.
Change-Id: I3af2b1520796e977e58c0a01e165c77c469a23b9
|
|
We're not using svn anymore since long.
Change-Id: I408b1c59dfaafe1e403b0fa49b912862b68c72f8
|
|
Change-Id: Ib527b4b4a7b450dee713dea93eaf93d85c0d4bfd
|
|
Let the linker find libmtp / libusb. Also don't insist on linking them
statically -- current Debian doesn't have a static libmtp.
Set STATIC to force linking statically.
Change-Id: I3ce9cea832705c87f08054435eadf9f169afedb2
|
|
The multiprocessing module is part of Python since 2.6, so no need to do
an extra check here.
Change-Id: If1c223edf9f04b6de8fdf757ba00f79897783a53
|