From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60129) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XlgDq-00020z-OG for qemu-devel@nongnu.org; Tue, 04 Nov 2014 10:40:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XlgDf-0000Ld-Tf for qemu-devel@nongnu.org; Tue, 04 Nov 2014 10:40:42 -0500 Received: from lvps176-28-13-145.dedicated.hosteurope.de ([176.28.13.145]:57807) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XlgDf-0000LG-KU for qemu-devel@nongnu.org; Tue, 04 Nov 2014 10:40:31 -0500 From: Tim Sander Date: Tue, 04 Nov 2014 16:40:30 +0100 Message-ID: <7535204.RqqrXAanLL@dabox> In-Reply-To: References: <1533701.HoIoT00ynE@dabox> <2195206.F4HeItVKYs@dabox> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [Qemu-devel] State of ARM FIQ in Qemu List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Greg Bellows Cc: QEMU Developers Hi Greg > Ah... Yes, using A9 (GICv1) which means you don't have grouping without the > security extensions. Ok switching the GIC to version 2 works seems to work. In a way that Linux still boots up and i get a FIQ. I have some problems still: It seems as if the exeption of the bugsplat below is called from handle_fasteoi_irq (or is it just interrupted?). Which would mean that the cpu is not jumping to the FIQ handler but the normal irq handler. This might point to a problem in the qemu FIQ code. But i am not sure, so the error might also be in the linux user mode. I have loaded a firmware my driver module with "set_fiq_handler" but the area where the fiq has landed (0xfff1240) is filled completly with zeros? Best regards Tim Bad mode in data abort handler detected Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP ARM Modules linked in: firq(O) ipv6 CPU: 0 PID: 103 Comm: systemd-udevd Tainted: G O 3.14.0 #1 task: bf2b9300 ti: bf362000 task.ti: bf362000 PC is at 0xffff1240 LR is at handle_fasteoi_irq+0x9c/0x13c pc : [] lr : [<8005cda0>] psr: 600f01d1 sp : bf363e70 ip : 07a7e79d fp : 00000000 r10: 76f92008 r9 : 80590080 r8 : 76e8e4d0 r7 : f8200100 r6 : bf363fb0 r5 : bf008414 r4 : bf0083c0 r3 : 80230d04 r2 : 0000002f r1 : 00000000 r0 : bf0083c0 Flags: nZCv IRQs off FIQs off Mode FIQ_32 ISA ARM Segment user Control: 10c53c7d Table: 60004059 DAC: 00000015 Process systemd-udevd (pid: 103, stack limit = 0xbf362240) Stack: (0xbf363e70 to 0xbf364000) 3e60: bf0083c0 00000000 0000002f 80230d04 3e80: bf0083c0 bf008414 bf363fb0 f8200100 76e8e4d0 80590080 76f92008 00000000 3ea0: 07a7e79d bf363e70 8005cda0 ffff1240 600f01d1 ffffffff 8005cd04 0000002f 3ec0: 0000002f 800598bc 8058cc70 8000ed00 f820010c 8059684c bf363ef8 80008528 3ee0: 80023730 80023744 200f0113 ffffffff bf363f2c 80012180 00000000 805baa00 3f00: 00000000 00000100 00000002 00000022 00000000 bf362000 76e8e4d0 80590080 3f20: 76f92008 00000000 0000000a bf363f40 80023730 80023744 200f0113 ffffffff 3f40: bf007a14 8059ac00 00000000 0000000a ffff8dd7 00400140 bf0079c0 8058cc70 3f60: 00000022 00000000 f8200100 76e8e4d0 76f9201c 76f92008 00000000 80023af0 3f80: 8058cc70 8000ed04 f820010c 8059684c bf363fb0 80008528 00000000 76dd3b44 3fa0: 600f0010 ffffffff 0000000c 8001233c 00000000 00000000 76f93428 76f93428 3fc0: 76f93438 00000000 76f93448 0000000c 76e8e4d0 76f9201c 76f92008 00000000 3fe0: 00000000 7ec115c0 76f60914 76dd3b44 600f0010 ffffffff 9fffd821 9fffdc21 [<8005cda0>] (handle_fasteoi_irq) from [<80230d04>] (gic_eoi_irq+0x0/0x4c) [<80230d04>] (gic_eoi_irq) from [] (0xf8200100) Code: ee02af10 f57ff06f e59d8000 e59d9004 (e599b00c) ---[ end trace 3dc3571209a017e1 ]--- Kernel panic - not syncing: Fatal exception in interrupt