openbmc: Add systemd service for croserver

The upstream application does not ship a systemd service file so we
include it in meta-openpower.

The service does not have an 'install' section as it should be started
on demand by the cronus user. This may change in the future if OpenBMC
gains the ability to put itself in a debug state, where starting the
croserver will be part of that process.

(From meta-openpower rev: c6c86e4602e7d8734e771ee4bf2fb1049acbfb75)

Change-Id: I088ae4acfb7a8f039fd9342ba2314255ec7987f1
Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openpower/recipes-bsp/ecmd/croserver_git.bb b/meta-openpower/recipes-bsp/ecmd/croserver_git.bb
index a788e61..01005f8 100644
--- a/meta-openpower/recipes-bsp/ecmd/croserver_git.bb
+++ b/meta-openpower/recipes-bsp/ecmd/croserver_git.bb
@@ -7,6 +7,8 @@
 SRCREV = "6c0348b12c95b3bd6e8d8003f9ff743d25400ae2"
 DEPENDS += "python-native zlib"
 
+SRC_URI += "file://croserver.service"
+
 S = "${WORKDIR}/git"
 
 # Add the hash style option here to Work around this warning:
@@ -26,4 +28,9 @@
 do_install() {
     install -d ${D}${bindir}
     install -m 0755 out_obj/lib/server1p ${D}${bindir}/croserver
+
+    install -d ${D}${systemd_system_unitdir}
+    install -m 0644 ${WORKDIR}/croserver.service ${D}${systemd_system_unitdir}/
 }
+
+FILES_${PN} += "${systemd_system_unitdir}/croserver.service"
diff --git a/meta-openpower/recipes-bsp/ecmd/files/croserver.service b/meta-openpower/recipes-bsp/ecmd/files/croserver.service
new file mode 100644
index 0000000..38d1fd2
--- /dev/null
+++ b/meta-openpower/recipes-bsp/ecmd/files/croserver.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Cronus Server
+Documentation=https://github.com/open-power/eCMD/
+After=network.service
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/croserver
+Restart=on-failure
+ProtectHome=yes
+ProtectSystem=full
+RestrictAddressFamilies=AF_UNIX