Message ID | 20241004164033.3825986-1-quic_jhugo@quicinc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | accel/qaic: Add ipc_router channel | expand |
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com> On 10/4/2024 6:40 PM, Jeffrey Hugo wrote: > The ipc_router channel allows AF_QIPCRTR clients and services to > communicate with the AIC100 device. The ipc_router MHI transport layer > expects the channel to be named exactly "IPCR". > > Reviewed-by: Carl Vanderlip <quic_carlv@quicinc.com> > Signed-off-by: Jeffrey Hugo <quic_jhugo@quicinc.com> > --- > Documentation/accel/qaic/aic100.rst | 2 ++ > drivers/accel/qaic/mhi_controller.c | 32 +++++++++++++++++++++++++++++ > 2 files changed, 34 insertions(+) > > diff --git a/Documentation/accel/qaic/aic100.rst b/Documentation/accel/qaic/aic100.rst > index 590dae77ea12..273da6192fb3 100644 > --- a/Documentation/accel/qaic/aic100.rst > +++ b/Documentation/accel/qaic/aic100.rst > @@ -229,6 +229,8 @@ of the defined channels, and their uses. > | _PERIODIC | | | timestamps in the device side logs with| > | | | | the host time source. | > +----------------+---------+----------+----------------------------------------+ > +| IPCR | 24 & 25 | AMSS | AF_QIPCRTR clients and servers. | > ++----------------+---------+----------+----------------------------------------+ > > DMA Bridge > ========== > diff --git a/drivers/accel/qaic/mhi_controller.c b/drivers/accel/qaic/mhi_controller.c > index ada9b1eb0787..8ab82e78dd94 100644 > --- a/drivers/accel/qaic/mhi_controller.c > +++ b/drivers/accel/qaic/mhi_controller.c > @@ -405,6 +405,38 @@ static const struct mhi_channel_config aic100_channels[] = { > .auto_queue = false, > .wake_capable = false, > }, > + { > + .name = "IPCR", > + .num = 24, > + .num_elements = 32, > + .local_elements = 0, > + .event_ring = 0, > + .dir = DMA_TO_DEVICE, > + .ee_mask = MHI_CH_EE_AMSS, > + .pollcfg = 0, > + .doorbell = MHI_DB_BRST_DISABLE, > + .lpm_notify = false, > + .offload_channel = false, > + .doorbell_mode_switch = false, > + .auto_queue = false, > + .wake_capable = false, > + }, > + { > + .name = "IPCR", > + .num = 25, > + .num_elements = 32, > + .local_elements = 0, > + .event_ring = 0, > + .dir = DMA_FROM_DEVICE, > + .ee_mask = MHI_CH_EE_AMSS, > + .pollcfg = 0, > + .doorbell = MHI_DB_BRST_DISABLE, > + .lpm_notify = false, > + .offload_channel = false, > + .doorbell_mode_switch = false, > + .auto_queue = true, > + .wake_capable = false, > + }, > }; > > static struct mhi_event_config aic100_events[] = {
On 10/4/2024 10:40 AM, Jeffrey Hugo wrote: > The ipc_router channel allows AF_QIPCRTR clients and services to > communicate with the AIC100 device. The ipc_router MHI transport layer > expects the channel to be named exactly "IPCR". > > Reviewed-by: Carl Vanderlip <quic_carlv@quicinc.com> > Signed-off-by: Jeffrey Hugo <quic_jhugo@quicinc.com> Pushed to drm-misc-next. -Jeff
diff --git a/Documentation/accel/qaic/aic100.rst b/Documentation/accel/qaic/aic100.rst index 590dae77ea12..273da6192fb3 100644 --- a/Documentation/accel/qaic/aic100.rst +++ b/Documentation/accel/qaic/aic100.rst @@ -229,6 +229,8 @@ of the defined channels, and their uses. | _PERIODIC | | | timestamps in the device side logs with| | | | | the host time source. | +----------------+---------+----------+----------------------------------------+ +| IPCR | 24 & 25 | AMSS | AF_QIPCRTR clients and servers. | ++----------------+---------+----------+----------------------------------------+ DMA Bridge ========== diff --git a/drivers/accel/qaic/mhi_controller.c b/drivers/accel/qaic/mhi_controller.c index ada9b1eb0787..8ab82e78dd94 100644 --- a/drivers/accel/qaic/mhi_controller.c +++ b/drivers/accel/qaic/mhi_controller.c @@ -405,6 +405,38 @@ static const struct mhi_channel_config aic100_channels[] = { .auto_queue = false, .wake_capable = false, }, + { + .name = "IPCR", + .num = 24, + .num_elements = 32, + .local_elements = 0, + .event_ring = 0, + .dir = DMA_TO_DEVICE, + .ee_mask = MHI_CH_EE_AMSS, + .pollcfg = 0, + .doorbell = MHI_DB_BRST_DISABLE, + .lpm_notify = false, + .offload_channel = false, + .doorbell_mode_switch = false, + .auto_queue = false, + .wake_capable = false, + }, + { + .name = "IPCR", + .num = 25, + .num_elements = 32, + .local_elements = 0, + .event_ring = 0, + .dir = DMA_FROM_DEVICE, + .ee_mask = MHI_CH_EE_AMSS, + .pollcfg = 0, + .doorbell = MHI_DB_BRST_DISABLE, + .lpm_notify = false, + .offload_channel = false, + .doorbell_mode_switch = false, + .auto_queue = true, + .wake_capable = false, + }, }; static struct mhi_event_config aic100_events[] = {