summaryrefslogtreecommitdiff
path: root/openpicc/application/pio_irq.c
diff options
context:
space:
mode:
authorhenryk <henryk@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2007-11-23 10:30:50 +0000
committerhenryk <henryk@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2007-11-23 10:30:50 +0000
commit062f55ca3ea77ebcace83aab4772c9cd3f28ec34 (patch)
tree22581f5054c35007e1a34113dd77f4818a3a67e3 /openpicc/application/pio_irq.c
parentae5309d51c484ddf052ee19fd2a76c058e927bcb (diff)
Commit status quo (pending cleanup of the debug and experimental code that I added during the last week)
Change freertos code to not mask FIQ, this finally makes the FIQ working (with approx 700ns +/- 100ns latency; yeah!) and therefore reception starts working Change to two times oversampling (keep four times oversampling code ifdef'd, extract all the magical values to a header file) because at four times oversampling every other sample is very close to a possible data edge and therefore not reliable git-svn-id: https://svn.openpcd.org:2342/trunk@347 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
Diffstat (limited to 'openpicc/application/pio_irq.c')
-rw-r--r--openpicc/application/pio_irq.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/openpicc/application/pio_irq.c b/openpicc/application/pio_irq.c
index 73dbae5..a92ceaa 100644
--- a/openpicc/application/pio_irq.c
+++ b/openpicc/application/pio_irq.c
@@ -148,7 +148,9 @@ void pio_irq_init_once(void)
}
#define USE_FIQ
+extern void my_fiq_handler(void);
extern void fiq_handler(void);
+
void pio_irq_init(void)
{
initialized = 1;
@@ -156,7 +158,7 @@ void pio_irq_init(void)
#ifdef USE_FIQ
AT91F_AIC_ConfigureIt(AT91C_ID_FIQ,
//0, AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL, &cdsync_cb);
- 0, AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL, &fiq_handler);
+ 0, AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL, &my_fiq_handler);
/* enable fast forcing for PIOA interrupt */
*AT91C_AIC_FFER = (1 << AT91C_ID_PIOA);
#else
personal git repositories of Harald Welte. Your mileage may vary