Powerpc and ioremap

4 messages, 2 authors, 2008-08-07 · open the first message on its own page

Powerpc and ioremap

From: Sébastien Chrétien <hidden>
Date: 2008-08-07 09:54:21

Hello,

I am trying to port linux on my Powerpc Board. I have used Linux 2.6.26 and
gcc 3.4.5.
I have used Uboot 1.2.
Linux seems running from _start to udbg_early_init(). That's why I
develloped a udbg_driver.
It must write in a register which is located at 0x2001b044. So I wrote :

void __iomem *p;
p=ioremap(0x2001b044,4);
iowrite32('O',p);
iowrite32('K',p);

But when he exectuted ioremap, he looped in the __delay function.

Can you help me to solve this probleme ?

Re: Powerpc and ioremap

From: Juergen Beisert <hidden>
Date: 2008-08-07 10:24:12

Am Donnerstag, 7. August 2008 11:54 schrieb S=E9bastien Chr=E9tien:
Hello,

I am trying to port linux on my Powerpc Board. I have used Linux 2.6.26 a=
nd
gcc 3.4.5.
I have used Uboot 1.2.
Linux seems running from _start to udbg_early_init(). That's why I
develloped a udbg_driver.
It must write in a register which is located at 0x2001b044. So I wrote :

void __iomem *p;
p=3Dioremap(0x2001b044,4);
iowrite32('O',p);
iowrite32('K',p);
try

p=3Dioremap(0x2001b000, 0x1000);
iowrite32('O',p + 0x44);
iowrite32('K',p + 0x44);

instead.

jbe
=2D-=20
 Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de
  Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
     Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-7 |  Fax: +49-5121-206917-9

Re: Powerpc and ioremap

From: Sébastien Chrétien <hidden>
Date: 2008-08-07 12:15:26

Thanks for your answer.
But it doesn't work.
I think ioremap create a kernel panic. But I can't see because i have no
UART ready.
Is there a way in order to trace the failure ?

2008/8/7, Juergen Beisert [off-list ref]:
Am Donnerstag, 7. August 2008 11:54 schrieb Sébastien Chrétien:
quoted
Hello,

I am trying to port linux on my Powerpc Board. I have used Linux 2.6.26
and
quoted
gcc 3.4.5.
I have used Uboot 1.2.
Linux seems running from _start to udbg_early_init(). That's why I
develloped a udbg_driver.
It must write in a register which is located at 0x2001b044. So I wrote :

void __iomem *p;
p=ioremap(0x2001b044,4);
iowrite32('O',p);
iowrite32('K',p);

try

p=ioremap(0x2001b000, 0x1000);
iowrite32('O',p + 0x44);
iowrite32('K',p + 0x44);

instead.

jbe

--
  Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de
  Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
     Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-7 |  Fax: +49-5121-206917-9

Re: Powerpc and ioremap

From: Sébastien Chrétien <hidden>
Date: 2008-08-07 12:56:53

Can we call ioremap() during udbg_early_init ?

2008/8/7, Sébastien Chrétien [off-list ref]:
Thanks for your answer.
But it doesn't work.
I think ioremap create a kernel panic. But I can't see because i have no
UART ready.
Is there a way in order to trace the failure ?

2008/8/7, Juergen Beisert [off-list ref]:
quoted
Am Donnerstag, 7. August 2008 11:54 schrieb Sébastien Chrétien:
quoted
Hello,

I am trying to port linux on my Powerpc Board. I have used Linux 2.6.26
and
quoted
gcc 3.4.5.
I have used Uboot 1.2.
Linux seems running from _start to udbg_early_init(). That's why I
develloped a udbg_driver.
It must write in a register which is located at 0x2001b044. So I wrote :

void __iomem *p;
p=ioremap(0x2001b044,4);
iowrite32('O',p);
iowrite32('K',p);

try

p=ioremap(0x2001b000, 0x1000);
iowrite32('O',p + 0x44);
iowrite32('K',p + 0x44);

instead.

jbe

--
  Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de
  Pengutronix - Linux Solutions for Science and Industry

6 more quoted lines

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help