1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

IPv6+SDHC mod?

Discussion in 'Tomato Firmware' started by Disassembler, Sep 10, 2013.

  1. Disassembler

    Disassembler Reformed Router Member

    I have one of these WRT54L boxes with only 4M of flash and wanted to do a little more with it, so I finally got around to giving it a nice little SD card slot scavenged from an old phone. Now I had been running Toastman's Tomato with IPv6 ever since I switched it from OpenWRT, and stability problems of the tunnel were one of the reasons why I wanted stuff like tcpdump on my card. Problem is, while versions like Slodki's work just fine wih my card, I can't find a Tomato fork with both SDHC support and IPv6 that will also fit on my router. Does something like this exist?
    Eventually I think I'll start rolling my own from source but with the internet connection I have, checking out some 1.7 GB is a lengthy (as in "at least days") process, so I'd like to check if there's a quicker way :)
     
  2. Disassembler

    Disassembler Reformed Router Member

    OK, so it seems there ain't, and AFAICT it's because the SD/MMC driver hasn't been ported to the 2.6 kernel.
    So checking out the git repo worked and I set out explore how to do that. 2.6 has a complete MMC driver framework built in already so it should be significantly simpler to add support there by writing an MMC host driver. I chose Shibby's branch to experiment with as it seems to be the most featureful so far, but configuring the kenel for MMC I already hit a problem:
    Code:
      CC [M]  drivers/mmc/card/block.o
    drivers/mmc/card/block.c: In function 'mmc_blk_issue_rq':
    drivers/mmc/card/block.c:328: error: implicit declaration of function 'end_that_request_chunk'
    drivers/mmc/card/block.c:335: error: implicit declaration of function 'end_that_request_last'
    make[3]: *** [drivers/mmc/card/block.o] Error 1
    
    The kernel used is 2.6.22.19, and the original from kernel.org it has this function defined in include/linux/blkdev.h and implemented in block/ll_rw_blk.c. It was removed in 2.6.25 though. So it seems the source is for some reason hacked together from bits from different versions that don't always play together well---at least when using features that aren't enabled in the current distributions.
    I suppose I have to try and get Shibby to comment on this :) but as there'll be other who have worked on the same sources, maybe you have some idea too why this is so and what would be the best way to go about it that doesn't break too much other stuff?
     
  3. jerrm

    jerrm Network Guru Member

    Shibby has sd/mmc support enabled and working for the RTN66U. The patches may only be in the RT-N branch, and I don't know how device specific it is, but could be enough get things going.
     
  4. Toastman

    Toastman Super Moderator Staff Member Member

  5. shibby20

    shibby20 Network Guru Member

    1) sdhc/mmc driver works only on K24. Even more: we have to ise OLDER toolchain to compile this module!
    2) SDHC driver from RT-N branch IMO will not work on sd-mod.
    3) IMO IPv6 + SD-mod it`s not posibble at the moment. It`s time to buy new router with USB port :)
     

Share This Page