eth1 on linux 2.4.25 from ELDK 3.1.1 becomes slowly when is pinged by great packets

2005-07-29 Thread Wolfgang Denk
In message 200507282018.17849.marny at rambler.ru you wrote:

 Wolfgang, thank you! 

You are welcome.

 I've renewed the kernel from CVS and it works much better now. 

Fine.

 By the way, the driver for PPChameleonEVB is presented in linuxppc_2_4_devel 
 module only and is not presented in linux-2.4 module of CVS (there miss the

Yes, this is intentional. The linux-2.4 module  is  a  more  or  less
frozen  version  of  linux  kernel  version 2.4.4 which we keep alife
because some of our customers continue to use this in their projects.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
In Christianity neither morality nor religion come into contact with
reality at any point.  - Friedrich Nietzsche



答复: How to load a linux kernel under vxworks bootloader (PPC860 board)

2005-07-29 Thread FCG WANG Baohua
Dear Linville:
  I use the zImage to download  to RAM from the vmlinux TFTP. The strange thins 
happened : 
 The serial console print the following message and halted :
 Starting at 0x38... 
   I want to ask:
  I. I saw the System.map is starting at the address 0x0, but why the 
zImage is starting at 0x38 ? 
  2.  Thankfully, I recall that later kernel versions did not have that 
problem.
I use the ELDK3.1.1,  kernel 2.4.25.tar.bz2, Which version had you revised 
the kernel ? 2.6.x ?
   If I need the 2.4.25 (for its config file fits the PPC860 ADS), What can 
I do ? 
  3.  In the vxworks BSP Makefile :
  ROM_TEXT_ADRS= 02800100 # ROM entry address
  ROM_SIZE = 0020 # number of bytes of ROM space

  RAM_LOW_ADRS = 0001 # RAM text/data address
 RAM_HIGH_ADRS= 0020 # RAM text/data address

How can I relocate to the right address if I download the linux kernel and 
excute it in RAM? 
 
   Thanks a lot !



--
???: John W. Linville [mailto:linville at tuxdriver.com]
: 2005?7?29? 0:58
???: FCG WANG Baohua
??: Re: How to load a linux kernel under vxworks bootloader (PPC860
board)


On Thu, Jul 28, 2005 at 01:02:04PM +0800, FCG WANG Baohua wrote:
  Dear linville:
I want to boot a linux 2.4.25 kernel under vxworks
  bootloader. When I using flat mode(0x20 --  0x1)
  kernel  uncompressed ELF format ( vmlinux ),
   and download it using TFTP of vxworks, it print the starting
  at 0x1000  and  freeze.  No input or output on serial port.
   The version of vxworks is 5.3.1. 
   can you give me some detail advice or give me a tool to slove
  it? thanks !

It looks like Guy Streeter gave you as good advice as I could give.
Be sure to read his post on linuxppc-embedded.

In the past there was an issue in that the VxWorks boot loader only
loaded .text and .data sections from ELF images.  At that time,
zImage files packed the real kernel image into an extra section
in the ELF file, and the VxWorks loader would not load it.  The fix
then was to hack the ELF header to make the extra section appear to
be part of the .data section.

Thankfully, I recall that later kernel versions did not have that
problem.  I think using a zImage (or zImage.initrd) file that has
been properly modified to support your board should be all that
is necessary.  Using a zImage is necessary because it includes a
shim that knows how to communicate critical information to the
actual Linux kernel.  The VxWorks boot loader does not provide this
information to Linux.

As someone else suggested, your best bet would be to use U-Boot or some
other loader that understands Linux.  U-Boot ports are fairly simple.
If you don't want to do one, you probably could convince me to do
a U-Boot port if you wanted to send me a board (and possibly some
reasonably compensation)... :-)

Good luck!

John
-- 
John W. Linville
linville at tuxdriver.com



答复: How to load a linux kernel under vxworks bootloader (PPC860 board)

2005-07-29 Thread FCG WANG Baohua
Dear linville:
  I found that the vxWorks bootrom is load to RAM 0x2800100 address, but 
different address with the different kernel file downloading to the RAM.
   For example: the ppcboot ELF file is downloaded to the 0x280 and only 
150256 bytes is downloaded (total file size is 989064 bytes)
   the zImage kernel file  is downloaded to the 
0x38 and only 533004 bytes is downloaded (total file size is 591899 bytes)
  What's the reason for explain it? Does the vxWorks bootloader uncompressed 
the file with its own algorithm? 
  How to download the U-Boot ELF file correctly? Thanks! 
  The right way is to find the right entry points of U-Boot, but whatever I 
change the configure of U-Boot, it doesn't work at all. That is, the entry 
point is 
  forever 0x280 for U-Boot and 0x38  for zImage. 
  

--
???: John W. Linville [mailto:linville at tuxdriver.com]
: 2005?7?29? 0:58
???: FCG WANG Baohua
??: Re: How to load a linux kernel under vxworks bootloader (PPC860
board)


On Thu, Jul 28, 2005 at 01:02:04PM +0800, FCG WANG Baohua wrote:
  Dear linville:
I want to boot a linux 2.4.25 kernel under vxworks
  bootloader. When I using flat mode(0x20 --  0x1)
  kernel  uncompressed ELF format ( vmlinux ),
   and download it using TFTP of vxworks, it print the starting
  at 0x1000  and  freeze.  No input or output on serial port.
   The version of vxworks is 5.3.1. 
   can you give me some detail advice or give me a tool to slove
  it? thanks !

It looks like Guy Streeter gave you as good advice as I could give.
Be sure to read his post on linuxppc-embedded.

In the past there was an issue in that the VxWorks boot loader only
loaded .text and .data sections from ELF images.  At that time,
zImage files packed the real kernel image into an extra section
in the ELF file, and the VxWorks loader would not load it.  The fix
then was to hack the ELF header to make the extra section appear to
be part of the .data section.

Thankfully, I recall that later kernel versions did not have that
problem.  I think using a zImage (or zImage.initrd) file that has
been properly modified to support your board should be all that
is necessary.  Using a zImage is necessary because it includes a
shim that knows how to communicate critical information to the
actual Linux kernel.  The VxWorks boot loader does not provide this
information to Linux.

As someone else suggested, your best bet would be to use U-Boot or some
other loader that understands Linux.  U-Boot ports are fairly simple.
If you don't want to do one, you probably could convince me to do
a U-Boot port if you wanted to send me a board (and possibly some
reasonably compensation)... :-)

Good luck!

John
-- 
John W. Linville
linville at tuxdriver.com



ATI Radeon with PPC 440 GX and kernel 2.6.12

2005-07-29 Thread David Grab
Hello,

i?m using on my custom board a ATI M6 Mobility Radeon with kernel 2.6.12.
Now i have to initialize the ati and configure the kernel to support it. Did
someone use this combination (ppc + ati radeon)? It would be appreciating to
get some help or tipps in configuring to get the ati functioning. Especially
the BIOS of the ATI chip, because i have actually found only x86 binaries.
Is it also possible to set up the bios settings for the ati chip without an
bios eeprom attached via the radeon driver?

Thanks for any help,

David





mpc8245-300M MIPS

2005-07-29 Thread Debora Liu
linuxppc-embeddeHi ALL,
I am porting MPC8245 kernel-2.4.25 from ELDK version 3.1.1.
This CPU(MPC8245) is 300MHz, kernel calibrate MIPS is 200.
Do anyone know this MIPS is right?


U-Boot 1.1.2 (Jan 25 2005 - 14:55:00) [svm]

CPU:   MPC8245 Revision 1.1 at 299.999 MHz: 16 kB I-Cache 16 kB D-Cache
Board: SVM_SC8245 Local Bus at 99.999 MHz
I2C:   ready
DRAM:  Scan SDRAM memory
64 MB
Top of RAM usable for U-Boot at: 0400
Reserving 460k for U-Boot at: 03f8c000
Reserving 128k for malloc() at: 03f6c000
Reserving 56 Bytes for Board Info at: 03f6bfc8
Reserving 48 Bytes for Global Data at: 03f6bf98
Stack Pointer at: 03f6bf78
New Stack Pointer is: 03f6bf78
Now running in RAM - U-Boot at: 03f8c000
FLASH: 512 kB
PCI Scan: Found Bus 0, Device 22, Function 0
PCI Config: I/O=0x8000, Memory=0x8000, Command=0x7
   00  16  10ec  8139  0200  0b
PCI Scan: Found Bus 0, Device 23, Function 0
PCI Config: I/O=0x8100, Memory=0x8100, Command=0x7
   00  17  8086  1209  0200  0c
PCI Scan: Found Bus 0, Device 24, Function 0
   00  18  8086  1209  0200  0e
In:serial
Out:   serial
Err:   serial
U-Boot relocated to 03f8c000
DOC:   No DiskOnChip found
Net:   rtl8139: REALTEK RTL8139 @0x8000(8000)
i82559#0
Warning: i82559#0 MAC addresses don't match:
Address in SROM is 00:AA:00:91:6D:94
Address in environment is  EE:CC:7C:7E:65:97
, i82559#1, RTL8139#0
### main_loop entered: bootdelay=2

### main_loop: bootcmd=tftpboot 0x21 kernel-sc82xx-2.4.25-eldk;bootm 0x2100
00
Hit any key to stop autoboot:  0
Trying i82559#0
Using i82559#0 device
TFTP from server 192.168.0.82; our IP address is 192.168.0.215
Filename 'kernel-sc82xx-2.4.25-eldk'.
Load address: 0x21
Loading: #
#
###
done
Bytes transferred = 718901 (af835 hex)
## Booting image at 0021 ...
  Image Name:   Linux-2.4.25
  Created:  2005-07-29   5:42:02 UTC
  Image Type:   PowerPC Linux Kernel Image (gzip compressed)
  Data Size:718837 Bytes = 702 kB
  Load Address: 
  Entry Point:  
  Verifying Checksum ... OK
  Uncompressing Kernel Image ... OK
