Re: [PATCH 15/15] Do not rely on the initial state of TC/VPEbindings when doing cross VPE writes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 12, 2009 at 01:20:49PM -0700, Gandham, Raghu wrote:

> > -----Original Message-----
> > From: Ralf Baechle [mailto:ralf@xxxxxxxxxxxxxx] 
> > Sent: Monday, October 12, 2009 9:18 AM
> > To: Gandham, Raghu
> > Cc: Kevin D. Kissell; linux-mips@xxxxxxxxxxxxxx; Dearman, Chris
> > Subject: Re: [PATCH 15/15] Do not rely on the initial state 
> > of TC/VPEbindings when doing cross VPE writes
> > 
> > On Thu, Jul 02, 2009 at 02:46:33PM -0700, Gandham, Raghu wrote:
> > 
> > > > From: Kevin D. Kissell [mailto:kevink@xxxxxxxxxxxxx]
> > > > Sent: Wednesday, July 01, 2009 9:02 PM
> > > > To: Gandham, Raghu
> > > > Cc: linux-mips@xxxxxxxxxxxxxx; Dearman, Chris
> > > > Subject: Re: [PATCH 15/15] Do not rely on the initial state of 
> > > > TC/VPE bindings when doing cross VPE writes
> > > > 
> > > > Note that, regardless of the reset state, smtc_configure_tlb() 
> > > > should have at least temporarily bound TC 1 to VPE1, which may be 
> > > > why this never seemed to be a problem on the 34K.  If one 
> > wants to 
> > > > support designs with more than 2 VPEs, then this is 
> > probably one of 
> > > > the things that needs to be fixed.  That having been said, rather 
> > > > than adding a usually-redundant write_vpe_c0_vpeconf0() in that 
> > > > clause, wouldn't it
> > > be
> > > > cleaner to just move the MVP setting from the top of the 
> > loop to the 
> > > > point in the loop just after the TCs have been bound to 
> > the VPE in 
> > > > question, i.e.,
> > > > 
> > > >  454                 if (slop) {
> > > >  455                         if (tc != 0) {
> > > >  456                                 smtc_tc_setup(vpe,tc, cpu);
> > > >  457                                 cpu++;
> > > >  458                         }
> > > >  459                         printk(" %d", tc);
> > > >  460                         tc++;
> > > >  461                         slop--;
> > > >  462                 }
> > > > 
> > > >                         
> > write_vpe_c0_vpeconf0(read_vpe_c0_vpeconf0() 
> > > > | VPECONF0_MVP);
> > > > 
> > > >  463                 if (vpe != 0) {
> > > >  464                         /*
> > > >  465                          * Clear any stale software 
> > interrupts
> > > from
> > > > VPE's Cause
> > > >  466                          */
> > > > 
> > > > This should definitely be OK for a 34K, because it's 
> > being executed 
> > > > by TC0 in VPE0 and the reset state of VPE0 has MVP set.  If it 
> > > > weren't,
> > > > smtc_configure_tlb() would have failed.
> > > > 
> > > >           Regards,
> > > > 
> > > >           Kevin K.
> > > 
> > > 
> > > I will resend this patch with your suggestion.
> > 
> > Ping?  Don't think I ever received that, if you sent it.
> I resent the patch and it got checked-in. It is not appended to this
> mail thread though. 
> http://www.linux-mips.org/git?p=linux.git;a=commitdiff;h=d8e5f9fe5dab0e0
> 7985f2456cb6cc57788f53131

Ah, ok.  Thanks!

  Ralf


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux