public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Prabhakar Kushwaha <prabhakar@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/4] powerpc/85xx:Fix MSR[DE] bit in MSR to support debugger
Date: Wed, 7 Mar 2012 09:30:25 +0530	[thread overview]
Message-ID: <4F56DD59.1080304@freescale.com> (raw)
In-Reply-To: <20120306144050.6CDFF202D7D@gemini.denx.de>

Hi Wolfgang,

On Tuesday 06 March 2012 08:10 PM, Wolfgang Denk wrote:
> Dear Prabhakar Kushwaha,
>
> In message<1329296042-28506-1-git-send-email-prabhakar@freescale.com>  you wrote:
>> Debugger's ability to debug an application is constrained by the
>> architecture's debug IP / run-control solution that may impose certain
>> requirements for the application itself.
>> Similarly, when referring to the e500 and e500v2 architecture, there are two
>> basic rules any application has to respect in order to allow full debugging
>> support:
>>          1. Keep MSR[DE] bit set
>>          2. Have a valid opcode that can be fetched from the debug exception
>> 	vector [IVPR|IVOR15].
>> Here MSR = Machine State register
>>
>> This patch makes sure of point "1" and make MSR[DE] bit is set uniformaly
>> across the different execution in address space.
> Does it make sense to repeast the whole README here?

I agree. it should not be.
But as i sent a series of patch, this change require some explanation.

I will change the description.

>> diff --git a/arch/powerpc/cpu/mpc85xx/start.S b/arch/powerpc/cpu/mpc85xx/start.S
>> index 7bfa2d5..09111e6 100644
>> --- a/arch/powerpc/cpu/mpc85xx/start.S
>> +++ b/arch/powerpc/cpu/mpc85xx/start.S
>> @@ -82,6 +82,11 @@
>>   	.globl _start_e500
>>
>>   _start_e500:
>> +#if defined(CONFIG_E500_V1_V2)
>> +/* Enable debug exception */
>> +	li	r1,MSR_DE
>> +	mtmsr 	r1
>> +#endif
> Why is this #ifdef needed here?

This #ifdef is to make sure MSR_DE bit is set before u-boot's actual 
code start executing.
it is for overcoming one of the requirement of debugging i.e. Keep 
MSR_DE bit set.


>>   #if defined(CONFIG_SECURE_BOOT)&&  defined(CONFIG_E500MC)
>>   	/* ISBC uses L2 as stack.
>> @@ -729,8 +734,8 @@ create_init_ram_area:
>>   	msync
>>   	tlbwe
>>
>> -	lis	r6,MSR_IS|MSR_DS at h
>> -	ori	r6,r6,MSR_IS|MSR_DS at l
>> +	lis	r6,MSR_IS|MSR_DS|MSR_DE at h
>> +	ori	r6,r6,MSR_IS|MSR_DS|MSR_DE at l
> And why don;t we need such an #ifdef here?

I found similar piece of code in start.S without any #define at label 
_start_cont. That's why i made it like this.
if required i will put it under #define.


> Also, CONFIG_E500_V1_V2 is undocumented.

Definition of this #define is part of documentation. I will add comment 
before using it.

--Prabhakar

  reply	other threads:[~2012-03-07  4:00 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-15  8:54 [U-Boot] [PATCH 2/4] powerpc/85xx:Fix MSR[DE] bit in MSR to support debugger Prabhakar Kushwaha
2012-03-06 14:40 ` Wolfgang Denk
2012-03-07  4:00   ` Prabhakar Kushwaha [this message]
2012-03-07 12:03     ` Wolfgang Denk
2012-03-13  5:24       ` Prabhakar Kushwaha
2012-03-07  4:13   ` Prabhakar Kushwaha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F56DD59.1080304@freescale.com \
    --to=prabhakar@freescale.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox