mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-02 15:18:19 +00:00
greybus: enforce a buffer headroom maximum size
Define a maximum size that a host device can use for its private area ahead of the payload space used by Greybus in a message buffer. Signed-off-by: Alex Elder <elder@linaro.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
This commit is contained in:
parent
dc779229b5
commit
835fb5e498
2 changed files with 9 additions and 0 deletions
|
@ -127,6 +127,7 @@ static void hd_buffer_constraints(struct greybus_host_device *hd)
|
|||
*/
|
||||
hd->buffer_headroom = sizeof(u32); /* For cport id */
|
||||
hd->buffer_size_max = ES1_GBUF_MSG_SIZE_MAX;
|
||||
BUILD_BUG_ON(hd->buffer_headroom > GB_BUFFER_HEADROOM_MAX);
|
||||
}
|
||||
|
||||
#define ES1_TIMEOUT 500 /* 500 ms for the SVC to do something */
|
||||
|
|
|
@ -69,6 +69,14 @@
|
|||
struct greybus_host_device;
|
||||
struct svc_msg;
|
||||
|
||||
/*
|
||||
* When the Greybus code allocates a buffer it sets aside bytes
|
||||
* prior to the beginning of the payload area for the host device's
|
||||
* exclusive use. The size is specified by hd->buffer_headroom, and
|
||||
* which can't be greater than GB_BUFFER_HEADROOM_MAX.
|
||||
*/
|
||||
#define GB_BUFFER_HEADROOM_MAX sizeof(u64)
|
||||
|
||||
/* Buffers allocated from the host driver will be aligned to this multiple */
|
||||
#define GB_BUFFER_ALIGN sizeof(u32)
|
||||
|
||||
|
|
Loading…
Reference in a new issue