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

Reply via email to