summaryrefslogtreecommitdiffstats
path: root/NOTES
diff options
context:
space:
mode:
Diffstat (limited to 'NOTES')
-rw-r--r--NOTES52
1 files changed, 52 insertions, 0 deletions
diff --git a/NOTES b/NOTES
index 47b2d51..eacf43c 100644
--- a/NOTES
+++ b/NOTES
@@ -187,3 +187,55 @@ Register/DMA Configuration
a) Writting/Reading register values
b) Wait until <register1>=<value> on <register2>=<value> report error
c) ... ?
+
+IRQ Handling
+============
+ IRQ types: DMA IRQ, Event IRQ, other types
+ IRQ hardware source: To allow purely user-space implementation, as general
+ rule, only a single (standard) source should be used.
+ IRQ source: The dma/event engines, however, may detail this hardware source
+ and produce real IRQ source basing on the values of registers. For example,
+ for DMA IRQs the source may present engine number and for Event IRQs the
+ source may present event type.
+
+ Only types can be enabled or disabled. The sources are enabled/disabled
+ by enabling/disabling correspondent DMA engines or Event types. The expected
+ workflow is following:
+ * We enabling IRQs in user-space (normally setting some registers). Normally,
+ just an Event IRQs, the DMA if necessary will be managed by DMA engine itself.
+ * We waiting for standard IRQ from hardware (driver)
+ * In the user space, we are checking registers to find out the real source
+ of IRQ (driver reports us just hardware source), generating appropriate
+ events, and acknowledge IRQ. This is dependent on implementation and should
+ be managed inside event API.
+
+ I.e. the driver implements just two methods pcilib_wait_irq(hw_source),
+ pcilib_clear_irq(hw_source). Only a few hardware IRQ sources are defined.
+ In most cirstumances, the IRQ_SOURCE_DEFAULT is used.
+
+ The DMA engine may provide 3 additional methods, to enable, disable,
+ and acknowledge IRQ.
+
+ ... To be decided in details upon the need...
+
+Updating Firmware
+=================
+ - JTag should be connected to left USB connector on the board
+ - The computer should be tourned off and on before programming
+ - The application is called 'impact'
+ Cancel initial proposals
+ Left click on USB connection
+ Select "Boundary Scan" and double click
+ Click "Initiate Chain" on right element (left click)
+ Say yes, Select bit file, Cancel
+ Click "Assign new CF file" on right element (left click
+ Select the bit file
+ Select xv6vlx240t
+ Program
+ - Firmwares are in
+ v.2: /home/uros/Repo/UFO2_last_good_version_UFO2.bit
+ v.3: /home/uros/Repo/UFO3
+ Step5 - best working revision
+ Step6 - last revision
+
+ \ No newline at end of file