Forum Discussion
uClinux MMC SPI Driver
Just to let everyone know, an MMC SPI Driver for Alteras SPI Core (modified) is in the works.. currently, cards can be recognized, read/write, and even partitioned.. but some bugs are being worked out. If anyone is interested in an early release, let me know....
56 Replies
- Altera_Forum
Honored Contributor
--- Quote Start --- originally posted by jdhar@Apr 8 2006, 10:49 AM hippo, i back-ported my mmc driver to 2.6.11, and the problem is gone. this was as suspected since the problem was there without mmc, but i really don't think it's hardware.oh so confusing!
<div align='right'><{post_snapback}> (index.php?act=findpost&pid=14138)
--- quote end ---
--- Quote End --- J, I am checking more kernel patches, up to patch-2.6.10, 2.6.11, 2.6.12 of kernel.org. I will check more boards, and boards qsf setting, too. One thing to note about high speed logic niose, it is not related to clock freq, but the slew rate and number of nodes which switch at the same time.
- Altera_Forum
Honored Contributor
I changed qsf for SSN, but the problem still. So it is not like SSN.
I am installing "git", and will hack into kernel deeper. - Altera_Forum
Honored Contributor
hey hippo,
It's true that reflections are primarily caused by rise/fall times and SSO, but, clock frequency does affect it. If you are running RAM at 10M, reflections won't matter because they will have died down by the time data is sampled; running at 100M is different because the over/undershoot can be sampled instead of the stable data. So that's why I increase clock rates in testing. - Altera_Forum
Honored Contributor
MMC Driver Update
----------------------- Due to the issues in 2.6.16, I am continuing work in 2.6.11 instead since it's the last known stable kernel. The driver version is now 0.1.3, and can now be used as a kernel module. This version is much more stable than 0.1.1 (initial release). If anyone is interested in a diff patch, let me know; otherwise, just get the whole/part kernel tree from: http://via.dynalias.org/svn/uclinux/linux-2.6.11/trunk/ (http://via.dynalias.org/svn/uclinux/linux-2.6.11/trunk/) Driver is in drivers/mmc directory. J - Altera_Forum
Honored Contributor
--- Quote Start --- originally posted by jdhar@Apr 10 2006, 04:46 AM hey hippo,it's true that reflections are primarily caused by rise/fall times and sso, but, clock frequency does affect it. if you are running ram at 10m, reflections won't matter because they will have died down by the time data is sampled; running at 100m is different because the over/undershoot can be sampled instead of the stable data. so that's why i increase clock rates in testing.
<div align='right'><{post_snapback}> (index.php?act=findpost&pid=14178)
--- quote end ---
--- Quote End --- you are right. I am going to trace into memory management to find out the problem. What is the error message on your board before crash?
- Altera_Forum
Honored Contributor
No error message, that's the beautiful part http://forum.niosforum.com/work2/style_emoticons/<#EMO_DIR#>/smile.gif It just hangs.
- Altera_Forum
Honored Contributor
hippo,
do you have a patch for 2.6.12? I'm going to take a shot at looking at the differences between .11 and .12. 2.6.11 was put out by Microtronix, right? I'm worried that maybe they stuck in some specific hacks to get it working that weren't carried over to any other versions. If I can get up to .12, I will compare .11 and .12 to see if I can spot anything. J - Altera_Forum
Honored Contributor
--- Quote Start --- originally posted by jdhar@Apr 11 2006, 11:05 AM hippo,do you have a patch for 2.6.12? i'm going to take a shot at looking at the differences between .11 and .12. 2.6.11 was put out by microtronix, right? i'm worried that maybe they stuck in some specific hacks to get it working that weren't carried over to any other versions. if i can get up to .12, i will compare .11 and .12 to see if i can spot anything.
j
<div align='right'><{post_snapback}> (index.php?act=findpost&pid=14213)
--- quote end ---
--- Quote End --- Yes, please find, http://forum.niosforum.com/forum/index.php...ype=post&id=138 (http://forum.niosforum.com/forum/index.php?act=attach&type=post&id=138)
The first patch , linux-2.6.11-nios2-01.diff , come from 2.6.x , is believed to be clean, with only uart and altcf driver. The next patch, linux-2.6.12-nios2-02.diff, is the minimal changes that is required to compile 2.6.12. The linux-2.6.11 passed the tests, but linux-2.6.12 failed on one of my board.cd~/download wget -N http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.tar.bz2 wget -N http://www.uclinux.org/pub/uClinux/uClinux-2.6.x/linux-2.6.11-uc0.patch.gz wget -N http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.12.tar.bz2 wget -N http://www.uclinux.org/pub/uClinux/uClinux-2.6.x/linux-2.6.12-uc0.patch.gz cd ~ tar jxf ~/download/linux-2.6.11.tar.bz2 cd ~/linux-2.6.11 zcat ~/download/linux-2.6.11-uc0.patch.gz | patch -p1 patch -p0 <~/download/linux-2.6.11-nios2-01.diff cd ~ tar jxf ~/download/linux-2.6.12.tar.bz2 cd ~/linux-2.6.12 zcat ~/download/linux-2.6.12-uc0.patch.gz | patch -p1 patch -p0 <~/download/linux-2.6.11-nios2-01.diff patch -p0 <~/download/linux-2.6.12-nios2-02.diff - Altera_Forum
Honored Contributor
Ok, and just so I know, how did you get these patches? Are these a combination of the uClinux patches put out on top of code you have moved yourself (nios2nommu stuff for example - or is that in the uClinux tree?)? This is just so I know what you did and what was already done...
- Altera_Forum
Honored Contributor
--- Quote Start --- originally posted by jdhar@Apr 11 2006, 12:11 PM ok, and just so i know, how did you get these patches? are these a combination of the uclinux patches put out on top of code you have moved yourself (nios2nommu stuff for example - or is that in the uclinux tree?)? this is just so i know what you did and what was already done...<div align='right'><{post_snapback}> (index.php?act=findpost&pid=14222)
--- quote end ---
--- Quote End --- The uClinux uc0 patch is required for each kernel release. The first patch is just pull-out from the Microtronix's 1.4 release, the arch/nios2nommu, include/asm-nios2nommu, include/linux/elf.h, ide.h , uart and altcf. The second patch fix the compile errors, and got here by looking at other arch's patches, eg sh,h8300,mips,arm etc.