summaryrefslogtreecommitdiffstats
path: root/bsps/shared/grlib/spw
diff options
context:
space:
mode:
authorMartin Aberg <maberg@gaisler.com>2019-02-08 16:30:15 +0100
committerDaniel Hellstrom <daniel@gaisler.com>2021-03-07 16:08:26 +0100
commit1161e1fb92fa5d01f66ab5b796d1813d0c0123a3 (patch)
treed0a94ada12196e1e1d2e29caf114eb25b42074ad /bsps/shared/grlib/spw
parentsparc: fix bad register alignment for 64 bit store (diff)
downloadrtems-1161e1fb92fa5d01f66ab5b796d1813d0c0123a3.tar.bz2
leon, grspw_router: added router_port_link_div()
Allows user to set SpaceWire run clock divisor for an individual port. Update #4313.
Diffstat (limited to 'bsps/shared/grlib/spw')
-rw-r--r--bsps/shared/grlib/spw/grspw_router.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/bsps/shared/grlib/spw/grspw_router.c b/bsps/shared/grlib/spw/grspw_router.c
index d8ba8feef3..9a31c3b49a 100644
--- a/bsps/shared/grlib/spw/grspw_router.c
+++ b/bsps/shared/grlib/spw/grspw_router.c
@@ -1431,6 +1431,11 @@ int router_port_link_start(void *d, int port)
return router_port_ctrl_rmw(d, port, NULL, PCTRL_LD | PCTRL_LS, PCTRL_LS);
}
+int router_port_link_div(void *d, int port, int rundiv)
+{
+ return router_port_ctrl_rmw(d, port, NULL, PCTRL_RD, (rundiv << PCTRL_RD_BIT) & PCTRL_RD);
+}
+
int router_port_link_receive_spill(void *d, int port)
{
struct router_priv *priv = d;