Re: [PATCH net-next v3 01/12] net: wwan: t7xx: Add control DMA interface
From: "Martinez, Ricardo" <ricardo.martinez@linux.intel.com>
Date: 2022-01-12 04:56:10
Also in:
linux-wireless
From: "Martinez, Ricardo" <ricardo.martinez@linux.intel.com>
Date: 2022-01-12 04:56:10
Also in:
linux-wireless
On 12/16/2021 3:08 AM, Ilpo Järvinen wrote:
On Mon, 6 Dec 2021, Ricardo Martinez wrote:
...
quoted
+static struct cldma_request *t7xx_cldma_ring_step_forward(struct cldma_ring *ring, + struct cldma_request *req) +{ + if (req->entry.next == &ring->gpd_ring) + return list_first_entry(&ring->gpd_ring, struct cldma_request, entry); + + return list_next_entry(req, entry); +} + +static struct cldma_request *t7xx_cldma_ring_step_backward(struct cldma_ring *ring, + struct cldma_request *req) +{ + if (req->entry.prev == &ring->gpd_ring) + return list_last_entry(&ring->gpd_ring, struct cldma_request, entry); + + return list_prev_entry(req, entry); +}Wouldn't these two seems generic enough to warrant adding something like list_next/prev_entry_circular(...) to list.h?
Agree, in the upcoming version I'm planning to include something like this to list.h as suggested: #define list_next_entry_circular(pos, ptr, member) \ ((pos)->member.next == (ptr) ? \ list_first_entry(ptr, typeof(*(pos)), member) : \ list_next_entry(pos, member))