summaryrefslogtreecommitdiff
path: root/openpicc
Commit message (Collapse)AuthorAgeFilesLines
* Make the diffmiller decoder a __ramfunc. Should severely increase decoder ↵henryk2008-05-222-2/+2
| | | | | | speed (needs testing), but takes up 4k of RAM git-svn-id: https://svn.openpcd.org:2342/trunk@477 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Switch SSC DMA Tx buffer allocation to dynamic, frees about 16k of RAM (the ↵henryk2008-05-221-20/+46
| | | | | | four static buffers took about 18k, the new dynamic allocations take about 2k) git-svn-id: https://svn.openpcd.org:2342/trunk@476 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add code to change uid/nonce on the flyhenryk2008-04-281-0/+44
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@475 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Check received length of the frame that is supposed to contain the PCD challengehenryk2008-04-282-5/+30
| | | | | | | Add code to get/set uid/nonce git-svn-id: https://svn.openpcd.org:2342/trunk@474 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Remove obsolete commandhenryk2008-03-211-20/+0
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@473 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Change inf for OpenPICChenryk2008-03-181-6/+6
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@472 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add new hardware revision, make it the defaulthenryk2008-03-183-3/+15
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@471 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Print error code in case of errorhenryk2008-03-181-1/+3
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@470 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* set_nonce functionhenryk2008-03-181-24/+35
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@469 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* this would be the more correct parity valuehenryk2008-03-181-0/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@468 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Scale back the debug outputhenryk2008-03-181-6/+38
| | | | | | | Print UID, nonce and response git-svn-id: https://svn.openpcd.org:2342/trunk@467 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Scale back the debug outputhenryk2008-03-181-1/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@466 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Remove performance print, it's blocking the IRQ too long which in turn will ↵henryk2008-03-181-0/+2
| | | | | | | | | make the SSC TXSYN IRQ arrive late, which will make the SSC not switch to CONTINUOUS in time which will truncate all frames longer than 3.5 data bytes git-svn-id: https://svn.openpcd.org:2342/trunk@465 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Actually use the received data for the decision whether to send anticol frameshenryk2008-03-181-4/+8
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@464 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Only set up clocks once in the layer 2a codehenryk2008-03-181-6/+17
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@463 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add dynamic UID, nonce encoding on the flyhenryk2008-03-172-26/+92
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@462 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Use diffmiller performance measurement toolshenryk2008-03-171-0/+3
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@461 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add performance measurement toolshenryk2008-03-172-0/+23
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@460 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Change used interruptshenryk2008-03-171-2/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@459 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Revert since the 'faster' version was not correct (and a fixed version was ↵henryk2008-03-151-4/+5
| | | | | | even slower) git-svn-id: https://svn.openpcd.org:2342/trunk@458 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Fix the clock gating for the new layer 2 codehenryk2008-03-152-7/+33
| | | | | | | Only perform the switch to continous when necessary since it has serious side effects in the current hardware (we really need TF ored into the clock gating) git-svn-id: https://svn.openpcd.org:2342/trunk@457 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Another 36 carrier cycles (is not fully correct though)henryk2008-03-141-1/+13
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@456 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Enhances timing by 14 carrier cycleshenryk2008-03-141-5/+4
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@455 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Faked anticollision working now. During stress test (OpenPCD reqa firmware ↵henryk2008-03-147-39/+67
| | | | | | in anticol mode performing one cycle every 70ms) there were 52 late frames in 15992. git-svn-id: https://svn.openpcd.org:2342/trunk@454 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Better Outputhenryk2008-03-142-3/+4
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@453 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add T/C based receiver code with integrated miller decoderhenryk2008-03-1419-132/+400
| | | | | | | | | Integrate T/C receiver into iso14443 layer 2a Add state field to iso14443_frame, rename ssc buffer state constants Sniffer seems to work with the new code git-svn-id: https://svn.openpcd.org:2342/trunk@452 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add forgotten sanity checkhenryk2008-03-131-0/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@451 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Remove SSC DMA Rx buffers that are not going to be used for now and take up ↵henryk2008-03-122-1/+8
| | | | | | precious RAM git-svn-id: https://svn.openpcd.org:2342/trunk@450 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Further optimizations, is now down to 1450 MCK/2 cycles for a 7 bit frame, ↵henryk2008-03-101-39/+29
| | | | | | that should be real-time capable git-svn-id: https://svn.openpcd.org:2342/trunk@449 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Further optimisation on the differential miller decoder, is now down to 1750 ↵henryk2008-03-102-135/+137
| | | | | | MCK/2 cycles for the short frame git-svn-id: https://svn.openpcd.org:2342/trunk@448 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add performance measurement codehenryk2008-03-109-65/+276
| | | | | | | Measure miller decoder performance git-svn-id: https://svn.openpcd.org:2342/trunk@447 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add size printouts before and after compilationhenryk2008-03-091-1/+11
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@446 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Fix sendinghenryk2008-03-094-21/+126
| | | | | | | | | | | Add Tx abort and SSC reset functionalities There is a bug workaround for a peculiarity in the SSC Tx: When it is set to START CONTINOUS while a transmission is in progress (started by START TF RISING EDGE, which is necessary for the correct timing) it will lose one (or two?) bits of sample data. The resetting of the start condition itself is necessary because the SSC will only transmit up to 64 bytes (32 bit times 16) per start condition Add performance counters for sent and received frames git-svn-id: https://svn.openpcd.org:2342/trunk@445 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* convert pio irq isr to a switching isrhenryk2008-03-054-11/+19
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@444 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Port over the differential miller decoder from the sniffonly host toolhenryk2008-03-0515-35/+523
| | | | | | | | Move clock switch to its own header file Specify default (and for non-clock switching capable hardware: single) clock source in hardware definitions git-svn-id: https://svn.openpcd.org:2342/trunk@443 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Copy over the relevant changes from the sniffonly branch pending integrationhenryk2008-03-0511-119/+228
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@442 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Forgotten commithenryk2008-03-051-0/+6
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@441 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* anticol working more often nowhenryk2008-03-042-0/+7
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@440 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Pretender does now do anticol. At least in some cases.henryk2008-03-031-47/+48
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@439 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Sending seems to be reliable now.henryk2008-03-034-14/+63
| | | | | | | Once in a while (about 1 in 20) there's an error condition that's not being recovered from, need to investigate git-svn-id: https://svn.openpcd.org:2342/trunk@438 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Implement transmissionhenryk2008-03-0310-43/+495
| | | | | | | | Implement a 'pretender' for PoC: Since Rx is not working properly we'll just pretend to have received something based on the approximate length. Clarify length calculations in machester encoder and remove obsolete test code git-svn-id: https://svn.openpcd.org:2342/trunk@437 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Forgotten include filehenryk2008-03-021-0/+96
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@436 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add pwm led code from sniffonly branchhenryk2008-03-014-19/+128
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@435 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* New cleaned-up (and then messed up again) SSC codehenryk2008-02-2918-1098/+943
| | | | | | | Better layering separation git-svn-id: https://svn.openpcd.org:2342/trunk@434 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add information about new hardware patchlevelhenryk2008-02-292-3/+19
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@433 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Modifications to USB code to allow blocks of more than 1 byte to be more ↵henryk2008-02-202-7/+34
| | | | | | | | | | efficiently sent. Should affect existing byte base code only marginally. (Note: Not compliant with FreeRTOS' braindead coding style) git-svn-id: https://svn.openpcd.org:2342/trunk@416 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Framework to support run-time hardware selection. Future hardware releases ↵henryk2008-02-1111-73/+149
| | | | | | | | | should be changed to be boot-time detectable (e.g. using the yet unused AD inputs) so that one image can be used for all releases git-svn-id: https://svn.openpcd.org:2342/trunk@411 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Add command to toggle PLL inhibitionhenryk2008-02-113-1/+13
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@410 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Remove old OpenBeacon remnantshenryk2008-02-091-28/+0
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@409 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Commit a first version of an iso 14443 layer 2 and a passive sniffer. Works ↵henryk2008-02-098-46/+389
| | | | | | for short frames, and sometimes even for long frames. Pending some major cleanup git-svn-id: https://svn.openpcd.org:2342/trunk@408 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
personal git repositories of Harald Welte. Your mileage may vary