Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | pcd_enumerate: Avoid disabling interrupt during endpoint refill | Min Xu | 2014-11-11 | 1 | -25/+28 |
| | | | | | | | | | The old implementation has a big local_irq_save() / restore() around the endpoint re-fill routine. This disables interrupts for a long time, psossibly causing lost interrupts. The new implementation works around this by disabling the USB (UDP) interrupt only, rather than disabling all interrupts on the system. | ||||
* | simtrace: Add heartbeat message to debug console | Min Xu | 2014-11-11 | 3 | -0/+20 |
| | |||||
* | dbgu: make debug routines re-entrant | Min Xu | 2014-11-11 | 3 | -120/+193 |
| | |||||
* | req_ctx: Change number of small / large req_ctx | Min Xu | 2014-11-11 | 1 | -1/+5 |
| | |||||
* | req_ctx: avoid loop iterations by introducing per-state queues | Min Xu | 2014-11-11 | 2 | -23/+120 |
| | | | | | | In order to speed up the lookup of req_ctx, we keep per-state queues rather than iterating over all the request contexts that exist again and again. | ||||
* | change req_ctx sizes large 2048->1000; small 128->270 | Min Xu | 2014-11-11 | 1 | -2/+2 |
| | |||||
* | req_ctx: Use consistent numeric range for REQ_CTX_STATE | Min Xu | 2014-11-11 | 2 | -21/+24 |
| | | | | | ... which will allow us to check for invalid states by a simple 'greater than' check later on. | ||||
* | update main_factory to write version 1,4,0 instead of 1,3,0 to OTP | Harald Welte | 2014-11-11 | 1 | -1/+1 |
| | |||||
* | simtrace: main_factory: Program OTP area with simtrace version | Harald Welte | 2013-11-17 | 1 | -3/+21 |
| | |||||
* | simtrace: Add OTP data containing production data | Harald Welte | 2013-11-17 | 2 | -0/+112 |
| | |||||
* | spi_flash: add code for OTP read/write | Harald Welte | 2013-11-17 | 2 | -18/+251 |
| | |||||
* | iso7816_uart: Make sure ATR is separated from normal APDU in all cases | Harald Welte | 2012-05-18 | 1 | -7/+12 |
| | | | | | Prior to this patch, the ATR was not send in a separate USB message for cards that are T=0 only. | ||||
* | 7816_uart: add comment about f/d calculation | Harald Welte | 2012-05-18 | 1 | -0/+2 |
| | |||||
* | simtrace: introduce statisticsv0.5 | Harald Welte | 2012-03-23 | 3 | -2/+58 |
| | | | | | | the statistics count various events like overruns, parity errors, missing rctx and can dump those stats via USB as well as on the serial console. | ||||
* | wdt: make sure WDT doesn't fire inadvertently | Harald Welte | 2012-03-22 | 1 | -6/+13 |
| | | | | We have to set WDD and WDV to the same value to avoid watchdog errors | ||||
* | simtrace: implement SIM power switching API | Harald Welte | 2012-03-22 | 2 | -18/+48 |
| | | | | | | | | | there is now a high-level command by which we can swithc the VCC supply of the SIM cards. For some reason, the _PASS variant (passing through the voltage from the phone) doesn't seem to work reliably. It might be that we are draining reverse current throught the LDO once we supply SIM power that way. | ||||
* | make VCC / card detect more reliable | Harald Welte | 2012-03-22 | 1 | -2/+2 |
| | |||||
* | disable logging of PIO status in PIO interrupt routine | Harald Welte | 2012-03-22 | 1 | -1/+1 |
| | |||||
* | simtrace: Inform host of Fi/Di values (and flag change due to PPS) | Harald Welte | 2012-02-12 | 1 | -0/+5 |
| | |||||
* | simtrace: 7816 UART: Add missing entry in Di table | Sylvain Munaut | 2012-01-26 | 1 | -1/+1 |
| | | | | | | Add missing entry in Fi_table. It's apparently used as '64' in some reader and 'unsupported' in some other. For simtrace I guess we should consider it 64. | ||||
* | Make sure we don't forward power _and_ supply SIM power at the same time | Kevin Redon | 2011-12-18 | 2 | -1/+20 |
| | | | | | | | | The FPF2005 has no reverse voltage blocker, this is why the 3.3V from the LDO flows back into VCC_PHONE. It even damages the chip (so says the datasheet) I corrected the double power source problem by disabling the LDO (see patch), but still 1.8V does not work and 3.0-3.3V is used. I have to look for other reasons. | ||||
* | usb: Do not send ZLP when we have filled the windowv0.4 | Holger Hans Peter Freyther | 2011-12-14 | 3 | -49/+53 |
| | | | | | | | | | | | | Only send the ZLP if we send less data than was required/asked for by the host and it is a multiple of the bMaxPacketSize0 (which is hardcoded to 8 right now). This is completing the change done in fe88b83e80df8be0351ff38ee6 to fix SIMtrace attached to OSX and not regress on windows. Introduce another parameter to udp_ep0_send_data to specify the window size (wLength) or if not available the default from USB 2.0 specification. | ||||
* | dfu: Remove unused variable, mark method as not retuning | Holger Hans Peter Freyther | 2011-11-10 | 1 | -3/+1 |
| | |||||
* | dfu: Use {} for possible empty if statement (in case debug is off) | Holger Hans Peter Freyther | 2011-11-10 | 1 | -1/+3 |
| | | | | src/dfu/dfu.c:853:23: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body] | ||||
* | dfu: Mark unsued variables as __unused for now | Holger Hans Peter Freyther | 2011-11-10 | 1 | -4/+4 |
| | |||||
* | dfu: udp_ep0_recv_clean is static and is not called anywhere | Holger Hans Peter Freyther | 2011-11-10 | 1 | -14/+0 |
| | |||||
* | dfu: The i variable to disable interrupts shadows the outer index | Holger Hans Peter Freyther | 2011-11-10 | 1 | -3/+3 |
| | | | | | | | | In case ram_app_entry() returns do not reset i to 32, otherwise we will never reset the watchdog. src/dfu/dfu.c:1077:7: warning: declaration of ‘i’ shadows a previous local [-Wshadow] src/dfu/dfu.c:1068:6: warning: shadowed declaration is here [-Wshadow] | ||||
* | fix linking issue with latest binutils versionsv0.3 | Bjoern Kerler | 2011-10-21 | 1 | -1/+1 |
| | |||||
* | Fix fi/di calculation for certain mobiles like GT-S770 or HTC Raphael | Bjoern Kerler | 2011-10-21 | 1 | -3/+3 |
| | | | | | There were some mistakes while copying the tables from ISO 7816-3, and also a quite old version of 7816-3 was used. | ||||
* | SIMTRACE: ISO7816: Deal with ATR that don't have historical bytesv0.2 | Harald Welte | 2011-08-16 | 1 | -11/+21 |
| | | | | | In case there are no historical bytes, we immediately transition from the last TD byte into the WAIT_TCK or WAIT_APDU state. | ||||
* | ISO7816: Properly handle T=0 only cards without TCK in ATR | Harald Welte | 2011-08-16 | 1 | -1/+13 |
| | |||||
* | SIMTRACE UART: Reset error status on error related IRQ | Harald Welte | 2011-08-15 | 1 | -0/+9 |
| | | | | | This prevents an IRQ-flood after a parity or overrun error, which in turn would cause a watchdog reset. | ||||
* | simtrace UART: set INACK flag to make sure we ignore any parity error | Harald Welte | 2011-08-15 | 1 | -3/+3 |
| | | | | | | | As a SIM card tracer, we want to remain completely passive and thus not signal back parity errors with the ISO 7816 NACK. The UART INACK flag does exactly that... | ||||
* | DBGU: Print Reset controller Status Register on boot | Harald Welte | 2011-08-15 | 1 | -0/+4 |
| | | | | This helps us to discover _why_ the CPU has been rebooted. | ||||
* | USB: Add support for the 3rd DFU interface (RAM) | Harald Welte | 2011-08-15 | 1 | -0/+6 |
| | |||||
* | DFU: Fix execution of software that was loaded to RAM via DFUv0.1 | Harald Welte | 2011-07-30 | 1 | -8/+17 |
| | |||||
* | DFU: Support re-flashing of DFU via DFU | Harald Welte | 2011-07-30 | 1 | -16/+132 |
| | | | | | | | | | As we re-locate the entire sam7dfu program into RAM, we don't need to execute from flash and can thus re-program the DFU partition via the DFU protocol itself (alternate setting '1'). We also implement downloading executable code into RAM using alternate setting '2'. The latter part is not properly executed yet. | ||||
* | DFU: add third 'alternate configuration' for RAM load | Harald Welte | 2011-07-30 | 8 | -10/+36 |
| | | | | | This will allow us to load code directly into RAM without going through flash. | ||||
* | simtrace: add some early spi flash utility routines | Harald Welte | 2011-07-30 | 2 | -0/+224 |
| | | | | This also adds a new 'main_factory' target for simtrace | ||||
* | add new RUN_FROM_RAM run-mode for direct DFU-to-RAM support | Harald Welte | 2011-07-30 | 2 | -1/+3 |
| | |||||
* | sam7dfu: update copyright years | Harald Welte | 2011-07-29 | 1 | -1/+1 |
| | |||||
* | sam7dfu: make sure we can use USB reset to get from DFU -> APP | Harald Welte | 2011-07-29 | 1 | -2/+14 |
| | | | | | | | When we went through a Download -> Manifest cycle, we can switch back to dfuIDLE. However, we need to memorize that manifest had already happened and thus should treat a host-initiated bus reset as trigger to switch back into application mode. | ||||
* | USB driver: use the DFU-provided function to send EP0 data | Harald Welte | 2011-07-07 | 1 | -48/+1 |
| | | | | | There is no point in replicating the functionality that already exists in the DFU section of the flash | ||||
* | dfu: fix EP0 IN trasnfers that are even multiple of 8 | Harald Welte | 2011-07-07 | 1 | -4/+14 |
| | | | | | | We have to send a ZLP at the end of such transfers, otherwise the host will time out at the end of the transfer. This resulted in multi-second delays for recognizing the SIMtrace hardware by the USB host. | ||||
* | simtrace: initialize sniffer mode right after start-up | Harald Welte | 2011-06-30 | 1 | -18/+22 |
| | |||||
* | simtrace: switch VCC_SIM into output mode, as we use it to supply Vcc | Harald Welte | 2011-06-21 | 1 | -2/+8 |
| | | | | | | This is just a temp rework in the 1st generation prototype, as the bus switch has too high resistance for passing throuhg Vcc from the phone to the SIM. | ||||
* | simtrace: add VCC_PHINE IRQ detection | Harald Welte | 2011-06-21 | 1 | -0/+19 |
| | |||||
* | simtrace: use better names for GPIO lines | Harald Welte | 2011-06-21 | 1 | -4/+5 |
| | |||||
* | simtrace: introduce mode sniffer / mitm switching | Harald Welte | 2011-06-17 | 3 | -8/+58 |
| | |||||
* | simtrace: add support for the analog bus switch | Harald Welte | 2011-06-16 | 4 | -2/+94 |
| |