svn commit: r238965 - head/sys/dev/spibus

Aleksandr Rybalko ray at dlink.ua
Wed Aug 1 11:59:46 UTC 2012


On Wed, 1 Aug 2012 01:18:36 +0000 (UTC)
Warner Losh <imp at FreeBSD.org> wrote:

>> Author: imp
>> Date: Wed Aug  1 01:18:36 2012
>> New Revision: 238965
>> URL: http://svn.freebsd.org/changeset/base/238965
>> 
>> Log:
>>   Add the chip select glue.
>> 
>> Modified:
>>   head/sys/dev/spibus/spi.h
>>   head/sys/dev/spibus/spibus.c
>> 
>> Modified: head/sys/dev/spibus/spi.h
>> ==============================================================================
>> --- head/sys/dev/spibus/spi.h	Wed Aug  1 00:36:12 2012
>> (r238964) +++ head/sys/dev/spibus/spi.h	Wed Aug  1 01:18:36
>> 2012	(r238965) @@ -1,6 +1,7 @@
>>  /* $FreeBSD$ */
>>  
>>  struct spi_command {
>> +	int	cs;
>>  	void	*tx_cmd;
>>  	uint32_t tx_cmd_sz;
>>  	void	*rx_cmd;
>> @@ -10,3 +11,5 @@ struct spi_command {
>>  	void	*rx_data;
>>  	uint32_t rx_data_sz;
>>  };
>> +
>> +#define	SPI_CHIP_SELECT_HIGH	0x1		/*
>> Chip select high (else low) */
>> 
>> Modified: head/sys/dev/spibus/spibus.c
>> ==============================================================================
>> --- head/sys/dev/spibus/spibus.c	Wed Aug  1 00:36:12
>> 2012	(r238964) +++ head/sys/dev/spibus/spibus.c	Wed
>> Aug  1 01:18:36 2012	(r238965) @@ -158,6 +158,9 @@
>> spibus_hinted_child(device_t bus, const static int
>>  spibus_transfer_impl(device_t dev, device_t child, struct
>> spi_command *cmd) {
>> +	/* Maybe set flags too? spi mode? */
>> +	spibus_get_cs(dev, &cmd->cs);
>> +
>>  	return (SPIBUS_TRANSFER(device_get_parent(dev), child,
>> cmd)); }
>>  

Hi Warner,

why don't get cs from IVARs in the SPIBUS_TRANSFER method?
In many spi drivers it's done this way.
For example in sys/mips/atheros/ar71xx_spi.c.

WBW
-- 
Alexandr Rybalko <ray at dlink.ua> 
aka Alex RAY <ray at ddteam.net>


More information about the svn-src-all mailing list