qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Zhurikhin <zhur@ispras.ru>
To: Maksim Kozlov <m.kozlov@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>,
	Igor Mitsyanko <i.mitsyanko@samsung.com>,
	qemu-devel@nongnu.org, Evgeny Voevodin <e.voevodin@samsung.com>,
	Dmitry Solodkiy <d.solodkiy@samsung.com>
Subject: Re: [Qemu-devel] [PATCH] Support system reset in Exynos4210
Date: Wed, 04 Apr 2012 16:35:41 +0400	[thread overview]
Message-ID: <4F7C401D.4000502@ispras.ru> (raw)
In-Reply-To: <4F7C36C4.2070500@samsung.com>

On 2012-04-04 15:55, Maksim Kozlov wrote:
> 04.04.2012 14:08, Dmitry Zhurikhin пишет:
>> Reset the system when 1 is written to SWRESET register
>>
>> Signed-off-by: Dmitry Zhurikhin<zhur@ispras.ru>
>> ---
>>   hw/exynos4210_pmu.c |   11 +++++++++++
>>   1 files changed, 11 insertions(+), 0 deletions(-)
>>
>> diff --git a/hw/exynos4210_pmu.c b/hw/exynos4210_pmu.c
>> index c12d750..edf6e34 100644
>> --- a/hw/exynos4210_pmu.c
>> +++ b/hw/exynos4210_pmu.c
>> @@ -25,6 +25,7 @@
>>    */
>>
>>   #include "sysbus.h"
>> +#include "sysemu.h"
>>
>>   #ifndef DEBUG_PMU
>>   #define DEBUG_PMU           0
>> @@ -422,6 +423,16 @@ static void exynos4210_pmu_write(void *opaque,
>> target_phys_addr_t offset,
>>           if (reg_p->offset == offset) {
>>               PRINT_DEBUG_EXTEND("%s<0x%04x>  <- 0x%04x\n", reg_p->name,
>>                       (uint32_t)offset, (uint32_t)val);
>> +            switch (offset) {
>> +            case SWRESET:
>> +                if (val&  1) {
>> +                    qemu_system_reset_request();
>> +                }
>> +                break;
>> +            default:
>> +                /* Nothing */
>> +                break;
>> +            }
>>               s->reg[i] = val;
>>               return;
>>           }
> It's not quite well. At first, when you do reset, appropriate status
> must be set in RST_STAT register. At second, not all registers in PMU
> should be set in default value after reset, so you should change PMU
> reset function for handling different resets (see spec) So, this
> functionality should be wrote more carefully
Well, this is the case when there is a need to modify booting procedure
depending on the values of these registers.  I haven't found any such
code in the current kernel.  As I now remember saving their values was
indeed important when we were trying to use an U-Boot bootloader.  But
as long as we are sticking with QEMU bootloader it doesn't matter. 
Anyway this information is unfortunately absent in Exynos4210 public
documentation.
>
> And use #define for registers and fields of the registers. It's more
> clearly, as for me.
As you say.
>
> Regards,
> MK

    Regards,
    Dmitry

  reply	other threads:[~2012-04-04 12:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-04 10:08 [Qemu-devel] [PATCH] Support system reset in Exynos4210 Dmitry Zhurikhin
2012-04-04 11:55 ` Maksim Kozlov
2012-04-04 12:35   ` Dmitry Zhurikhin [this message]
2012-04-04 16:16     ` Maksim Kozlov
2012-04-04 17:37       ` Dmitry Zhurikhin

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=4F7C401D.4000502@ispras.ru \
    --to=zhur@ispras.ru \
    --cc=d.solodkiy@samsung.com \
    --cc=e.voevodin@samsung.com \
    --cc=i.mitsyanko@samsung.com \
    --cc=kyungmin.park@samsung.com \
    --cc=m.kozlov@samsung.com \
    --cc=qemu-devel@nongnu.org \
    /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;
as well as URLs for NNTP newsgroup(s).