On Wed, 30 Dec 2015 01:51:47 +0100 Marek Vasut <ma...@denx.de> wrote:
> On Wednesday, December 30, 2015 at 12:46:23 AM, Thomas Chou wrote: > > Hi Marek, > > > > On 2015年12月29日 21:25, Marek Vasut wrote: > > > On Tuesday, December 29, 2015 at 02:00:27 PM, Thomas Chou wrote: > > >> Hi Wills, > > >> > > >> On 2015年12月29日 19:17, Wills Wang wrote: > > >>> diff --git a/arch/mips/mach-ath79/Kconfig > > >>> b/arch/mips/mach-ath79/Kconfig index 1d92a5b..b5668e9 100644 > > >>> --- a/arch/mips/mach-ath79/Kconfig > > >>> +++ b/arch/mips/mach-ath79/Kconfig > > >>> @@ -15,6 +15,7 @@ config SOC_AR933X > > >>> > > >>> select SYS_MIPS_CACHE_INIT_RAM_LOAD > > >>> select MIPS_TUNE_24KC > > >>> select AR933X_UART > > >>> > > >>> + select ATH79_SPI > > >> > > >> Both AR933X_UART and ATH79_SPI should not be selected with mach Kconfig. > > >> They should go with board defconfig. > > >> > > >>> diff --git a/drivers/spi/ath79_spi.c b/drivers/spi/ath79_spi.c > > >>> > > >>> +static inline void ath79_spi_delay(int max_hz) > > >>> +{ > > >>> + uint64_t tick = get_tbclk(); > > >>> + > > >>> + do_div(tick, max_hz); > > >>> + tick = get_ticks() + tick + 1; /* get current timestamp */ > > >>> + while (get_ticks() < tick) /* loop till event */ > > >>> + /*NOP*/; > > >>> +} > > >> > > >> Use udelay() instead. > > > > > > You mean get_timer() based delay loop, yes ? > > > > Sorry, my mistake. Just realized that we don't have nano delay yet. The > > code above is fine. > > Just skimming through the code, it seems like bitbanging the SPI using the > generic soft-spi driver might be easier ;-/ AR9331 SPI controller has special shift register for reading received data, so you have no need in reading every single receiving MISO bit with separate gpio access, this can give a small speedup. Next, in openwrt tree there is a dirty-hacky ath79-spi linux kernel patch for very impressive SPI flash read speedup (2 MiB/s instead of 20 KiB/s, I have no precise bandwidth results at the moment). So for better performance it is reasonable to have separate ath79-spi driver. -- Best regards, Antony Pavlov _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot