- 12 2月, 2013 1 次提交
-
-
由 Michal Simek 提交于
Fix coding style issues reported by checkpatch.pl. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 14 12月, 2012 1 次提交
-
-
由 Michal Simek 提交于
Adding static to internal variables and functions. Sparse warnings: arch/microblaze/kernel/prom.c:55:6: warning: symbol 'stdout' was not declared. Should it be static? arch/microblaze/kernel/prom.c:57:12: warning: symbol 'early_init_dt_scan_chosen_serial' was not declared. Should it be static? CC arch/microblaze/kernel/prom.o arch/microblaze/kernel/intc.c:102:5: warning: symbol 'xintc_map' was not declared. Should it be static? CC arch/microblaze/kernel/intc.o Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
- 13 12月, 2012 1 次提交
-
-
由 Michal Simek 提交于
Intc_enable_or_unmask() is called at the last stage of handle_level_irq(). This function enables the irq first (Write INTC.SIE) and clear ISR next (Write INTC.IAR). This would create problems that processor will get into a new interrupt as soon as SIE is written because the previous level interrupt has been captured by INTC. If the description bring some puzzles, here is the details of how interrupt is handled for MicroBlaze after Interrupt signal is detected: 1. disable INTC (INTC.CIE = 1) 2. Acknowledge INTC (INTC.IAR = 1) 3. gets into interrupt source's handler, for example, timer's handler 4. Timer is interrupt handler acknowledge Timer Interrupt Status (Timer.TCSR0[23] = 1), and return 5. Enable INTC (INTC.SIE = 1) 6. Acknowledge INTC (INTC.IAR = 1) INTC continue to capture source inputs even if INTC is disabled (INTC.IER == 1). So between the gap of step 2 and step 3, the level interrupt from source makes INTC captures a new interrupt and thus the INTC.ISR = 1 during step 3, 4, and 5. When INTC is enabled in step 5, INTC's interrupt output will go high immediately. In summary, the driver should issue step 6 before step 5. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
- 23 3月, 2012 1 次提交
-
-
由 Michal Simek 提交于
Change report in bootlog: Origin: xlnx,xps-intc-1.00.a #0 at 0xc8000000, num_irq=6, edge=0x4 xlnx,xps-timer-1.00.a #0 at 0xc8004000, irq=2 New: interrupt-controller #0 at 0xc8000000, num_irq=6, edge=0x4 system-timer #0 at 0xc8004000, irq=2 Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 16 2月, 2012 1 次提交
-
-
由 Grant Likely 提交于
This patch converts Microblaze to use the irq_domain remapper and get away from hard coding the offset between hwirq number and the linux irq number space. This also paves the way for multiple interrupt controllers. v2: Don't enable SPARSE_IRQ and keep NR_IRQS set to 33 Signed-off-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NMichal Simek <monstr@monstr.eu> Cc: Rob Herring <rob.herring@calxeda.com> Cc: John Williams <john.williams@petalogix.com> Cc: John Linn <john.linn@xilinx.com>
-
- 05 1月, 2012 3 次提交
-
-
由 Michal Simek 提交于
As has been discussed many times[1], Using NO_IRQ set to anything other than 0 is bug waiting to happen since many drivers follow the pattern "if (!irq)" for testing whether or not an irq has been set. This patch changes the Microblaze NO_IRQ setting from -1 to 0 to bring it in line with most of the rest of the kernel. It also prepares for Microblaze eventually supporting multiple interrupt controllers by breaking the assumption that hwirq# == Linux IRQ#. The Linux IRQ number is just a cookie with no guarantee of a direct relationship with the hardware irq arrangement. At this point, Microblaze interrupt handling only supports only one instance of one kind of interrupt controller (xilinx_intc). This change shouldn't affect any architecture code outside of the interrupt controller driver and the irq_of mapping. Updated to 3.2 and to use irq_data.hwirq by Rob Herring. Tested and fixed by Michal Simek. [1] http://lkml.org/lkml/2005/11/21/221Signed-off-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NRob Herring <rob.herring@calxeda.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
intr_type is mask - change name. s/intr_type/intr_mask/g Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Calling of_find_compatible_node instead of calling private code which does the same. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 27 7月, 2011 1 次提交
-
-
由 Michal Simek 提交于
When interrupt controller uses 32 interrupts lines the kernel show error message about mismatch in kind-of-intr parameter because it exceeds u32. Recast fixs this issue. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 01 4月, 2011 1 次提交
-
-
由 Michal Simek 提交于
Patches: "microblaze: Convert to new irq function names" sha (4adc192e) and "microblaze: Use generic show_interrupts()" sha(9d61c18b) should also setup edge/level in irq_set_chip_and_handler_name name parameter. Error log: ~ # cat /proc/interrupts CPU0 2: 2 Xilinx INTC-Xilinx INTC eth0 3: 2 Xilinx INTC-Xilinx INTC eth0 4: 241 Xilinx INTC-Xilinx INTC timer 6: 108 Xilinx INTC-Xilinx INTC serial Fixed: ~ # cat /proc/interrupts CPU0 2: 2 Xilinx INTC-level eth0 3: 2 Xilinx INTC-level eth0 4: 238 Xilinx INTC-edge timer 6: 108 Xilinx INTC-level serial Signed-off-by: NMichal Simek <monstr@monstr.eu> Acked-by: NThomas Gleixner <tglx@linutronix.de> --- v2: Fix exchanged edge and level
-
- 29 3月, 2011 1 次提交
-
-
由 Thomas Gleixner 提交于
Namespace conversion scripted with coccinelle. Also retrieve the irq type from irq_data in intc_enable_or_unmask() Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 09 3月, 2011 2 次提交
-
-
由 Thomas Gleixner 提交于
Use proper irq_desc wrappers while at it. Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Thomas Gleixner 提交于
irq_chip.end got obsolete with the removal of __do_IRQ(). Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Cc: Peter Zijlstra <peterz@infradead.org> Tested-by: NMichal Simek <monstr@monstr.eu> LKML-Reference: <20110203004210.240154507@linutronix.de>
-
- 21 10月, 2010 3 次提交
-
-
由 Michal Simek 提交于
Microblaze little-endian toolchain exports __MICROBLAZEEL__ which is used in the kernel to identify little/big endian. The most of the changes are in loading values from DTB which is always big endian. Little endian platforms are based on new AXI bus which has impact to early uartlite initialization. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Device-tree BSP generates longer compatible properties that's why we can remove extra/old one. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Joe Perches 提交于
Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 14 12月, 2009 1 次提交
-
-
由 steve@digidescorp.com 提交于
Level interrupts need to be ack'd in the unmask handler, as in powerpc. Among other issues, this bug causes the system clock to appear to run at double-speed. Signed-off-by: NSteven J. Magnani <steve@digidescorp.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 18 8月, 2009 1 次提交
-
-
由 John Williams 提交于
This code path doesn't test any returned pointers for NULL, leading to a bad kernel page fault if there's no timer/intc found. Slightly better is to BUG(), but even better still would be a printk beforehand. Signed-off-by: NJohn Williams <john.williams@petalogix.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 18 5月, 2009 1 次提交
-
-
由 Michal Simek 提交于
+ Fix typographic fault. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
- 27 3月, 2009 1 次提交
-
-
由 Michal Simek 提交于
Reviewed-by: NThomas Gleixner <tglx@linutronix.de> Reviewed-by: NIngo Molnar <mingo@elte.hu> Reviewed-by: NStephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: NJohn Linn <john.linn@xilinx.com> Acked-by: NJohn Williams <john.williams@petalogix.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-