## Current stack ends at 0x03F6BBE8 = set upper limit to 0x0080
## cmdline at 0x007FFF00 ... 0x007FFF7E
bd address  = 0x03F6BFC8
memstart= 0x
memsize = 0x0400
flashstart  = 0xFFF0
flashsize   = 0x0008
flashoffset = 0x00068000
sramstart   = 0x
sramsize= 0x
bootflags   = 0x0001
intfreq = 299.999 MHz
busfreq = 99.999 MHz
ethaddr = EE:CC:7C:7E:65:97
IP addr = 192.168.0.215
baudrate= 115200 bps
No initrd
## Transferring control to Linux (at address ) ...
Memory BAT mapping: BAT2=64Mb, BAT3=0Mb, residual: 0Mb
Linux version 2.4.25 (liu at bighead) (gcc version 3.3.3 (DENX ELDK 3.1.1 
3.3.3-9))
#2 ? 7? 29 13:41:52 CST 2005
sc82xx_setup_arch:Reserved 0x1 memory at 0xc01b4000
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/nfs rw nfsroot=192.168.0.82:/prj/sc8245/root cons
ole=ttyS0,115200 ip=192.168.0.215:192.168.0.82:::itogether:eth0:off
OpenPIC Version 1.2 (1 CPUs and 7 IRQ sources) at fdfd
bi_intfreq:29997  bi_busfreq:
Calibrating delay loop... 199.88 BogoMIPS

Debora Liu
deboralh at fel.com.cn
  2005-07-29





request_8xxirq

2005-07-29 Thread Tiago Dall'Agnol
Hi,

I had some problems with irq in my embedded system. I'm interested in 
this function source code, but I didn't find it in my linux distribuction?

Does anyone know where I can find it?

Thanks a lot
Tiago

Manish Joshi wrote:

 Hi,
  
 I am working on an old code which uses  request_8xxirq() call which I 
 can't find in latest kernel.
 Has this been replaced by something else ?
  
 I see the references on net about replacing request_8xxirq()  with 
 request_irq(). Can I do it ?
  
 TIA,
 Manish
  

 
 Start your day with Yahoo! - make it your home page 
 http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs



___
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded


-- 
Tiago Dall'Agnol
Pesquisa e Desenvolvimento
Tel.: +55.51.470.05.64
Fax.: +55.51.470.05.70
e-mail: tdallagnol at parks.com.br
Parks S.A. Comunica??es Digitais
www.parks.com.br




request_8xxirq

2005-07-29 Thread Alex Zeffertt
In linux-2.4 it's in 

include/asm-ppc/mpc8xx.h

-- snip --
#define request_8xxirq request_irq
--/snip --

And request_irq is in arch/ppc/kernel/irq.c

Alex

On Fri, 29 Jul 2005 10:07:58 -0300
Tiago Dall'Agnol tdallagnol at parks.com.br wrote:

 Hi,
 
 I had some problems with irq in my embedded system. I'm interested in 
 this function source code, but I didn't find it in my linux distribuction?
 
 Does anyone know where I can find it?
 
 Thanks a lot
 Tiago
 
 Manish Joshi wrote:
 
  Hi,
   
  I am working on an old code which uses  request_8xxirq() call which I 
  can't find in latest kernel.
  Has this been replaced by something else ?
   
  I see the references on net about replacing request_8xxirq()  with 
  request_irq(). Can I do it ?
   
  TIA,
  Manish
   
 
  
  Start your day with Yahoo! - make it your home page 
  http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs
 
 
 
 ___
 Linuxppc-embedded mailing list
 Linuxppc-embedded at ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-embedded
 
 
 -- 
 Tiago Dall'Agnol
 Pesquisa e Desenvolvimento
 Tel.: +55.51.470.05.64
 Fax.: +55.51.470.05.70
 e-mail: tdallagnol at parks.com.br
 www.parks.com.br
 
 ___
 Linuxppc-embedded mailing list
 Linuxppc-embedded at ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-embedded



ATI Radeon with PPC 440 GX and kernel 2.6.12

2005-07-29 Thread Matt Porter
On Fri, Jul 29, 2005 at 10:32:01AM +0200, David Grab wrote:
 Hello,
 
 i?m using on my custom board a ATI M6 Mobility Radeon with kernel 2.6.12.
 Now i have to initialize the ati and configure the kernel to support it. Did
 someone use this combination (ppc + ati radeon)? It would be appreciating to
 get some help or tipps in configuring to get the ati functioning. Especially
 the BIOS of the ATI chip, because i have actually found only x86 binaries.
 Is it also possible to set up the bios settings for the ati chip without an
 bios eeprom attached via the radeon driver?

There is a x86 emulator that can execute x86 VGA BIOS code to initialize
your VGA core in U-Boot. It's part of the MAI port so you can look at
that code and port it to your board. It is actually some scitechsoft
code that's been ported to build within U-Boot.

Gabriel Paubert's preploader code also has an x86 real mode emulator
written in PPC assembly that does the same thing, but it may be more
convenient to work with the stuff in U-Boot. It doesn't help that I
can seem to find a current link to the preploader code. Maybe Gabriel
can appear and provide it.

-Matt



request_8xxirq

2005-07-29 Thread Alex Zeffertt
Maybe you're using a really old kernel.  In linux-2.4.4 it's in
arch/ppc/kernel/irq.c:

-- snip --
#if (defined(CONFIG_8xx) || defined(CONFIG_8260))
/* Name change so we can catch standard drivers that potentially mess up
 * the internal interrupt controller on 8xx and 8260.  Just bear with me,
 * I don't like this either and I am searching a better solution.  For
 * now, this is what I need. -- Dan
 */
#define request_irq request_8xxirq

...
...
...

int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs 
*),
unsigned long irqflags, const char * devname, void *dev_id)
{
--/snip --


I don't know why it was done like this

Alex


On Fri, 29 Jul 2005 10:52:33 -0300
Tiago Dall'Agnol tdallagnol at parks.com.br wrote:

 Thank you Alex.
 
 But in my linux, this is different.
 What I have in that file is just
 
 extern int request_8xxirq(unsigned int irq,
void (*handler)(int, void *, struct pt_regs *),
unsigned long flags,
const char *device,
void *dev_id);
 
 And the request_8xxirq is declared as a
 
 EXPORT_SYMBOL(request_8xxirq);
 
 in arch/ppc/kernel/ppc_ksyms.c.
 
 I already tried to find out where the code that implements the function 
 is located, but it seems that it doesn't exist in my distribuction. 
 Maybe is it a binary version?
 
 Any other information will be apreciated ;-)
 
 Best Regards,
 Tiago
 
 Alex Zeffertt wrote:
 
 In linux-2.4 it's in 
 
  include/asm-ppc/mpc8xx.h
 
 -- snip --
 #define request_8xxirq request_irq
 --/snip --
 
 And request_irq is in arch/ppc/kernel/irq.c
 
 Alex
 
 On Fri, 29 Jul 2005 10:07:58 -0300
 Tiago Dall'Agnol tdallagnol at parks.com.br wrote:
 
   
 
 Hi,
 
 I had some problems with irq in my embedded system. I'm interested in 
 this function source code, but I didn't find it in my linux distribuction?
 
 Does anyone know where I can find it?
 
 Thanks a lot
 Tiago
 
 Manish Joshi wrote:
 
 
 
 Hi,
  
 I am working on an old code which uses  request_8xxirq() call which I 
 can't find in latest kernel.
 Has this been replaced by something else ?
  
 I see the references on net about replacing request_8xxirq()  with 
 request_irq(). Can I do it ?
  
 TIA,
 Manish
  
 
 
 Start your day with Yahoo! - make it your home page 
 http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs
 
 
 
 ___
 Linuxppc-embedded mailing list
 Linuxppc-embedded at ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-embedded
 
   
 
 -- 
 Tiago Dall'Agnol
 Pesquisa e Desenvolvimento
 Tel.: +55.51.470.05.64
 Fax.: +55.51.470.05.70
 e-mail: tdallagnol at parks.com.br
 www.parks.com.br
 
 ___
 Linuxppc-embedded mailing list
 Linuxppc-embedded at ozlabs.org
 https://ozlabs.org/mailman/listinfo/linuxppc-embedded
 
 
 
   
 
 
 -- 



ATI Radeon with PPC 440 GX and kernel 2.6.12

2005-07-29 Thread Wolfgang Denk
In message 001f01c59417$fe81b840$f201a8c0 at SN7606 you wrote:
 
 i?m using on my custom board a ATI M6 Mobility Radeon with kernel 2.6.12.
 Now i have to initialize the ati and configure the kernel to support it. Did
 someone use this combination (ppc + ati radeon)? It would be appreciating to
 get some help or tipps in configuring to get the ati functioning. Especially
 the BIOS of the ATI chip, because i have actually found only x86 binaries.
 Is it also possible to set up the bios settings for the ati chip without an
 bios eeprom attached via the radeon driver?

If you use U-Boot as boot loader you  can  enable  and  use  the  x86
emulator  taht  comes included with it. But don't expect to much help
with that - except for the Amiga  One  (where  I  was  told  this  is
working) I don't know of any other board using this feature.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Two wrongs don't make a right, but three rights make a left.



mpc8248 SEC -- interrupt handler not invoked

2005-07-29 Thread Vikas Aggarwal
Hi All,
  Will  appreciate if someone can guide me how to debug this inside SEC
(security co-processor) core.

 The linux driver is writing descriptor into the FETCH-Register(0x2048) 
for Random Number generation execution unit(RNG-EU). The request came
through a test program from user space. The RNG generation request never
seems to complete as my ISR is not invoked.
 I checked the CCPSR(Crypto Channel Pointer Status register = 0x2010) and
it has value=0:7(0-31 : 32-63 bits). 7 means channel_error. But its
always there even before I write the RNG descriptor to Fetch-register.

1. I can read the ID register and verified it is 0x0900.
2. I can see my ISR is registered(0x47)  under /proc/interrupts.

I don't see anything wrong with the descriptor which is very simple Random
Number Generation request.

