Linux Samsung SOC development
 help / color / mirror / Atom feed
From: Alexander Varnin <fenixk19@mail.ru>
To: Alexander Varnin <fenixk19@mail.ru>
Cc: linux-samsung-soc@vger.kernel.org, kgene@kernel.org, heiko@sntech.de
Subject: Re: [PATCH 2/2] ARM: S3C2443: Workaround for 2443 EXTINT error
Date: Mon, 26 Nov 2012 12:44:49 +0400	[thread overview]
Message-ID: <50B32C01.6050708@mail.ru> (raw)
In-Reply-To: <1353919203-24798-2-git-send-email-fenixk19@mail.ru>

Sorry, an old version.

26.11.2012 12:40, Alexander Varnin пишет:
> S3C2443 CPU has a problem with incorrect reading from EXTINTn
> registers. So s3c_irqext_type function wrongly modifies them.
> So add special check to s3c_irqext_type, to handle this case.
>
> Signed-off-by: Alexander Varnin <fenixk19@mail.ru>
> ---
>   arch/arm/plat-s3c24xx/irq.c |   15 +++++++++++++++
>   1 files changed, 15 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/plat-s3c24xx/irq.c b/arch/arm/plat-s3c24xx/irq.c
> index fe57bbb..bb36fc9 100644
> --- a/arch/arm/plat-s3c24xx/irq.c
> +++ b/arch/arm/plat-s3c24xx/irq.c
> @@ -219,6 +219,21 @@ s3c_irqext_type(struct irq_data *data, unsigned int type)
>   	}
>   
>   	value = __raw_readl(extint_reg);
> +
> +	if( (samsung_cpu_id & 0xfffff) == 0x43001) //Hack for 2443 error workaround
> +	{
> +	    int i;
> +	    int fixed = 0;
> +	    if(extint_reg == S3C24XX_EXTINT1 || extint_reg == S3C24XX_EXTINT2)
> +		for(i=0; i<7;i++)
> +		    fixed |= (((value >> ((7-i)*4+1)) & 7) | ((value >> ((7-i)*4-3)) & 8)) << i*4;
> +	    else
> +		for(i=0; i<7;i++)
> +		    fixed |= ( (value >> (7-i)*4) & 0xf )  << i*4;
> +	    fixed |= (((value>>1) & 7) | ((value<<3) & 8)) << 27;
> +	    value = fixed;
> +	}
> +
>   	value = (value & ~(7 << extint_offset)) | (newvalue << extint_offset);
>   	__raw_writel(value, extint_reg);
>   

  reply	other threads:[~2012-11-26  8:44 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-26  8:40 [PATCH 1/2] ARM: S3C2443: introduce soc_is_s3c2443 macro Alexander Varnin
2012-11-26  8:40 ` [PATCH 2/2] ARM: S3C2443: Workaround for 2443 EXTINT error Alexander Varnin
2012-11-26  8:44   ` Alexander Varnin [this message]
2012-11-26  9:02 ` [PATCH 1/2] ARM: S3C2443: introduce soc_is_s3c2443 macro Heiko Stübner
  -- strict thread matches above, loose matches on Subject: below --
2012-11-26  8:44 Alexander Varnin
2012-11-26  8:44 ` [PATCH 2/2] ARM: S3C2443: Workaround for 2443 EXTINT error Alexander Varnin
2012-11-26  9:12   ` Heiko Stübner
2012-11-26  9:23     ` Alexander Varnin
2012-11-26  9:35       ` Heiko Stübner

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=50B32C01.6050708@mail.ru \
    --to=fenixk19@mail.ru \
    --cc=heiko@sntech.de \
    --cc=kgene@kernel.org \
    --cc=linux-samsung-soc@vger.kernel.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