Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
1a8dabf8
Commit
1a8dabf8
authored
Sep 30, 2016
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'spi/topic/core' into spi-next
parents
07216b55
323117ab
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
26 additions
and
32 deletions
+26
-32
include/linux/spi/spi.h
include/linux/spi/spi.h
+26
-32
No files found.
include/linux/spi/spi.h
View file @
1a8dabf8
...
...
@@ -979,6 +979,30 @@ extern int spi_sync_locked(struct spi_device *spi, struct spi_message *message);
extern
int
spi_bus_lock
(
struct
spi_master
*
master
);
extern
int
spi_bus_unlock
(
struct
spi_master
*
master
);
/**
* spi_sync_transfer - synchronous SPI data transfer
* @spi: device with which data will be exchanged
* @xfers: An array of spi_transfers
* @num_xfers: Number of items in the xfer array
* Context: can sleep
*
* Does a synchronous SPI data transfer of the given spi_transfer array.
*
* For more specific semantics see spi_sync().
*
* Return: Return: zero on success, else a negative error code.
*/
static
inline
int
spi_sync_transfer
(
struct
spi_device
*
spi
,
struct
spi_transfer
*
xfers
,
unsigned
int
num_xfers
)
{
struct
spi_message
msg
;
spi_message_init_with_transfers
(
&
msg
,
xfers
,
num_xfers
);
return
spi_sync
(
spi
,
&
msg
);
}
/**
* spi_write - SPI synchronous write
* @spi: device to which data will be written
...
...
@@ -998,11 +1022,8 @@ spi_write(struct spi_device *spi, const void *buf, size_t len)
.
tx_buf
=
buf
,
.
len
=
len
,
};
struct
spi_message
m
;
spi_message_init
(
&
m
);
spi_message_add_tail
(
&
t
,
&
m
);
return
spi_sync
(
spi
,
&
m
);
return
spi_sync_transfer
(
spi
,
&
t
,
1
);
}
/**
...
...
@@ -1024,35 +1045,8 @@ spi_read(struct spi_device *spi, void *buf, size_t len)
.
rx_buf
=
buf
,
.
len
=
len
,
};
struct
spi_message
m
;
spi_message_init
(
&
m
);
spi_message_add_tail
(
&
t
,
&
m
);
return
spi_sync
(
spi
,
&
m
);
}
/**
* spi_sync_transfer - synchronous SPI data transfer
* @spi: device with which data will be exchanged
* @xfers: An array of spi_transfers
* @num_xfers: Number of items in the xfer array
* Context: can sleep
*
* Does a synchronous SPI data transfer of the given spi_transfer array.
*
* For more specific semantics see spi_sync().
*
* Return: Return: zero on success, else a negative error code.
*/
static
inline
int
spi_sync_transfer
(
struct
spi_device
*
spi
,
struct
spi_transfer
*
xfers
,
unsigned
int
num_xfers
)
{
struct
spi_message
msg
;
spi_message_init_with_transfers
(
&
msg
,
xfers
,
num_xfers
);
return
spi_sync
(
spi
,
&
msg
);
return
spi_sync_transfer
(
spi
,
&
t
,
1
);
}
/* this copies txbuf and rxbuf data; for small transfers only! */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment