summaryrefslogtreecommitdiff
path: root/firmware/src/os
Commit message (Collapse)AuthorAgeFilesLines
* - we have to respond with a STALL to SET_CONFIGURATIONlaforge2006-10-031-31/+33
| | | | | | | | | - add a comment about this strange fact - some code cleanup - add missing 'break' after end of GET_DESCRIPTOR USB_DT_DEVICE git-svn-id: https://svn.openpcd.org:2342/trunk@253 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - add proper system interrupt (shared) demultiplexing codelaforge2006-10-016-16/+198
| | | | | | | - port debug unit, watchdog timer, periodic interval timer to system_irq.c git-svn-id: https://svn.openpcd.org:2342/trunk@252 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* synchronize bit clock based on software trigger (needed for cdiv_sync)laforge2006-10-011-1/+2
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@251 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - add command to read rc632 serial number via USBlaforge2006-10-011-0/+11
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@250 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* re-define REQ_CTX_STATE_FREE != 0 to detect bugslaforge2006-10-011-1/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@247 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* initialize req_ctx state as free.laforge2006-10-011-0/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@246 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* clean up dbgu startup printout laforge2006-10-011-8/+8
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@245 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* split irq handler in two parts to make it callable from FIQlaforge2006-10-011-2/+10
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@244 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - finish implementation of timers based on PITlaforge2006-10-014-1/+217
| | | | | | | - add [untested] code for timer-based LED blink codes git-svn-id: https://svn.openpcd.org:2342/trunk@242 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - add (currently inactive) code for the watch dog timerlaforge2006-09-303-5/+23
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@240 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - Add revision to USB descriptorlaforge2006-09-301-1/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@237 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* add stub for later implementation of suspend/resumelaforge2006-09-301-2/+11
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@236 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - more accurate (and USB compliant) state transitionslaforge2006-09-302-45/+161
| | | | | | | - make gcc spit a bit less warnings git-svn-id: https://svn.openpcd.org:2342/trunk@235 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - free all pending contexts when endpoint is being resetlaforge2006-09-301-5/+7
| | | | | | | - speed up usb processing by putting respective sections in RAM git-svn-id: https://svn.openpcd.org:2342/trunk@234 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - add dbgu key '9' for software resetlaforge2006-09-271-4/+8
| | | | | | | - fix dbgu welcome message git-svn-id: https://svn.openpcd.org:2342/trunk@233 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - increase number of large (2k) contextx to 8laforge2006-09-272-4/+5
| | | | | | | | | - move req_ctx_find_get into ram, since this is frequently used within interrupt handlers and thus ought to be as fast as possible - correctly initialize req_ctx size (bugfix!) git-svn-id: https://svn.openpcd.org:2342/trunk@232 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - fix minor issues with USB string supportlaforge2006-09-251-1/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@228 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - Include tool for Converting ASCII to UTF-16LE in C-Headerlaforge2006-09-251-30/+30
| | | | | | | | - Build UTF-16LE USB String descriptors from ASCII File - Introduce USB String Descriptor to DFU and runtime firmware git-svn-id: https://svn.openpcd.org:2342/trunk@227 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* use officially assigned usb vendor and product id'slaforge2006-09-251-5/+4
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@225 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - move large rctx definitions to req_ctx.hlaforge2006-09-227-102/+205
| | | | | | | | | | | | | | | | - add more fine-grained debugging macros in pcd_enumarate.c - resolve race conditions between main-loop ep_refill and irq-triggered ep_refill by adding one irq-[b]locking variant - consolidate endpoint reset code into reset_ep() - add code to handle correct transmission and reception of usb transfers larger than endpoint size - use new jump address (0x104000) in DFU Cstartup.S - move main_usb to pcd subdirectory - fix include/compile.h make dependencies - make usb benchmark code use new large req_ctx git-svn-id: https://svn.openpcd.org:2342/trunk@219 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* fix completely broken logic of processing pending outbound packets. We now dolaforge2006-09-221-17/+5
| | | | | | | | | | | | | | | | | | all the req_ctx state changes from within pcd_handler.c and only expose the refill_ep() functions. It's questionable whether we need to keep calling those functions all the time either. Once kicked off, the tx completion interrupts of the UDC will refill the pipe as long as there is data available. So realistically speaking, we'd only need to trigger tx once (and keep triggering until no EBUSY or other error is signalled anymore). Some form of state machine would be fine for doing this, one that registers a timer with the core OS timer (once we have something equivalent to 'struct timer_list'. git-svn-id: https://svn.openpcd.org:2342/trunk@217 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* some code cleanuplaforge2006-09-211-7/+15
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@214 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* - Add OpenPICC register definition (and USB command handling)laforge2006-09-2015-95/+234
| | | | | | | | | | | | | | | | | | | - Add automatic generation of include/compile.h with svn revision and compiletime - Add openpcd_compile_version structure to obtain version via USB - Move LED commands into new CMD_CLS_GENERIC family - Update TODO - Add support for large (2048 byte) request contexts in addition to 64byte - Shrink req_ctx size by collapsing rx and tx buffer into one - move definition of DFU_API_LOCATION to header file - Implement large req_ctx aware USB transmit / refill routines - Implement TX refilling for IRQ Endpoint - Print version information at startup time - move some generic req_ctx processing into usb_handler.c - Some further work on DFU (still not finished) - Only use '-Os' for DFU, use '-O2' for application code git-svn-id: https://svn.openpcd.org:2342/trunk@208 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* move flash code into dfulaforge2006-09-201-45/+0
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@200 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* fix location of dfu_apilaforge2006-09-201-1/+1
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@199 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* add GPL disclaimer to all C files that I wrotelaforge2006-09-1314-5/+244
| | | | git-svn-id: https://svn.openpcd.org:2342/trunk@195 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* Completely separate DFU from application program, we now have a real bootloader.laforge2006-09-135-766/+4
| | | | | | | | | | | | | | DFU occupies 0x00100000 - 0x00100fff in flash, application starts at 0x00101000. DFU also occupies the first couple of bytes in SRAM, application starts at 0x00200024. In order to produce a samba-flashable image, first build dfu.bin by typing 'make -f Makefule.dfu', succeeded by 'make TARGET=... DEBUG=... BOARD=...' and then concatenating the two files together, e.g. cat dfu.bin main_reqa.bin > flash.bin. Actual flashing via DFU is still not operational, but will be implemented next git-svn-id: https://svn.openpcd.org:2342/trunk@194 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
* move to new directorylaforge2006-09-1231-0/+3058
git-svn-id: https://svn.openpcd.org:2342/trunk@191 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
personal git repositories of Harald Welte. Your mileage may vary