libpayload: EHCI: Make periodic list pointers point to 64-byte aligned
Chapter 3.1 "Periodic Frame List" of EHCI 1.0 specification says "Frame List Link pointers always reference memory objects that are 32-byte aligned." jwerner@chromium.org suggests setting it to be 64-byte aligned for consistency with other EHCI queue structures. BUG=chrome-os-partner:31993 TEST=Tested on nyan platform. Before adding patch, USB keyboard behind an external hub is not working to switch between "Default Locale" and "English" (after pressing ESC+REFRESH+POWER on embedded keyboard and later Left/Right-Arrow key on USB keyboard). Change-Id: If52ddc43ebd5d509c19f104928dced5bd09b1706 Signed-off-by: Jim Lin <jilin@nvidia.com> Reviewed-on: https://chromium-review.googlesource.com/218403 Reviewed-by: Tom Warren <twarren@nvidia.com> Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
parent
b9040d564a
commit
23fc02e6ba
1 changed files with 2 additions and 1 deletions
|
|
@ -643,7 +643,8 @@ static void *ehci_create_intr_queue(
|
|||
return NULL;
|
||||
}
|
||||
|
||||
intr_queue_t *const intrq = (intr_queue_t *)malloc(sizeof(intr_queue_t));
|
||||
intr_queue_t *const intrq = (intr_queue_t *)dma_memalign(64,
|
||||
sizeof(intr_queue_t));
|
||||
/*
|
||||
* reqcount data chunks
|
||||
* plus one more spare, which we'll leave out of queue
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue