kernel with marvell 64360 support
Hi,
We designed a power-pc 7410 board with galileo mv64360 bridge. We are interested in porting linux on to that board.
Where can I download the linux kernel with 64360 (serial, ethernet, PCI etc) drivers.
please provide the pointers for the same.
Regards,
Suresh Chandra Mannava
Quoted 8 lines · Suresh Chandra Mannava
Hi,
We designed a power-pc 7410 board with galileo mv64360 bridge. We are interested in porting linux on to that board.
Where can I download the linux kernel with 64360 (serial, ethernet, PCI etc) drivers.
please provide the pointers for the same.
You can get the latest code minus 3 patches and the enet driver from the latest linux-2.5 tree on bkbits.net/kernel.org. The 3 patches are in the linuxppc-embedded mail archive. AFAIK, the enet driver is queued to go into the mainline tree but I don't know when that'll happen. If you need it now, you can contact Dale Farnsworth <[email protected]>.
Mark
Quoted 7 lines · Mark A. Greer
Quoted 5 lines · Suresh Chandra Mannava
Hi,
We designed a power-pc 7410 board with galileo mv64360 bridge. We are interested in porting linux on to that board.
Quoted 7 lines
Quoted 3 lines
Where can I download the linux kernel with 64360 (serial, ethernet, PCI etc) drivers.
please provide the pointers for the same.You can get the latest code minus 3 patches and the enet driver from the latest linux-2.5 tree on bkbits.net/kernel.org. The 3 patches are in the linuxppc-embedded mail archive. AFAIK, the enet driver is queued to go into the mainline tree but I don't know when that'll happen. If you need it now, you can contact Dale Farnsworth <[email protected]>.
I failed to mention that there is an i2c driver queued to go in at: http://archives.andrew.net.au/lm-sensors/msg29471.html
Mark
Marvell 64360, MPSC Serial Console Problem
In reply to Mark A. GreerDear Mr. Mark,
We designed a board with PPC 7410 and Marvell 64360 bridge. We successfully ported u-boot and Linux on to this board.
Thanks for your support.
We faced a problem in MPSC serial console part. The problem is, in Serial console data is received once after 32 characters are typed.
Any thing less than 32 characters is not echoed or not transmitted till the 32 character count is reached.
After carefully reviewing the code. We found that the receive buffer size is initialised to 32 bytes. We made a small correction in the code by making the receive buffer size to 1 rxre->bufsize = 1;
After this modification, we got beautiful serial console working fine.
Here is the part of the code from "mpsc.c"
Function name "mpsc_init_rings"
for (i = 0; i < MPSC_RXR_ENTRIES; i++) {
rxre = (struct mpsc_rx_desc *)dp;
/* rxre->bufsize = cpu_to_be16(MPSC_RXBE_SIZE);*/
rxre->bufsize = 1; /* Modified Line*/
rxre->bytecnt = cpu_to_be16(0);
rxre->cmdstat = cpu_to_be32(SDMA_DESC_CMDSTAT_O |
SDMA_DESC_CMDSTAT_EI |
SDMA_DESC_CMDSTAT_F |
SDMA_DESC_CMDSTAT_L);
rxre->link = cpu_to_be32(dp_p + MPSC_RXRE_SIZE);
rxre->buf_ptr = cpu_to_be32(bp_p); dp += MPSC_RXRE_SIZE;
dp_p += MPSC_RXRE_SIZE;
bp += MPSC_RXBE_SIZE;
bp_p += MPSC_RXBE_SIZE;}
Once again thank you very much for your support.
Regards,
Suresh Chandra Mannava
Re: Marvell 64360, MPSC Serial Console Problem
Quoted 9 lines · Suresh Chandra Mannava
<snip>
We faced a problem in MPSC serial console part. The problem is, in Serial console data is received once after 32 characters are typed.
Any thing less than 32 characters is not echoed or not transmitted till the 32 character count is reached.
After carefully reviewing the code. We found that the receive buffer size is initialised to 32 bytes. We made a small correction in the code by making the receive buffer size to 1
rxre->bufsize= 1;
<snip>
Suresh,
I think you fixed a symptom but not the problem. By default, the rx buffers are indeed 32 bytes long (i.e., a cacheline in size). When receiving, the mpsc will generate an interrupt when there is an error, when the buffer is full (32 bytes--unlikely if you're typing), or after a timeout. I suspect your timeout value is bogus so you don't get the interrupt until you fill the buffer with 32 bytes. Please compare the platform_data that you pass to the mpsc driver to other, working systems that use the mpsc (e.g., katana and cpci690). In particular, look at your 'max_idle' value.
Mark
Re: Marvell 64360, MPSC Serial Console Problem
Quoted 10 lines
Suresh,
I think you fixed a symptom but not the problem. By default, the rx buffers are indeed 32 bytes long (i.e., a cacheline in size). When receiving, the mpsc will generate an interrupt when there is an error, when the buffer is full (32 bytes--unlikely if you're typing), or after a timeout. I suspect your timeout value is bogus so you don't get the interrupt until you fill the buffer with 32 bytes. Please compare the
platform_datathat you pass to the mpsc driver to other, working systems that use the mpsc (e.g., katana and cpci690). In particular, look at your 'max_idle' value.Mark
Mr. Mark,
Thank you for your reply. You exactly pointed out the mistake I had done with max_idle. I didn't initialized the mpsc_pdata structure in platform dependent file. Now I initialized max_idle =40. And every thing is working fine.
Still facing some problems with mv64360 giga Ethernet driver. I will come back after a little bit of investigation.
Regards,
Suresh Chandra Mannava