regards
-vikas aggarwal





[PATCH 00/14] ppc32: Remove board ports that are no longer maintained

2005-07-29 Thread Michael Richardson
-BEGIN PGP SIGNED MESSAGE-


 Kumar == Kumar Gala kumar.gala at freescale.com writes:
 When we recover our history from the linuxppc-2.4/2.5 trees we
 can show exactly how long it's been since anybody touched ep405.
 
 Quick googling shows that it's been almost 2 years since the last
 mention of ep405 (exluding removal discussions) on
 linuxppc-embedded.  Last ep405-related commits are more than 2
 years ago.

  So, I'll bet I can find other parts of the kernel tree that haven't
been touched in 2 years.  Maybe there isn't anything to fix?

  Happens that in our case,
  a) the board is the basis to our own board.
  b) we only moved to 2.6 in May.

  So, I just don't get removing board support files.

- -- 
] Michael Richardson  Xelerance Corporation, Ottawa, ON |  firewalls  [
] mcr @ xelerance.com   Now doing IPsec training, see   |net architect[
] http://www.sandelman.ca/mcr/www.xelerance.com/training/   |device driver[
]I'm a dad: http://www.sandelman.ca/lrmr/ [
  
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys

iQCVAwUBQupaXIqHRg3pndX9AQFnGQP+JXX0ZTKW35LljC/ighUPpmcdClRlmWP2
fsnofXYNi2v9QEkYpoS8pHMc3ClKHT8MFzK/nsDe1CFWPxxavK+365usf77DSGWB
bjZ8CZWjkvDt7IMjBxEnSlzCTVt39Gtjq1zM/DMY0SOi1ccB7TIZE+1Ol3zkYnW5
2X6+0SKgS6Q=
=kcQj
-END PGP SIGNATURE-



request_8xxirq

2005-07-29 Thread Tiago Dall'Agnol
I'm using kernel 2.4.18, and I can see the code you posted.

But this code doesn't help to find request_8xxirq. It just do the 
opposite. This code defines request_irq to be request_8xxirq when 
CONFIG_8xx is defined. But where is located the implementation of 
request_8xxirq?

Am I wrong? I didn't understand when that function request_irq is used.

Thanks
Tiago

Alex Zeffertt wrote:

Maybe you're using a really old kernel.  In linux-2.4.4 it's in
arch/ppc/kernel/irq.c:

-- snip --
#if (defined(CONFIG_8xx) || defined(CONFIG_8260))
/* Name change so we can catch standard drivers that potentially mess up
 * the internal interrupt controller on 8xx and 8260.  Just bear with me,
 * I don't like this either and I am searching a better solution.  For
 * now, this is what I need. -- Dan
 */
#define request_irqrequest_8xxirq

...
...
...

int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs 
*),
   unsigned long irqflags, const char * devname, void *dev_id)
{
--/snip --


I don't know why it was done like this

Alex


On Fri, 29 Jul 2005 10:52:33 -0300
Tiago Dall'Agnol tdallagnol at parks.com.br wrote:

  

Thank you Alex.

But in my linux, this is different.
What I have in that file is just

extern int request_8xxirq(unsigned int irq,
   void (*handler)(int, void *, struct pt_regs *),
   unsigned long flags,
   const char *device,
   void *dev_id);

And the request_8xxirq is declared as a

EXPORT_SYMBOL(request_8xxirq);

in arch/ppc/kernel/ppc_ksyms.c.

I already tried to find out where the code that implements the function 
is located, but it seems that it doesn't exist in my distribuction. 
Maybe is it a binary version?

Any other information will be apreciated ;-)

Best Regards,
Tiago

Alex Zeffertt wrote:



In linux-2.4 it's in 

 include/asm-ppc/mpc8xx.h

-- snip --
#define request_8xxirq request_irq
--/snip --

And request_irq is in arch/ppc/kernel/irq.c

Alex

On Fri, 29 Jul 2005 10:07:58 -0300
Tiago Dall'Agnol tdallagnol at parks.com.br wrote:

 

  

Hi,

I had some problems with irq in my embedded system. I'm interested in 
this function source code, but I didn't find it in my linux distribuction?

Does anyone know where I can find it?

Thanks a lot
Tiago

Manish Joshi wrote:

   



Hi,

I am working on an old code which uses  request_8xxirq() call which I 
can't find in latest kernel.
Has this been replaced by something else ?

I see the references on net about replacing request_8xxirq()  with 
request_irq(). Can I do it ?

TIA,
Manish



Start your day with Yahoo! - make it your home page 
http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs



___
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded

 

  

-- 
Tiago Dall'Agnol
Pesquisa e Desenvolvimento
Tel.: +55.51.470.05.64
Fax.: +55.51.470.05.70
e-mail: tdallagnol at parks.com.br
www.parks.com.br

___
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded
   



 

  

-- 



  


-- 
Tiago Dall'Agnol
Pesquisa e Desenvolvimento
Tel.: +55.51.470.05.64
Fax.: +55.51.470.05.70
e-mail: tdallagnol at parks.com.br
Parks S.A. Comunica??es Digitais
www.parks.com.br




