On Tue, Mar 18, 2008 at 01:47:20PM +0900, Yoichi Yuasa wrote: > On Mon, 17 Mar 2008 16:16:35 +0000 > Ralf Baechle <ralf@xxxxxxxxxxxxxx> wrote: > > > On Mon, Mar 17, 2008 at 11:47:40PM +0900, Yoichi Yuasa wrote: > > > > > VR41xx, CP0 hazard is necessary between read_c0_count() and write_c0_compare(). > > > > Interesting. I wonder why you need this patch but nobody else? > > Three NOP are necessary on the TB0287(VR4131 board). That much was obvious from your patch. I was more wondering about this change: - write_c0_compare(read_c0_count()); + c0_timer_ack(); c0_timer_ack is defined as static void c0_timer_ack(void) { write_c0_compare(read_c0_compare()); } so your patch does a functional change there - even though it should not actually matter. So I was wondering if for some reason you need that change. Just interested - it looks a bit cleaner so I'm leaning to apply this change anyway. Ralf