From: Ed S. <sch...@ri...> - 2010-04-30 20:32:46
|
I'd also like to know how to simulate an MMC/SD insert/remove event with Overo Air (2.6.30 kernel) for reloading the Wifi driver (libertas_sdio). I found the following related messages, but did not see an answer about how. Is there way using sysfs or something in /dev? Is there some userspace program? Is a special driver that talks to the MMC/SD driver required? Thanks in advance for any help. -- Ed ----- Original Message ----- > Message: 5 > Date: Tue, 23 Mar 2010 09:50:23 +0100 > From: Sebastien <str...@ca...> > Subject: [Gumstix-users] Simulate an MMC/SD insert/remove event > To: gum...@li... > Message-ID: <1269334223.18583.2.camel@CAMKA-PC-Dev> > Content-Type: text/plain; charset="utf-8" > > Dear all, > > Can someone can tell me how to simulate an MMC/SD insert/remove car > event with the Gumstix Overo Fire? > I need this to try unload and the reload the Wifi driver > (libertas_sdio) I am running linux_omap3_2.6.29 kernel. > Thank you in advance! > > S?bastien ----- Original Message ----- Message: 7 Date: Tue, 1 Dec 2009 13:37:10 -0800 (PST) From: cjp <gu...@so...> Subject: Re: [Gumstix-users] libertas_sdio: reload problem To: gum...@li... Message-ID: <265...@ta...> Content-Type: text/plain; charset=us-ascii Driver can't cope with bringing the Wi2Wi device up unless it has been fully reset. Our approach is to take down the interface, unload the driver, reset device and then bring back up again. Works 100%. Lucas Loizaga wrote: > > On Thu, Nov 26, 2009 at 9:30 AM, Lucas Loizaga < > luc...@in...> wrote: > >> Hi, >> I'm trying to load and unload the module on my linux libertas_sdio, the >> first time all work's fine, but the next insmod i receive the follow >> error: >> >> libertas_sdio: Libertas SDIO driver >> libertas_sdio: Copyright Pierre Ossman >> libertas_sdio mmc1:0001:1: firmware: requesting sd8686_helper.bin >> init: untracked pid 1740 exited >> libertas: failed to load helper firmware >> libertas_sdio: probe of mmc1:0001:1 failed with error -110 >> >> any ideas? >> >> Thanks in advance! >> Lucas > > -- > Lucas A. Loizaga > Ingenieria Inversa S.A. > Freescale Design House > http://www.ingenieria-inversa.com.ar ----- Original Message ----- Message: 1 Date: Tue, 1 Dec 2009 13:39:13 -0800 (PST) From: cjp <gu...@so...> Subject: Re: [Gumstix-users] libertas_sdio: reload problem To: gum...@li... Message-ID: <265...@ta...> Content-Type: text/plain; charset=us-ascii Another important element you might consider is to SW trigger a MMC/SD insert/remove event! This gives the added bonus of taking the entire SD slot down, saving on power when the WiFi functionality is not required. This has a huge saving on consumption. To bring the device up again, just take out of reset and trigger a insert/remove event. Linux OMAP experts -> www.soldelgroup.com cjp wrote: > > Driver can't cope with bringing the Wi2Wi device up unless it has been > fully reset. Our approach is to take down the interface, unload the > driver, reset device and then bring back up again. Works 100%. > > Lucas Loizaga wrote: >> >> On Thu, Nov 26, 2009 at 9:30 AM, Lucas Loizaga < >> luc...@in...> wrote: >> >>> Hi, >>> I'm trying to load and unload the module on my linux libertas_sdio, the >>> first time all work's fine, but the next insmod i receive the follow >>> error: >>> >>> libertas_sdio: Libertas SDIO driver >>> libertas_sdio: Copyright Pierre Ossman >>> libertas_sdio mmc1:0001:1: firmware: requesting sd8686_helper.bin >>> init: untracked pid 1740 exited >>> libertas: failed to load helper firmware >>> libertas_sdio: probe of mmc1:0001:1 failed with error -110 >>> >>> any ideas? >>> >>> Thanks in advance! >>> Lucas >>> >> >> -- >> Lucas A. Loizaga >> Ingenieria Inversa S.A. >> Freescale Design House >> http://www.ingenieria-inversa.com.ar |
From: amenon <ame...@gm...> - 2010-10-21 20:41:53
|
Any luck getting this to work? I'd like to power off the wifi and bring it back up when required. Thanks. Ed Schwartz-2 wrote: > > I'd also like to know how to simulate an MMC/SD insert/remove event with > Overo Air (2.6.30 kernel) for reloading the Wifi driver (libertas_sdio). > I found the following related messages, but did not see an answer about > how. Is there way using sysfs or something in /dev? Is there some > userspace program? Is a special driver that talks to the MMC/SD driver > required? > > Thanks in advance for any help. > > -- Ed > > > -- View this message in context: http://old.nabble.com/Re%3A-Simulate-an-MMC-SD-insert-remove-event-%28Sebastien%29-tp28416442p30023422.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Matt S. <ms...@ea...> - 2010-10-26 13:58:19
|
I did a couple of things in drivers/mmc/omap_hsmmc.c 1) Added a sysfs file that when written to, makes the driver reload the firmware. So if I control the GPIO reset line from my app, I can force a reload when I take it out of reset 2) Fake a card detect upon coming out of suspend by adding a schedule_work(&host->mmc_carddetect_work) in omap_hsmm_resume if the host id is MMC2 I'm running the 2.4 PM kernel, but the sysfs diffs should work on the normal one. Contact me off list if you want them. Its a very minor change. As an aside, there's been a lot of email on the libertas list about making sure the firmware is there when the device is taken out of suspend, so that make make its way upstream soon if it hasn't already. Matt Singer _____ From: amenon [mailto:ame...@gm...] Sent: Thursday, October 21, 2010 4:42 PM To: gum...@li... Subject: Re: [Gumstix-users] Simulate an MMC/SD insert/remove event (Sebastien) Any luck getting this to work? I'd like to power off the wifi and bring it back up when required. Thanks. Ed Schwartz-2 wrote: > > I'd also like to know how to simulate an MMC/SD insert/remove event with > Overo Air (2.6.30 kernel) for reloading the Wifi driver (libertas_sdio). > I found the following related messages, but did not see an answer about > how. Is there way using sysfs or something in /dev? Is there some > userspace program? Is a special driver that talks to the MMC/SD driver > required? > > Thanks in advance for any help. > > -- Ed > > > -- View this message in context: http://old.nabble.com/Re%3A-Simulate-an-MMC-SD-insert-remove-event-%28Sebast ien%29-tp28416442p30023422.html Sent from the Gumstix mailing list archive at Nabble.com. ---------------------------------------------------------------------------- -- Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ gumstix-users mailing list gum...@li... https://lists.sourceforge.net/lists/listinfo/gumstix-users No virus found in this incoming message. Checked by AVG - www.avg.com Version: 9.0.862 / Virus Database: 271.1.1/3198 - Release Date: 10/21/10 02:34:00 _____ No virus found in this message. Checked by AVG - www.avg.com Version: 10.0.1152 / Virus Database: 424/3220 - Release Date: 10/26/10 |
From: Markus S. <msv...@ae...> - 2010-10-26 14:08:52
|
Hi Matt, This is interesting news, thanks for the update. On 2010.10.26 9:32, Matt Singer wrote: > I did a couple of things in drivers/mmc/omap_hsmmc.c > 1) Added a sysfs file that when written to, makes the driver reload > the firmware. So if I control the GPIO reset line from my app, I can > force a reload when I take it out of reset > 2) Fake a card detect upon coming out of suspend by adding a > schedule_work(&host->mmc_carddetect_work) in omap_hsmm_resume if the > host id is MMC2 > I'm running the 2.4 PM kernel, but the sysfs diffs should work on the > normal one. Contact me off list if you want them. Its a very minor > change. > As an aside, there's been a lot of email on the libertas list about > making sure the firmware is there when the device is taken out of > suspend, so that make make its way upstream soon if it hasn't already. Any idea if libertas will support rfkill? This would be great to have. Right now I don't know of any way to reliably disable RF transmissions from the Gumstix Overo. Regards, Markus. > Matt Singer > > ------------------------------------------------------------------------ > *From:* amenon [mailto:ame...@gm...] > *Sent:* Thursday, October 21, 2010 4:42 PM > *To:* gum...@li... > *Subject:* Re: [Gumstix-users] Simulate an MMC/SD insert/remove event > (Sebastien) > > > Any luck getting this to work? I'd like to power off the wifi and bring it > back up when required. > > Thanks. > > > Ed Schwartz-2 wrote: > > > > I'd also like to know how to simulate an MMC/SD insert/remove event with > > Overo Air (2.6.30 kernel) for reloading the Wifi driver (libertas_sdio). > > I found the following related messages, but did not see an answer about > > how. Is there way using sysfs or something in /dev? Is there some > > userspace program? Is a special driver that talks to the MMC/SD driver > > required? > > > > Thanks in advance for any help. > > > > -- Ed > > > > > > > > -- > View this message in context: > http://old.nabble.com/Re%3A-Simulate-an-MMC-SD-insert-remove-event-%28Sebastien%29-tp28416442p30023422.html > Sent from the Gumstix mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > Nokia and AT&T present the 2010 Calling All Innovators-North America > contest > Create new apps & games for the Nokia N8 for consumers in U.S. and Canada > $10 million total in prizes - $4M cash, 500 devices, nearly $6M in > marketing > Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store > http://p.sf.net/sfu/nokia-dev2dev > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 9.0.862 / Virus Database: 271.1.1/3198 - Release Date: > 10/21/10 02:34:00 > > ------------------------------------------------------------------------ > > No virus found in this message. > Checked by AVG - www.avg.com <http://www.avg.com> > Version: 10.0.1152 / Virus Database: 424/3220 - Release Date: 10/26/10 > > > ------------------------------------------------------------------------------ > Nokia and AT&T present the 2010 Calling All Innovators-North America contest > Create new apps& games for the Nokia N8 for consumers in U.S. and Canada > $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing > Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store > http://p.sf.net/sfu/nokia-dev2dev > > > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users |
From: Thots <sra...@as...> - 2012-04-06 23:02:42
|
Has anyone recently been able to turn wifi on and off with GPIO 16 and then reload the Libertas firmware? I would ask Matt how he did it, but he hasn't sent anything to the mailing list since 2010. For my application, I always need to power up the gumstix with the WiFi module powered off. I've looked into the Libertas code, but I'm having a hard time figuring out how to load the libertas firmware after the gumstix is already running. Any suggestions would be appreciated, Thots > I did a couple of things in drivers/mmc/omap_hsmmc.c > 1) Added a sysfs file that when written to, makes the driver reload > the firmware. So if I control the GPIO reset line from my app, I can > force a reload when I take it out of reset > 2) Fake a card detect upon coming out of suspend by adding a > schedule_work(&host->mmc_carddetect_work) in omap_hsmm_resume if the > host id is MMC2 > I'm running the 2.4 PM kernel, but the sysfs diffs should work on the > normal one. Contact me off list if you want them. Its a very minor > change. > As an aside, there's been a lot of email on the libertas list about > making sure the firmware is there when the device is taken out of > suspend, so that make make its way upstream soon if it hasn't already. > Matt Singer -- View this message in context: http://gumstix.8.n6.nabble.com/Re-Simulate-an-MMC-SD-insert-remove-event-Sebastien-tp664934p4693967.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Patrick M. (D. - CA/Ottawa) <Pat...@dr...> - 2012-04-09 12:56:59
|
> -----Original Message----- > From: Thots [mailto:sra...@as...] > > Has anyone recently been able to turn wifi on and off with > GPIO 16 and then > reload the Libertas firmware? I would ask Matt how he did > it, but he hasn't > sent anything to the mailing list since 2010. > > For my application, I always need to power up the gumstix > with the WiFi > module powered off. I've looked into the Libertas code, but > I'm having a > hard time figuring out how to load the libertas firmware > after the gumstix > is already running. > > Any suggestions would be appreciated, > Thots > I haven't done this for WiFi, but I am using an ugly hack to make the mmc/sd card removable by unloading the omap_hsmmc Module. When I remove the omap_hsmmc module, both the WiFi and SD card are disabled. Then, when we want to insert a mew card, I reload the module and both WiFi and sd card are detected. Patrick |
From: Harvey C. <hch...@3g...> - 2012-04-09 13:22:07
|
On Apr 9, 2012, at 8:56 AM, Patrick Maheral (DWI - CA/Ottawa) wrote: >> -----Original Message----- >> From: Thots [mailto:sra...@as...] >> >> Has anyone recently been able to turn wifi on and off with >> GPIO 16 and then >> reload the Libertas firmware? I would ask Matt how he did >> it, but he hasn't > > I haven't done this for WiFi, but I am using an ugly hack to > make the mmc/sd card removable by unloading the omap_hsmmc > Module. When I remove the omap_hsmmc module, both the WiFi > and SD card are disabled. Then, when we want to insert a > mew card, I reload the module and both WiFi and sd card are > detected. We did something similar. We would toggle a GPIO to put the module in reset and then unload the modules. However, the only way we could figure out how to re-load/discover was to remove and then re-insert the omap_hsmmc module which also knocks out the microsd. It seems the trick would be figuring out how to get the hsmmc module to re-discover the wifi device. |
From: Thots <sra...@as...> - 2012-04-09 18:03:57
|
Patrick, Much thanks for the information. I didn't know it was possible to make the sd card removable. Can you please tell me what modifications you made so I can try reproducing it? Also, how did you make omap_hsmmc a module that can be loaded and unloaded? I see a module for libertas, but not omap_hsmmc. I was looking through the menuconfig for Linux. I found that I had this checked [*]: Device Drivers --> MMC/SD/SDIO card support --> Assume MMC/SD cards are non-removable (DANGEROUS) I turned this off so it is no longer checked [ ]. However, I still haven't found out how to turn omap_hsmmc into a module. -Thots Patrick Maheral-3 wrote > > > I haven't done this for WiFi, but I am using an ugly hack to > make the mmc/sd card removable by unloading the omap_hsmmc > Module. When I remove the omap_hsmmc module, both the WiFi > and SD card are disabled. Then, when we want to insert a > mew card, I reload the module and both WiFi and sd card are > detected. > > Patrick > ------------------------------------------------------------------------------ > For Developers, A Lot Can Happen In A Second. > Boundary is the first to Know...and Tell You. > Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! > http://p.sf.net/sfu/Boundary-d2dvs2 > _______________________________________________ > gumstix-users mailing list > gumstix-users@.sourceforge > https://lists.sourceforge.net/lists/listinfo/gumstix-users > -- View this message in context: http://gumstix.8.n6.nabble.com/Re-Simulate-an-MMC-SD-insert-remove-event-Sebastien-tp664934p4716727.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Patrick M. (D. - CA/Ottawa) <Pat...@dr...> - 2012-04-09 20:46:30
|
> -----Original Message----- > From: Thots [mailto:sra...@as...] > > Patrick, > > Much thanks for the information. I didn't know it was > possible to make the > sd card removable. Can you please tell me what modifications > you made so I > can try reproducing it? > > Also, how did you make omap_hsmmc a module that can be loaded > and unloaded? > I see a module for libertas, but not omap_hsmmc. I was > looking through the > menuconfig for Linux. I found that I had this checked [*]: > > Device Drivers --> MMC/SD/SDIO card support --> Assume MMC/SD > cards are > non-removable (DANGEROUS) > > I turned this off so it is no longer checked [ ]. However, I > still haven't > found out how to turn omap_hsmmc into a module. > I set the "TI OMAP High Speed Multimedia Card Interface support" to "M" (or, in the .config file set CONFIG_MMC_OMAP_HS=m) > -Thots |
From: Thots <sra...@as...> - 2012-04-10 21:13:42
|
Patrick Maheral (DWI - CA/Ottawa) wrote > > > I haven't done this for WiFi, but I am using an ugly hack to > make the mmc/sd card removable by unloading the omap_hsmmc > Module. When I remove the omap_hsmmc module, both the WiFi > and SD card are disabled. Then, when we want to insert a > mew card, I reload the module and both WiFi and sd card are > detected. > > Patrick > ------------------------------------------------------------------------------ > For Developers, A Lot Can Happen In A Second. > Boundary is the first to Know...and Tell You. > Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! > http://p.sf.net/sfu/Boundary-d2dvs2 > _______________________________________________ > gumstix-users mailing list > gumstix-users@.sourceforge > https://lists.sourceforge.net/lists/listinfo/gumstix-users > My kernel never finishes booting when I make the omap_hsmmc a module. I'm using Sakoman's 3.2 kernel. My uImage and everything are on my SD card. You guys are also booting off of the SD card and not flash memory, right? I used Meld Diff Viewer to compare the console output of a failed boot where omap_hsmmc was a module and a successfull boot where omap_hsmmc was not a module. The first noticable difference between the logs was that the failed boot (with ohap_hsmmc acting as a module) had this extra line: "regulator_init_complete: VMMC1: incomplete constraints, leaving on" This line is printed out from the end of /drivers/regulator/core.c while iterating through "list_for_each_entry(rdev, ®ulator_list, list)". From what I can tell, 'VMMC1' is not in regulator_list when omap_hsmmc is not a module. That's why the line isn't printed out on the successfull boot. Are there any suggestions on how I can get the kernel to finish booting when omap_hsmmc is a module? Here is the relevent portion of the failed boot log: fbcvt: 1024x768@60: CVT Name - .786M3-R Console: switching to colour frame buffer device 128x48 regulator_init_complete: VDAC: incomplete constraints, leaving on regulator_init_complete: VMMC1: incomplete constraints, leaving on regulator_init_complete: vads7846: incomplete constraints, leaving on twl_rtc twl_rtc: setting system clock to 2000-01-01 00:00:10 UTC (946684810) Waiting for root device /dev/mmcblk0p2... ---The log stops here and the Gumstix never finishes booting Here is the successfull boot log: fbcvt: 1024x768@60: CVT Name - .786M3-R Console: switching to colour frame buffer device 128x48 regulator_init_complete: VDAC: incomplete constraints, leaving on regulator_init_complete: vads7846: incomplete constraints, leaving on twl_rtc twl_rtc: setting system clock to 2000-01-01 00:00:10 UTC (946684810) Waiting for root device /dev/mmcblk0p2... mmc0: host does not support reading read-only switch. assuming write-enable. mmc0: new high speed SDHC card at address 0001 mmcblk0: mmc0:0001 00000 7.41 GiB mmcblk0: p1 p2 kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk0p2): warning: maximal mount count reached, running e2fsck is recommended mmc1: new SDIO card at address 0001 EXT3-fs (mmcblk0p2): using internal journal EXT3-fs (mmcblk0p2): mounted filesystem with writeback data mode VFS: Mounted root (ext3 filesystem) on device 179:2. devtmpfs: mounted Freeing init memory: 228K INIT: version 2.86 booting Please wait: booting... ---The log continues and the Gumstix boots successfully Thanks for all the help you've already given, Thots -- View this message in context: http://gumstix.8.n6.nabble.com/Re-Simulate-an-MMC-SD-insert-remove-event-Sebastien-tp664934p4781026.html Sent from the Gumstix mailing list archive at Nabble.com. |
From: Harvey C. <hch...@3g...> - 2012-04-11 09:23:04
|
On Apr 10, 2012, at 5:13 PM, Thots wrote: > My kernel never finishes booting when I make the omap_hsmmc a module. I'm > using Sakoman's 3.2 kernel. My uImage and everything are on my SD card. > You guys are also booting off of the SD card and not flash memory, right? Well, if you're booting off of the SD card, you're going to need that module inside the kernel. I boot from the internal flash. You need the real solution of how to get omap_hsmmc to rediscover the mmc device. > Waiting for root device /dev/mmcblk0p2... > ---The log stops here and the Gumstix never finishes booting It's going to wait a long time. > Waiting for root device /dev/mmcblk0p2... > mmc0: host does not support reading read-only switch. assuming write-enable. > mmc0: new high speed SDHC card at address 0001 The omap_hsmmc module has been initialized here (the internally-compiled one) and has found its first mmc device, the microSD card. It goes on to automatically start the block driver. > mmcblk0: mmc0:0001 00000 7.41 GiB > mmcblk0: p1 p2 > kjournald starting. Commit interval 5 seconds > EXT3-fs (mmcblk0p2): warning: maximal mount count reached, running e2fsck is > recommended > mmc1: new SDIO card at address 0001 Here it finds the wifi chip. > EXT3-fs (mmcblk0p2): using internal journal > EXT3-fs (mmcblk0p2): mounted filesystem with writeback data mode > VFS: Mounted root (ext3 filesystem) on device 179:2. > devtmpfs: mounted > Freeing init memory: 228K > INIT: version 2.86 booting > Please wait: booting... > ---The log continues and the Gumstix boots successfully |
From: Patrick M. (D. - CA/Ottawa) <Pat...@dr...> - 2012-04-11 13:07:26
|
> -----Original Message----- > From: Thots [mailto:sra...@as...] > Patrick Maheral (DWI - CA/Ottawa) wrote > > > > I haven't done this for WiFi, but I am using an ugly hack to > > make the mmc/sd card removable by unloading the omap_hsmmc > > Module. When I remove the omap_hsmmc module, both the WiFi > > and SD card are disabled. Then, when we want to insert a > > mew card, I reload the module and both WiFi and sd card are > > detected. > > > > Patrick > > > > My kernel never finishes booting when I make the omap_hsmmc a > module. I'm > using Sakoman's 3.2 kernel. My uImage and everything are on > my SD card. > You guys are also booting off of the SD card and not flash > memory, right? Ok, that won't work then. You need the module compiled into your kernel. Even if you could get the kernel to finish booting, unloading/reloading it would cause your root filesystem to umount (assuming you could even unload it). Sounds like you need to find a better way to trigger the MMC device discovery on a device by device basis. When I first looked into this, I considered simulating a "Card Detect" GPIO pin interrupt to cause the MMC module to detect the card, but found the mod load/unload a simpler solution for my purposes. Patrick |