Re: [PATCH 2/2] imx25: imx_spi: support CSPI v0.7 as found on i.MX25

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 30, 2011 at 10:30:51AM +0400, Paul Fertser wrote:
> +
> +#if 0
> +/* MX1, MX31, MX35, MX51 CSPI */
> +static unsigned int spi_imx_clkdiv_2(unsigned int fin,
> +		unsigned int fspi)
> +{
> +	int i, div = 4;
> +
> +	for (i = 0; i < 7; i++) {
> +		if (fspi * div >= fin)
> +			return i;
> +		div <<= 1;
> +	}
> +
> +	return 7;
> +}
> +#endif
> +
> +static void cspi_0_7_chipselect(struct spi_device *spi, int is_active)
> +{
> +	struct spi_master *master = spi->master;
> +	struct imx_spi *imx = container_of(master, struct imx_spi, master);
> +	void __iomem *base = imx->regs;
> +	unsigned int cs = 0;
> +	int gpio = imx->cs_array[spi->chip_select];
> +	unsigned int reg = CSPI_0_7_CTRL_ENABLE | CSPI_0_7_CTRL_MASTER;
> +
> +	if (spi->mode & SPI_CS_HIGH)
> +		cs = 1;
> +
> +	if (!is_active) {
> +		if (gpio >= 0)
> +			gpio_set_value(gpio, !cs);
> +		return;
> +	}
> +
> +#if 0
> +	reg |= spi_imx_clkdiv_2(166000000, spi->max_speed_hz) <<
> +	  CSPI_0_7_CTRL_DR_SHIFT;
> +#endif
> +	reg |= 7 << CSPI_0_7_CTRL_DR_SHIFT; /* slowest speed */

Can we fix this before merging it? Are there any problems with faster
speeds?

Sascha


-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox


[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux