SDOCM00114730 Reserved message queues on Linux/Keystone II
authorRamsey Harris <ramsey@ti.com>
Fri, 13 Feb 2015 01:47:46 +0000 (17:47 -0800)
committerRobert Tivy <rtivy@ti.com>
Fri, 13 Feb 2015 19:00:06 +0000 (11:00 -0800)
commitf25b4d2c2bc5d8c26d10b3eefb4bcd31a69b7c92
tree9c33e39a2714c1aa37eb8d3fbdf0b16cda1b07c7
parent585241682fe608183fa4d839202a390303fbd990
SDOCM00114730 Reserved message queues on Linux/Keystone II

Added numReservedEntries to MessageQ_Config structure; defines
how many queues to reserve. Moved all LAD config files into cfg
folder to separate configuration data from implementation code.
Added MessageQCfg.c file so users could specify MessageQ config
(such as reserved queues). New concept of queue port number: this
is computed by adding an offset to the queue index. Needed to
avoid collisions with port numbers reserved by services (such as
RPMessage, NameServer). Queue port number is embedded in queueId
and used to address messages. New macro MessageQ_getQueueIndex to
extract queue index from QID. Implemented MessageQ_openQueueId on
Linux. Added port number management to ti.sdo.ipc.MessageQ module.

LAD daemon: removed slot zero reservation for NameServer; added
queue index logic to manage reserved queues; use port number in
queueId construction; reference new MessageQ_cfg object.

TransportRpmsg: replaced queue index references with queue port.
18 files changed:
hlos_common/include/_MessageQ.h
linux/src/api/MessageQ.c
linux/src/daemon/Makefile.am
linux/src/daemon/MessageQ_daemon.c
linux/src/daemon/MultiProc_daemon.c
linux/src/daemon/NameServer_daemon.c
linux/src/daemon/cfg/GateHWSpinlockCfg_dra7xx.c [moved from linux/src/daemon/GateHWSpinlockCfg_dra7xx.c with 95% similarity]
linux/src/daemon/cfg/MessageQCfg.c [new file with mode: 0644]
linux/src/daemon/cfg/MultiProcCfg_66ak2e.c [moved from linux/src/daemon/MultiProcCfg_66ak2e.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_dra7xx.c [moved from linux/src/daemon/MultiProcCfg_dra7xx.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_omap54xx_smp.c [moved from linux/src/daemon/MultiProcCfg_omap54xx_smp.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_omapl138.c [moved from linux/src/daemon/MultiProcCfg_omapl138.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_tci6614.c [moved from linux/src/daemon/MultiProcCfg_tci6614.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_tci6630.c [moved from linux/src/daemon/MultiProcCfg_tci6630.c with 100% similarity]
linux/src/daemon/cfg/MultiProcCfg_tci6638.c [moved from linux/src/daemon/MultiProcCfg_tci6638.c with 100% similarity]
linux/src/transport/TransportRpmsg.c
packages/ti/ipc/MessageQ.h
packages/ti/sdo/ipc/MessageQ.c