Can you please resend the patch as a unified diff (diff -u oldfile
newfile). Patches in ed format is not can not be applied or reviewed.


lör 2014-10-25 klockan 09:51 +0100 skrev Gnichi Mohamed:
> This is the patch that i gathered from the discussion. I tested it
> with mcp3008 adc full duplex communication and it works as a charm.
> 
> 
> 
> 2014-10-25 9:19 GMT+01:00 Henrik Nordström
> <[email protected]>:
>         Can you please resend this as a unified diff? (diff -u)
>         
>         
>         fre 2014-10-24 klockan 01:04 -0700 skrev Gnichi Mohamed:
>         > I made a cooking of patches in case any one needs it. Mo
>         >
>         >
>         > 513,519d512
>         > < /* keep unused burst */
>         > < void spi_clear_dhb(void *base_addr)
>         > < {
>         > <         u32 reg_val = readl(base_addr + SPI_CTL_REG);
>         > <         reg_val &= ~SPI_CTL_DHB;
>         > <         writel(reg_val, base_addr + SPI_CTL_REG);
>         > < }
>         > 591a585
>         > >     aw_spi_sel_dma_type(0, aw_spi->base_addr);
>         > 617c611,612
>         > <     spin_unlock_irqrestore(&aw_spi->lock, flags);
>         > ---
>         > >     aw_spi_sel_dma_type(0, aw_spi->base_addr);
>         > >     spin_unlock_irqrestore(&aw_spi->lock, flags);
>         > 958,960c953,956
>         > <     #else
>         > <                aw_spi_sel_dma_type(1, base_addr);
>         > <     #endif
>         > ---
>         > >         aw_spi_sel_dma_type(0, base_addr);
>         > >         #else
>         > >         aw_spi_sel_dma_type(1, base_addr);
>         > >         #endif
>         > 1008,1009c1004
>         > <         unsigned int poll_time_rx = 0x7ffff;
>         > <                 unsigned int poll_time_tx = 0xfffff;
>         > ---
>         > >         unsigned int poll_time = 0xfffff;
>         > 1016,1022c1011
>         > <         aw_spi_start_xfer(base_addr);
>         > <                 if (tx_len) {
>         > <                         while
>         ( aw_spi_query_txfifo(base_addr) &&
>         > (--poll_time_tx > 0) ); //txFIFO counter
>         > <                         if ( poll_time_tx <= 0 ) {
>         > <                                 spi_wrn("cpu tx data time
>         out!\n");
>         > <                         }
>         > <                 }
>         > ---
>         > >         aw_spi_start_xfer(base_addr);
>         > 1024c1013
>         > <             while(rx_len && (--poll_time_rx >0)) {
>         > ---
>         > >             while(rx_len && (--poll_time >0)) {
>         > 1026,1032c1015,1019
>         > <                    if (aw_spi_query_rxfifo(base_addr)) {
>         > <                                         *rx_buf++ =
>         readb(base_addr
>         > + SPI_RXDATA_REG); //fetch data
>         > <                                        --rx_len;
>         > <                                 }
>         > <                                 if ( poll_time_rx <= 0 ) {
>         > <                                         spi_wrn("cpu rx
>         data time
>         > out!\n");
>         > <                                }
>         > ---
>         > >                 if(aw_spi_query_rxfifo(base_addr)){
>         > >                     *rx_buf++ =  readb(base_addr +
>         > SPI_RXDATA_REG);//fetch data
>         > >                     --rx_len;
>         > >                     poll_time = 0xffff;
>         > >                 }
>         > 1034c1021,1025
>         > <
>         > ---
>         > >         } else {
>         > >
>          while(aw_spi_query_txfifo(base_addr)&&(--poll_time > 0)
>         > );/* txFIFO counter */
>         > >         }
>         > >         if(poll_time <= 0) {
>         > >             spi_wrn("cpu tx data time out!\n");
>         > 1093,1096d1083
>         > <                                     /* full duplex mode */
>         > <                         if (t->rx_buf && t->tx_buf)
>         > <                         spi_clear_dhb(aw_spi->base_addr);
>         > <
>         >
>         >
>         >
>         > --
>         
>         > You received this message because you are subscribed to the
>         Google
>         > Groups "linux-sunxi" 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/d/optout.
>         
>         
>         --
>         You received this message because you are subscribed to a
>         topic in the Google Groups "linux-sunxi" group.
>         To unsubscribe from this topic, visit
>         https://groups.google.com/d/topic/linux-sunxi/RpjSIJNJjTM/unsubscribe.
>         To unsubscribe from this group and all its topics, send an
>         email to [email protected].
>         For more options, visit https://groups.google.com/d/optout.
>         
> 
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "linux-sunxi" 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/d/optout.


-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" 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/d/optout.

Reply via email to