summaryrefslogtreecommitdiff
path: root/src/rfid_asic_rc632.c
Commit message (Collapse)AuthorAgeFilesLines
* RC632: don't use RFID_14443A_SPEED_???K to index linear arrayHEADmasterHarald Welte2011-04-081-4/+4
| | | | | | | | The RFID_14443A_SPEED_???K are defined as 0x01, 0x02, 0x04, 0x08 to allow for bitmasks, thus we cannot directly use them to index an array. Instead we now use named array initializers Thanks to Gianni Tedesco for spotting this.
* Add WRITE support for ISO15693 (Bjoern Riemer)laforge2008-05-241-2/+6
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2106 e0336214-984f-0b4b-a45f-81c69e1f0ede
* add CRC check to ISO15693 (Bjoern Riemer)laforge2008-05-241-2/+4
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2104 e0336214-984f-0b4b-a45f-81c69e1f0ede
* remove extra reads of primary status register (Bjoern Riemer)laforge2008-05-241-4/+0
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2103 e0336214-984f-0b4b-a45f-81c69e1f0ede
* * use RC632_CMD_IDLE instead of 0x00 to improve readabilitylaforge2008-05-241-2/+1
| | | | | | | * don't write to read-only ERROR_FLAG register (Mate Soos) git-svn-id: https://svn.gnumonks.org/trunk/librfid@2102 e0336214-984f-0b4b-a45f-81c69e1f0ede
* Follow-up fixes for IRQ/ERR bitmaks mess (Bjoern Riemer) Patch 011laforge2008-05-241-7/+36
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2101 e0336214-984f-0b4b-a45f-81c69e1f0ede
* add function to set mifare key from internal eepromlaforge2008-02-241-0/+47
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2086 e0336214-984f-0b4b-a45f-81c69e1f0ede
* finish eeprom read/write implementations for RC632laforge2008-02-081-10/+65
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2084 e0336214-984f-0b4b-a45f-81c69e1f0ede
* use DEBUGP, not printf (Bjoern Riemer)laforge2008-02-081-2/+2
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2081 e0336214-984f-0b4b-a45f-81c69e1f0ede
* disable debug in the default compile (Uwe Hermann)laforge2008-02-081-3/+1
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2074 e0336214-984f-0b4b-a45f-81c69e1f0ede
* * implement rfid_reader_{get,set}opt()laforge2008-01-291-304/+440
| | | | | | | | | | | | | | | | | | | * move get/set environment and get firmware api version to reader_{get,set}opt() * merge rc632 power_up and power_down functions in new power function * merge rc632 layer 2 protocol init functions into one * rename parameters of rfid_layer2_{get,set}opt() * move rf_power() function of reader to new setopt() interface * merge reader layer 2 protocol init functiosn into one * move most of the iso15693 anticol implementation from asic into layer2 code * make most iso15693 parameters configurable via layer2_{get,set}opt() * implement AFI for iso15693 inventory request * introduce new generic 'rc632 asic based reader' functions * use those functions from openpcd, cm5121 and spidev readers * use new register initialization script data structure for rc632 init functions * TODO update git-svn-id: https://svn.gnumonks.org/trunk/librfid@2064 e0336214-984f-0b4b-a45f-81c69e1f0ede
* partial ISO15693 support (based on patch by Bjoern Kaiser)laforge2008-01-271-171/+425
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2057 e0336214-984f-0b4b-a45f-81c69e1f0ede
* * improve scanning support:laforge2008-01-271-16/+31
| | | | | | | | | | | | ** first try REQA/HLTA/REQA/HLTA until no more tags found ** then power off the field and start from the beginning again * add proper RF field on/off switching support to all readers * reduce timer to actual value, don't multiply by 10 * detect collisions during transceive_sf (ATQA) * make UID length depend on cascade level, not ATQA git-svn-id: https://svn.gnumonks.org/trunk/librfid@2056 e0336214-984f-0b4b-a45f-81c69e1f0ede
* coding style fixeslaforge2008-01-261-10/+7
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2054 e0336214-984f-0b4b-a45f-81c69e1f0ede
* update FSF postal address (Jeremy Laine)laforge2008-01-231-1/+1
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@2041 e0336214-984f-0b4b-a45f-81c69e1f0ede
* added win32 support for MINGW32-compiler/cross-compilermeri2007-04-301-2/+4
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1989 e0336214-984f-0b4b-a45f-81c69e1f0ede
* fixed ISO 14443A anticollisionmeri2007-04-251-9/+11
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1988 e0336214-984f-0b4b-a45f-81c69e1f0ede
* Fix "key format error" on cm5121 (Pierrick Hascoet ↵ploetz2007-02-141-2/+2
| | | | | | <pierrick.hascoet@hydromel.net>) git-svn-id: https://svn.gnumonks.org/trunk/librfid@1976 e0336214-984f-0b4b-a45f-81c69e1f0ede
* - fix mifare write supportlaforge2006-11-281-9/+37
| | | | | | | | | | - make mifare auth more reliable - add mifare permission / access bit en/decoding - some more 15693 bits - add new 'mifare-tool' program git-svn-id: https://svn.gnumonks.org/trunk/librfid@1928 e0336214-984f-0b4b-a45f-81c69e1f0ede
* - remove prototypes for already-removed _register() functions from headerslaforge2006-10-141-4/+4
| | | | | | | | | - automatically define LIBRFID_STATIC if LIBRFID_FIRMWARE is set - remove any references to printf/snprintf - remove bogus free() in 14443b_init git-svn-id: https://svn.gnumonks.org/trunk/librfid@1905 e0336214-984f-0b4b-a45f-81c69e1f0ede
* Prepare RFID compilation in firmware modelaforge2006-10-141-7/+7
| | | | | | | | | | | | | | - switch from linked lists to static arrays - remove all non-handle dynamic allocations (at the expense of stack) - declare all proto/reader/asic/layer2 structures as const - wrap all handle allocations in macros that expand to references to static structures in case of firmware mode - update copyright notices - add skeleton code for openpcd-inside-firmware driver - update TODO with remaining TODO for firmware mode git-svn-id: https://svn.gnumonks.org/trunk/librfid@1903 e0336214-984f-0b4b-a45f-81c69e1f0ede
* fix various compile warnings. code cleanuplaforge2006-09-301-4/+4
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1891 e0336214-984f-0b4b-a45f-81c69e1f0ede
* memset the size of the structure, rather than the pointer to it. Usually ↵laforge2006-09-221-1/+1
| | | | | | this problem results in memsetting too litttle... but here we actually have a less-than-four-byte-structure and we end up messing up the stack :( git-svn-id: https://svn.gnumonks.org/trunk/librfid@1886 e0336214-984f-0b4b-a45f-81c69e1f0ede
* - fix treatment of rx_length in low-level transceive routineslaforge2006-08-161-3/+15
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1870 e0336214-984f-0b4b-a45f-81c69e1f0ede
* add timer/irq handling, disabledlaforge2006-08-161-4/+119
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1867 e0336214-984f-0b4b-a45f-81c69e1f0ede
* make sure we never rx/tx frames > 64 bytes because stupid cm5121 is not able tolaforge2006-06-141-1/+3
| | | | | | | | refill FIFO during rx/tx operation due to latency issues. This needs to be put in a reader specific field, rather than an ASIC specific field. git-svn-id: https://svn.gnumonks.org/trunk/librfid@1823 e0336214-984f-0b4b-a45f-81c69e1f0ede
* fix multi-fifo-writes. still doesn't work, I think we have to limit the ↵laforge2006-06-141-1/+2
| | | | | | framesize to 64bytes with the cm5121 git-svn-id: https://svn.gnumonks.org/trunk/librfid@1822 e0336214-984f-0b4b-a45f-81c69e1f0ede
* - make timeout more liberallaforge2006-06-141-15/+60
| | | | | | | - implement fifo refill for transmit/transceive > 64bytes git-svn-id: https://svn.gnumonks.org/trunk/librfid@1821 e0336214-984f-0b4b-a45f-81c69e1f0ede
* s/transcieve/transceive/g (Henryk Ploetz)laforge2006-06-131-17/+17
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1817 e0336214-984f-0b4b-a45f-81c69e1f0ede
* patch introduces -ETIMEDOUT as an error return code in case of ↵laforge2006-06-131-2/+1
| | | | | | | | timeout. (For *_close it's important to distinguish between 'real' errors and timeout.) (Henryk Ploetz) git-svn-id: https://svn.gnumonks.org/trunk/librfid@1815 e0336214-984f-0b4b-a45f-81c69e1f0ede
* Fix mifare authentication for multiple blockslaforge2006-06-131-3/+0
| | | | | | | | | | | Around line 1320 in rfid_asic_rc632.c the CRYPTO1 bit in the RC632 is disabled. The RC632 docs state that this bit can only be set by a successfull AUTHENT2 command, but may be cleared by the user to disable encryption thereafter (but they don't say why anyone would want to do that). (Henryk Ploetz) git-svn-id: https://svn.gnumonks.org/trunk/librfid@1814 e0336214-984f-0b4b-a45f-81c69e1f0ede
* add some very rudimentary timeout handling, i.e. abort if there is no ↵laforge2006-05-271-3/+9
| | | | | | response. tolerance = 10000% git-svn-id: https://svn.gnumonks.org/trunk/librfid@1807 e0336214-984f-0b4b-a45f-81c69e1f0ede
* move include directory for pkginclude compliancelaforge2005-11-081-6/+6
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1664 e0336214-984f-0b4b-a45f-81c69e1f0ede
* implement and test baud rates of up to 848klaforge2005-11-081-6/+129
| | | | git-svn-id: https://svn.gnumonks.org/trunk/librfid@1663 e0336214-984f-0b4b-a45f-81c69e1f0ede
* - better layering abstracitonlaforge2005-11-081-0/+17
| | | | | | | | | - differentiate between library internal definitions and public ones - implement getopt/setopt like get/setsockopt - offer speed changing controls git-svn-id: https://svn.gnumonks.org/trunk/librfid@1662 e0336214-984f-0b4b-a45f-81c69e1f0ede
* use autoconf/automakelaforge2005-11-081-0/+1295
git-svn-id: https://svn.gnumonks.org/trunk/librfid@1658 e0336214-984f-0b4b-a45f-81c69e1f0ede
personal git repositories of Harald Welte. Your mileage may vary