[PATCH 00/14] ppc32: Remove board ports that are no longer maintained

2005-07-29 Thread Esben Nielsen


On Wed, 27 Jul 2005, Matt Porter wrote:

 On Wed, Jul 27, 2005 at 09:27:41AM -0700, Eugene Surovegin wrote:
  On Wed, Jul 27, 2005 at 12:13:23PM -0400, Michael Richardson wrote:
   Kumar, I thought that we had some volunteers to take care of some of
   those. I know that I still care about ep405, and I'm willing to maintain
   the code.
  
  Well, it has been almost two months since Kumar asked about maintenance 
  for this board. Nothing happened since then.
  
  Why is it not fixed yet? Please, send a patch which fixes it. This is 
  the _best_ way to keep this board in the tree, not some empty 
  maintenance _promises_.
 
 When we recover our history from the linuxppc-2.4/2.5 trees we can
 show exactly how long it's been since anybody touched ep405.
 
 Quick googling shows that it's been almost 2 years since the last
 mention of ep405 (exluding removal discussions) on linuxppc-embedded.
 Last ep405-related commits are more than 2 years ago.
 
I don't follow that reasoning. Even broken drivers(board support files,
whateever) are better than non.

Take ArcNet support forinstance. Clearly it hadn't been used in any 2.6
kernel up until around 2.6.10. It was highly broken (call to
uninitialized function pointer). But I needed it. I fixed it and send the
patch so it works from 2.6.11 and up.  If the driver had been dropped in
the 2.6 series because nobody actively maintained it, I  wouldn't have got
around to fix it at all and was probably forced to use another OS for my
perpose.  

But because the driver was still in there and somebody had made sure it
was updated along the changes to the API in the 2.6 kernel, it was easy
for me to fix it although I didn't know so much about the kernel internals
at that time.

Esben








request_8xxirq

2005-07-29 Thread Dan Malek

On Jul 29, 2005, at 1:01 PM, Tiago Dall'Agnol wrote:

 Am I wrong? I didn't understand when that function request_irq is used.

At some point I don't remember and against all of my wishes, the code
was changed from using request_8xxirq to using request_irq using
an ugly hack to add some offset to the 8xx interrupt vector number.
I didn't see any bug that needed fixing, but people with the power to
ignore my maintainer status decided to change it anyway.  So, now you
have to modify your drivers to call request_irq() with some nonsensical
interrupt number.  No value added, just confusion.

Thanks.

-- Dan




[PATCH 00/14] ppc32: Remove board ports that are no longer maintained

2005-07-29 Thread Kumar Gala

On Jul 29, 2005, at 12:03 PM, Esben Nielsen wrote:



 On Wed, 27 Jul 2005, Matt Porter wrote:


 On Wed, Jul 27, 2005 at 09:27:41AM -0700, Eugene Surovegin wrote:

 On Wed, Jul 27, 2005 at 12:13:23PM -0400, Michael Richardson wrote:

 Kumar, I thought that we had some volunteers to take care of some

 of

 those. I know that I still care about ep405, and I'm willing to

 maintain

 the code.


 Well, it has been almost two months since Kumar asked about

 maintenance

 for this board. Nothing happened since then.

 Why is it not fixed yet? Please, send a patch which fixes it. This

 is

 the _best_ way to keep this board in the tree, not some empty
 maintenance _promises_.


 When we recover our history from the linuxppc-2.4/2.5 trees we can
 show exactly how long it's been since anybody touched ep405.

 Quick googling shows that it's been almost 2 years since the last
 mention of ep405 (exluding removal discussions) on linuxppc-embedded.
 Last ep405-related commits are more than 2 years ago.


 I don't follow that reasoning. Even broken drivers(board support  
 files,
 whateever) are better than non.

 Take ArcNet support forinstance. Clearly it hadn't been used in any  
 2.6
 kernel up until around 2.6.10. It was highly broken (call to
 uninitialized function pointer). But I needed it. I fixed it and send
 the
 patch so it works from 2.6.11 and up.  If the driver had been  
 dropped in
 the 2.6 series because nobody actively maintained it, I  wouldn't have
 got
 around to fix it at all and was probably forced to use another OS  
 for my
 perpose.

 But because the driver was still in there and somebody had made  
 sure it
 was updated along the changes to the API in the 2.6 kernel, it was  
 easy
 for me to fix it although I didn't know so much about the kernel
 internals
 at that time.

The code will still exist in older kernel releases so if someone  
needs to bring it up to date they can.  We are more than willing to  
take patches to fix any issues.

Let's be clear.  I posted a request several weeks ago in which anyone  
was free to comment on the various board ports that existed and their  
maintainership.

- kumar



mpc8248 SEC -- interrupt handler not invoked

2005-07-29 Thread Kim Phillips
On Fri, 29 Jul 2005 11:40:27 -0400 (EDT)
Vikas Aggarwal va824363 at albany.edu wrote:

 Hi All,
   Will  appreciate if someone can guide me how to debug this inside SEC
 (security co-processor) core.
 
  The linux driver is writing descriptor into the FETCH-Register(0x2048) 
 for Random Number generation execution unit(RNG-EU). The request came
 through a test program from user space. The RNG generation request never
 seems to complete as my ISR is not invoked.
  I checked the CCPSR(Crypto Channel Pointer Status register = 0x2010) and
 it has value=0:7(0-31 : 32-63 bits). 7 means channel_error. But its
 always there even before I write the RNG descriptor to Fetch-register.

a value of 7 in bits 56-63 (PAIR_PTR) can suggest processing has not begun.

can you verify you are writing the upper bits of the FR (i.e. 0x204c)?

Kim



[PATCH RFC]: PHY Abstraction Layer III

2005-07-29 Thread Jeff Garzik
Andy Fleming wrote:
 Here's the latest version of the patch, done against a cogito  linux-2.6 
 branch.  It has a handful of small changes, which I hope  will speed 
 acceptance:
 
 * Interrupts are no longer requested at interrupt time
 * There is a function to print out PHY status
 * The PHY drivers' probe function now serves only to initialize  driver 
 state
 * A new config_init functor has been created to configure PHY state  
 just after reset (so that the PHYs will be returned to a sane state  if 
 they don't start up that way)
 * Stephen Hemminger's patch to allow better module support in the  
 drivers has been included

OK, DaveM and I are OK with merging this.

Send me a single One Big Patch which adds all the new files and such, 
I'll give it a final review, and queue it for 2.6.14.

Jeff






[PATCH] ppc32: fix 44x early serial debug for configurations with more than 512M of RAM

2005-07-29 Thread Eugene Surovegin
Fix 44x early serial debugging for big RAM configurations (more than 
512M). We cannot use default OpenBIOS virtual mapping, because it 
interferes with pinned TLB entry. 

While we are at it, move early UART mapping to TLB slot 0, so it can 
survive longer during boot process (slot 1 is used by the first 
ioremap call, effectively killing UART mapping if it occupies this 
slot). Also, change UART TLB entry size to 4K (256M is too much for a 
bunch of registers :). Squash some warnings on the way.

Tested on Ebony and Ocotea with 1G of RAM.

Thanks to Scott Coulter scott.coulter at cyclone.com for diagnosing 
this problem.

Signed-off-by: Eugene Surovegin ebs at ebshome.net

diff --git a/arch/ppc/kernel/head_44x.S b/arch/ppc/kernel/head_44x.S
--- a/arch/ppc/kernel/head_44x.S
+++ b/arch/ppc/kernel/head_44x.S
@@ -179,14 +179,14 @@ skpinv:   addir4,r4,1 /* 
Increment */
 4:
 #ifdef CONFIG_SERIAL_TEXT_DEBUG
/*
-* Add temporary UART mapping for early debug.  This
-* mapping must be identical to that used by the early
-* bootloader code since the same asm/serial.h parameters
-* are used for polled operation.
+* Add temporary UART mapping for early debug.
+* We can map UART registers wherever we want as long as they don't
+* interfere with other system mappings (e.g. with pinned entries).
+* For an example of how we handle this - see ocotea.h.   --ebs
 */
/* pageid fields */
lis r3,UART0_IO_BASE at h
-   ori r3,r3,PPC44x_TLB_VALID | PPC44x_TLB_256M
+   ori r3,r3,PPC44x_TLB_VALID | PPC44x_TLB_4K
 
/* xlat fields */
lis r4,UART0_PHYS_IO_BASE at h  /* RPN depends on SoC */
@@ -196,7 +196,7 @@ skpinv: addir4,r4,1 /* 
Increment */
li  r5,0
ori r5,r5,(PPC44x_TLB_SW | PPC44x_TLB_SR | PPC44x_TLB_I | 
PPC44x_TLB_G)
 
-li  r0,1/* TLB slot 1 */
+li  r0,0/* TLB slot 0 */
 
tlbwe   r3,r0,PPC44x_TLB_PAGEID /* Load the pageid fields */
tlbwe   r4,r0,PPC44x_TLB_XLAT   /* Load the translation fields */
diff --git a/arch/ppc/platforms/4xx/ebony.c b/arch/ppc/platforms/4xx/ebony.c
--- a/arch/ppc/platforms/4xx/ebony.c
+++ b/arch/ppc/platforms/4xx/ebony.c
@@ -7,7 +7,7 @@
  * Copyright 2002-2005 MontaVista Software Inc.
  *
  * Eugene Surovegin eugene.surovegin at zultys.com or ebs at ebshome.net
- * Copyright (c) 2003, 2004 Zultys Technologies
+ * Copyright (c) 2003-2005 Zultys Technologies
  *
  * This program is free software; you can redistribute  it and/or modify it
  * under  the terms of  the GNU General  Public License as published by the
@@ -50,6 +50,7 @@
 #include asm/bootinfo.h
 #include asm/ppc4xx_pic.h
 #include asm/ppcboot.h
+#include asm/tlbflush.h
 
 #include syslib/gen550.h
 #include syslib/ibm440gp_common.h
@@ -248,6 +249,9 @@ ebony_early_serial_map(void)
 #if defined(CONFIG_SERIAL_TEXT_DEBUG) || defined(CONFIG_KGDB)
/* Configure debug serial access */
gen550_init(0, port);
+
+   /* Purge TLB entry added in head_44x.S for early serial access */
+   _tlbie(UART0_IO_BASE);
 #endif
 
port.membase = ioremap64(PPC440GP_UART1_ADDR, 8);
diff --git a/arch/ppc/platforms/4xx/ebony.h b/arch/ppc/platforms/4xx/ebony.h
--- a/arch/ppc/platforms/4xx/ebony.h
+++ b/arch/ppc/platforms/4xx/ebony.h
@@ -56,9 +56,18 @@
  * Serial port defines
  */
 
-/* OpenBIOS defined UART mappings, used before early_serial_setup */
+#if defined(__BOOTER__)
+/* OpenBIOS defined UART mappings, used by bootloader shim */
 #define UART0_IO_BASE  0xE200
 #define UART1_IO_BASE  0xE300
+#else
+/* head_44x.S created UART mapping, used before early_serial_setup.
+ * We cannot use default OpenBIOS UART mappings because they
+ * don't work for configurations with more than 512M RAM.--ebs
+ */
+#define UART0_IO_BASE  0xF200
+#define UART1_IO_BASE  0xF300
+#endif
 
 /* external Epson SG-615P */
 #define BASE_BAUD  691200
@@ -66,7 +75,7 @@
 #define STD_UART_OP(num)   \
{ 0, BASE_BAUD, 0, UART##num##_INT, \
(ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST),\
-   iomem_base: UART##num##_IO_BASE,\
+   iomem_base: (void*)UART##num##_IO_BASE, \
io_type: SERIAL_IO_MEM},
 
 #define SERIAL_PORT_DFNS   \
diff --git a/arch/ppc/platforms/4xx/ocotea.c b/arch/ppc/platforms/4xx/ocotea.c
--- a/arch/ppc/platforms/4xx/ocotea.c
+++ b/arch/ppc/platforms/4xx/ocotea.c
@@ -48,6 +48,7 @@
 #include asm/bootinfo.h
 #include asm/ppc4xx_pic.h
 #include asm/ppcboot.h
+#include asm/tlbflush.h
 
 #include syslib/gen550.h
 #include syslib/ibm440gx_common.h
@@ -266,6 +267,9 @@ ocotea_early_serial_map(void)
 #if defined(CONFIG_SERIAL_TEXT_DEBUG) || defined(CONFIG_KGDB)
/* Configure 

Serial console

2005-07-29 Thread Josh Boyer
On Sat, 2005-07-30 at 10:06 +0900, Daniel Ann wrote:
 Hi folks,
 
 Just wondering if anyone could lend a hand with this problem I have
 with serial console. I'm trying to boot up my board (very similar to
 sandpoint using MPC8245) with kernel 2.6.12.3, and most of it is
 working but console will display up to,
 [snip]
 RAMDISK: Compressed image found at block 0
 VFS: Mounted root (ext2 filesystem) readonly.
 Freeing unused kernel memory: 112k init   
  
 
 I've done series of printk in sys_execve() to see if /sbin/init is
 working, and found out it went thru the whole rcS file okay. Mind you,
 printk is successfully displaying the output on the console while I'm
 still not getting anything from the user processes.
 
 Having all the kernel boot up log on console means that I've done some
 part right. But why am I not getting anything from the user processes
 on the console screen ?
 
 Is there anything I need to do on the kernel config ?

Do you have a /dev/console device node in your initrd?  If not, that is
one of the reasons you could be seeing that problem.  Make
sure /dev/null is there too.

josh




Serial console

2005-07-29 Thread Ricardo Scop
Hi Daniel,

On Friday 29 July 2005 22:06, Daniel Ann wrote:
 Hi folks,

 Just wondering if anyone could lend a hand with this problem I have
 with serial console. I'm trying to boot up my board (very similar to
 sandpoint using MPC8245) with kernel 2.6.12.3, and most of it is
 working but console will display up to,
 [snip]
 RAMDISK: Compressed image found at block 0
 VFS: Mounted root (ext2 filesystem) readonly.
 Freeing unused kernel memory: 112k init

 I've done series of printk in sys_execve() to see if /sbin/init is
 working, and found out it went thru the whole rcS file okay. Mind you,
 printk is successfully displaying the output on the console while I'm
 still not getting anything from the user processes.

 Having all the kernel boot up log on console means that I've done some
 part right. But why am I not getting anything from the user processes
 on the console screen ?

Please verify that you have a /dev/console in your rootfs, and that it's being 
correctly acessed by the init process.

HTH,

-- 
Ricardo Scop.

\|/
___ -*-
   (@ @)/|\
  /  V  \|  R SCOP Consult.
 /( )\  Linux-based communications
--^^---^^+--
rscop at matrix.com.br
+55 51 999-36-777
Porto Alegre, RS - BRazil