[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <535A6873.9020404@roeck-us.net>
Date: Fri, 25 Apr 2014 06:51:47 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: monstr@...str.eu
CC: linux-kernel@...r.kernel.org
Subject: Re: Microblaze image hanging in qemu with 3.15-rc
On 04/25/2014 06:29 AM, Guenter Roeck wrote:
> On 04/25/2014 12:25 AM, Michal Simek wrote:
> [ ... ]
>
>>
>> It should be pretty easy to fix it in timer_write function like this.
>>
>> diff --git a/hw/timer/xilinx_timer.c b/hw/timer/xilinx_timer.c
>> index 6113b97..3ff1da9 100644
>> --- a/hw/timer/xilinx_timer.c
>> +++ b/hw/timer/xilinx_timer.c
>> @@ -169,7 +169,7 @@ timer_write(void *opaque, hwaddr addr,
>> if (value & TCSR_TINT)
>> value &= ~TCSR_TINT;
>>
>> - xt->regs[addr] = value;
>> + xt->regs[addr] = value & 0x7ff;
>> if (value & TCSR_ENT)
>> timer_enable(xt);
>> break;
>>
>
> Hi Michal,
>
> that fixes endianness detection, but the image is still hanging.
>
> Here is the log:
>
> NR_IRQS:33
> /plb@...nterrupt-controller@...00000: num_irq=4, edge=0xa
> ERROR: CPU CCF input clock not found
> Reading TCSR0 returned 0x0, expected 0x1
> Switch to big endian mode
> /plb@...imer@...00000: irq=1
> ERROR: timer CCF input clock not found
> ERROR: Using CPU clock frequency
> xilinx_timer_set_mode: shutdown
> xilinx_timer_set_mode: periodic
> sched_clock: 32 bits at 62MHz, resolution 16ns, wraps every 68719476720ns
> Calibrating delay loop... QEMU: Terminated
>
> I added a couple of log messages to make sure that the mode is detected correctly.
> Any idea what else might be wrong ?
>
Never mind, I found it. Same problem with interrupt handler.
Can you give me the valid bit mask for intc_baseaddr + MER ?
Thanks,
Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists