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
From: Mark A. Greer <hidden> Date: 2005-02-22 17:05:52
Suresh Chandra Mannava wrote:
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 [off-list ref].
Mark
From: Mark A. Greer <hidden> Date: 2005-02-22 21:04:37
Mark A. Greer wrote:
Suresh Chandra Mannava wrote:
quoted
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
[off-list ref].
Dear 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
From: Mark A. Greer <hidden> Date: 2005-04-20 19:41:57
Suresh Chandra Mannava wrote:
<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
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
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