Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Feb 2013 14:21:40 +0200
From:      Aleksandr Rybalko <ray@freebsd.org>
To:        freebsd-arm@freebsd.org, freebsd-mips@freebsd.org
Subject:   SPI, _sz fields in struct spi_command
Message-ID:  <20130220142140.f8e5a616c75d72e2519dbc69@freebsd.org>

next in thread | raw e-mail | index | archive | help
Hello ARM and MIPS hackers!

Sorry for cross-post, but we have supported SPI devices on both
platforms (and seems no others).

Anyone know any reasons to keep both TX and RX _sz fields with same
values?

sys/dev/flash/at45d.c
static int
at45d_get_mfg_info(device_t dev, uint8_t *resp)
{
	...
	cmd.tx_cmd_sz = cmd.rx_cmd_sz = 5;
	...
}

or sys/dev/flash/mx25l.c
static int
mx25l_read(device_t dev, off_t offset, caddr_t data, off_t count)
{
	...
	cmd.tx_cmd_sz = 5;
	cmd.rx_cmd_sz = 5;
	...
}

That always require second but unused buffer or writable tx buffer. And
not all controllers able to TX with RX same time. (at least rt305x
can't). So if nobody have any objections, I will update drivers (SPI
controllers and SPI attached devices) to set unused _sz field to zero.
IIRC, I will require help with AT91 controller update, at least with
testing.

Thanks.

WBW
-- 
Aleksandr Rybalko <ray@freebsd.org>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130220142140.f8e5a616c75d72e2519dbc69>