summaryrefslogtreecommitdiff
path: root/utils/hwstub/tools/hwstub_shell.cpp (follow)
Commit message (Collapse)AuthorAge
* hwstub_shell: fix a horrible bugAmaury Pouly2016-11-06
| | | | Change-Id: I4ac259e6cd7b707ca725c6ba1c526f5aeed56b71
* hwstub: fix compile and linking orderingAmaury Pouly2016-10-22
| | | | Change-Id: I0acd3db2f644f4521da715d4931315bdb7548eae
* hwstub: port hwstub_shell to the new libraryAmaury Pouly2016-04-08
| | | | | | | | | | | | | | | Also use this opportunity to cleanup support for multiple devices: the shell now supports dynamic changes in the device and will call init() everytime a new device is selected, to prepare a new environment. The shell now honors register width on register read/write. The shell also provides access to variants as follows by creating a subtable under the register using the variant type in UPPER case and having the same layout as a register. For example if register HW.GPIO.DIR has variants "set" and "clr", those can be used like this: HW.GPIO.DIR.SET.write(0xff) HW.GPIO.DIR.CLR.write(0xff00) Change-Id: I943947fa98bce875de0cba4338e8b7196a4c1165
* soc_desc: new version of the desc file formatAmaury Pouly2015-09-11
| | | | | | | Fix qeditor to use the old soc_desc_v1. Port hwstub_shell to the new description format. Change-Id: I9fefbff534bfaa5c3603bb3dd8307a2b76e88cfc
* hwstub: Add completion and some pretty printing to the shellMarcin Bukat2015-06-28
| | | | | | | This uses slightly hacked luaprompt to provide all the goodis. See https://github.com/dpapavas/luaprompt for original. Change-Id: Iedddb79abae5809299322bc215722dd928c35cca
* hwstub_shell: add support for call and jumpMarcin Bukat2014-11-28
| | | | | | | Change-Id: Ie09d0db21831b79255da858bada7382a08ff4eef Reviewed-on: http://gerrit.rockbox.org/1052 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com> Tested: Marcin Bukat <marcin.bukat@gmail.com>
* hwstub/qeditor: add support for atomic read/writesMarcin Bukat2014-11-18
| | | | | | | | | | The current code assumed that READ/WRITE would produce atomic read/writes for 8/16/32-bit words, which in turned put assumption on the memcpy function. Since some memcpy implementation do not always guarantee such strong assumption, introduce two new operation READ/WRITE_ATOMIC which provide the necessary tools to do correct read and write to register in a single memory access. Change-Id: I37451bd5057bb0dcaf5a800d8aef8791c792a090
* hwstub_shell: add atj targetAmaury Pouly2014-11-15
| | | | | | Change-Id: I566694f19dfb110dbf245be7b7f139a4c616e16b Reviewed-on: http://gerrit.rockbox.org/1041 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* hwstub_shell: add support for set/clr/tog without SCT using read and writeAmaury Pouly2014-09-07
| | | | Change-Id: Ib0a5123e5cc51ee193ef761c36af63467740c670
* hwstub: don't put revision in the protocol, it's specific to the implementationAmaury Pouly2014-09-07
| | | | Change-Id: I1311a22da41fe977f1613f1e313a864baa03027c
* hwstub: remove protocol to make it use its own interfaceAmaury Pouly2014-09-07
| | | | | | This way, hwstub can be implemented along with other usb features/interfaces. Change-Id: I7148cab845049cc0a8b8e740fa0d52d3a385eaed
* hwstub: hwstub_shell can now run files/cmd provides on command lineAmaury Pouly2014-05-11
| | | | Change-Id: Id5cb3bee52b39e2ddec95c646ca9b4a3334bdf92
* hwstub: fix hwstub_shellAmaury Pouly2014-05-11
| | | | Change-Id: I008a55675054c86fd206cc5248f2bd9475e80b49
* hwstub: add proper PP supportAmaury Pouly2014-04-12
| | | | | | | | | | | - drop support for PP500x: it's very different from other PP and although it would be possible to support them, I don't have one to test the code - make sure only the CPU is started - add PP descriptor to report chip ID and revision - add code in shell and lua to support pp (no register description yet) - compile for ARMv4 because PP502x is an ARM7TDMI Change-Id: I36c4e465dfc2cfdfe7433b2f65cc8f6f0720fe62
* Fix redAmaury Pouly2014-02-12
| | | | Change-Id: Ib64eb3539e33d4336c298612b4508c4611b80c9e
* hwstub/regtools/qeditor: put soc descriptors in a list instead of a vectorAmaury Pouly2014-02-10
| | | | | | | A SoC descriptor is not a small object: it can be as large as ~100KiB so it's better to avoid copying things over. Change-Id: I1ef862e1260299cdaa0c4d2822ac45968713498a
* utils/hwstub: completely rework the protocol, drop unused featuresAmaury Pouly2014-02-10
| | | | | | | | | | | | | | | | | The protocol has evolved a lot during the 2.x.y lifetime, bringing more features which later got unused. This commit removes all the unused stuff and simplifies everything: - drop the feature mask: everything is mandatory or stalled on error - remove the info request and put all static information in standard USB descriptors which are part of the configuration descriptor (and can be retrieved using the standard GetDescriptor request). - remove the USB interface, we had only one anyway - remove all endpoint descriptors - remove the exit/atexit stuff, it never worked as intended anyway - update the hwstub library and make it able to handle any device - update the tools (mostly renaming and removing of code) Change-Id: I1872bba7f4177fc3891180e8f944aab88f5bde31
* hwstub: add delay functionAmaury Pouly2013-12-24
| | | | Change-Id: Iab208ed59a9a2540a64b190357411d3de28f288e
* hwstub rk27xx portMarcin Bukat2013-11-24
| | | | Change-Id: I85ac57117911544b65ccd56eb16303e30be67cab
* hwstub: only load stmp files on stmp targetsAmaury Pouly2013-11-20
| | | | Change-Id: I9266ec6db457b1d649cbdcb6c9bd1d0f3223b867
* hwstub: add atexit and exit stub function to DEVAmaury Pouly2013-08-11
| | | | Change-Id: I17cfe52de3f6f546a46ace3252113024625f15d1
* hwstub: allow to escape shell with a function callAmaury Pouly2013-07-13
| | | | Change-Id: I65b7b230d3b89a5014db134d3159861474fd889f
* hwstub: enhance protocol with more functionsAmaury Pouly2013-07-13
| | | | Change-Id: I7944249c2f7ea3e180e7b79ee8ae402d1d0742d3
* hwstub: major improvement in the stub and the toolsAmaury Pouly2013-06-13
Fix the stub in many way to correctly detect the STMP family and act upon that. Drop some unused commands and bump version. Rewrite the tool to allows scripting in lua and load the register description from an XML file using the regtools. Introduce a new tool to load and run code using the hwstub (either binary format or Rockbox additive scramble format). Also switch to an optimise version of the memcpy/move/set functions to correctly handle alignement issue (like writing a full word/half-word when possible for registers which is crucial) Change-Id: Id1d5cfe0b1b47e8b43900d32c5cd6eafae6414f6