Hi Claud, I am facing similar issue with poor performance of 88W8686 driver on windows embedded ce device. It could be related to BSP provided by device OEM or the windows platform builder component
I am using Windows Embedded CE 6.0 Platform builder Version: R3, latest rollup update is December, 31, 2012 I face a very low upload speed from the windows embedded CE 6.0. When i upload files to ftp server from this windows embedded CE 6.0 device, upload speed is less than 1kB/s, keep going down until it reach 0 kB/s and wireless card HANG. *I am unable to upload files which is bigger than 20 kB.* Did you face similar problem on your device? --Handy-- On Monday, October 13, 2008 10:47:33 AM UTC+8, claud wrote: > > Hi everyone, > > I try to porting Libertas driver of linux (http://linuxwireless.org/en/ > users/Drivers/libertas<http://www.google.com/url?q=http%3A%2F%2Flinuxwireless.org%2Fen%2Fusers%2FDrivers%2Flibertas&sa=D&sntz=1&usg=AFQjCNGXksKbnvLYRoo1-0VvKSACibBeMg>) > > last week. > After several days working , the driver work now (2.6.26 with muru > patch). > But the performance of driver is bad. The ping RTT is ~25ms , and the > ftp throughput below 100KB/s. > > I know the key problem of performance is SDIO card interrupt is not > supported by current omap > mmc host implementation (2.6.26). > > I try to modify the host driver to support SDIO irq. > But the card interrupt never occur after the new initialize code to > enable SDIO card interrupt. > > According the MMC/SD/SDIO manual of OMAP35X (sprfd2d.pdf) page > 28,29. > I modified the host driver at following part mail. But that don't work > now. > > Do anyone have OMAP3430/OMAP3530 for WinCE BSP could provide the > exmaple to enable/disable/handle > SDIO card interrupt or provide any workable patch for my experiment ? > > Thanks for your advice. > > Claud Yu > > -------------- Enable/Disable SDIO function ------------------ > #define CIRQ_ENABLE (1<<8) > static void omap_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable) > { > struct mmc_omap_host *host = mmc_priv(mmc); > unsigned long flags; > u32 reg; > > reg = INT_EN_MASK; > reg &= ~CIRQ_ENABLE; > > if (enable) > reg |= CIRQ_ENABLE; > > OMAP_HSMMC_WRITE(host->base, ISE, reg); > OMAP_HSMMC_WRITE(host->base, IE, reg); > > mmiowb(); > } > > -------------- Handle code of static irqreturn_t mmc_omap_irq > ---------------- > > if (status & (CIRQ_ENABLE)) { > printk("MMC: Card Interrupt.\n"); > mmc_signal_sdio_irq(host->mmc); > } > > -------------- > > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
