blob: 37d7342194caba84ffd802939c63f720d9a35bd4 [file] [log] [blame]
Willy Tudba90832021-02-10 11:55:58 -08001SUMMARY = "Configures systemd settings for gBMC"
2PR = "r1"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
5
6inherit systemd
7
8S = "${WORKDIR}"
9
Willy Tu4dd03ca2021-08-06 09:37:35 -070010SRC_URI:append = " \
Willy Tudba90832021-02-10 11:55:58 -080011 file://firmware-updates.target \
12 file://firmware-updates-pre.target \
William A. Kennington III5ba6d082021-03-10 19:24:22 -080013 file://40-gbmc-forward.conf \
William A. Kennington III6888f372023-04-12 16:42:28 -070014 file://40-gbmc-sysctl.conf \
William A. Kennington IIIaa814b32022-10-26 16:50:30 -070015 file://40-gbmc-time.conf \
Willy Tu511ffa92023-05-03 17:35:04 -070016 file://10-gbmc.conf \
Willy Tudba90832021-02-10 11:55:58 -080017 "
18
Willy Tu4dd03ca2021-08-06 09:37:35 -070019FILES:${PN}:append = " \
Willy Tudba90832021-02-10 11:55:58 -080020 ${systemd_unitdir}/coredump.conf.d/40-gbmc-coredump.conf \
21 ${systemd_unitdir}/resolved.conf.d/40-gbmc-nomdns.conf \
William A. Kennington IIIaa814b32022-10-26 16:50:30 -070022 ${systemd_unitdir}/timesyncd.conf.d/40-gbmc-time.conf \
William A. Kennington III6888f372023-04-12 16:42:28 -070023 ${libdir}/sysctl.d/40-gbmc-sysctl.conf \
William A. Kennington III5ba6d082021-03-10 19:24:22 -080024 ${libdir}/sysctl.d/40-gbmc-forward.conf \
Willy Tu511ffa92023-05-03 17:35:04 -070025 ${systemd_system_unitdir}/sysinit.target.wants/systemd-time-wait-sync.service \
Willy Tufbf0f452023-06-27 11:37:35 -070026 ${systemd_system_unitdir}/systemd-time-wait-sync.service.d/10-gbmc.conf \
Willy Tudba90832021-02-10 11:55:58 -080027 "
28
Willy Tu4dd03ca2021-08-06 09:37:35 -070029FILES:${PN}:append:dev = " \
Willy Tudba90832021-02-10 11:55:58 -080030 ${libdir}/sysctl.d/40-gbmc-debug.conf \
31 "
32
Willy Tu4dd03ca2021-08-06 09:37:35 -070033SYSTEMD_SERVICE:${PN}:append = " \
Willy Tudba90832021-02-10 11:55:58 -080034 firmware-updates.target \
35 firmware-updates-pre.target \
36 "
37
Yuxiao Zhang1de1e912023-06-09 17:24:33 -070038RDEPENDS:${PN}:append = " bash"
Willy Tudba90832021-02-10 11:55:58 -080039# Put coredumps in the journal to ensure they stay in ram
40do_install() {
William A. Kennington III5ba6d082021-03-10 19:24:22 -080041 install -d -m 0755 ${D}${systemd_unitdir}/coredump.conf.d
42 printf "[Coredump]\nStorage=journal\n" \
43 >${D}${systemd_unitdir}/coredump.conf.d/40-gbmc-coredump.conf
Willy Tudba90832021-02-10 11:55:58 -080044
William A. Kennington III5ba6d082021-03-10 19:24:22 -080045 install -d -m 0755 ${D}${systemd_unitdir}/resolved.conf.d
46 printf "[Resolve]\nLLMNR=no\nMulticastDNS=resolve\n" \
47 >${D}${systemd_unitdir}/resolved.conf.d/40-gbmc-nomdns.conf
Willy Tudba90832021-02-10 11:55:58 -080048
William A. Kennington III5ba6d082021-03-10 19:24:22 -080049 install -d -m 0755 ${D}${systemd_system_unitdir}
50 install -m 0644 ${WORKDIR}/firmware-updates.target ${D}${systemd_system_unitdir}/
51 install -m 0644 ${WORKDIR}/firmware-updates-pre.target ${D}${systemd_system_unitdir}/
William A. Kennington III1cf2b962023-03-29 18:51:15 -070052 # mask systemd-pstore.service to avoid copying logs to SPI
53 mkdir -p ${D}${sysconfdir}/systemd/system
54 ln -sv /dev/null ${D}${sysconfdir}/systemd/system/systemd-pstore.service
William A. Kennington III5ba6d082021-03-10 19:24:22 -080055
Yuxiao Zhangaeae6a72023-06-14 15:01:21 -070056 # mask networkd-wait-online.service to avoid waiting
57 ln -sv /dev/null ${D}/${sysconfdir}/systemd/system/systemd-networkd-wait-online.service
58
William A. Kennington III5ba6d082021-03-10 19:24:22 -080059 install -d -m0755 ${D}${libdir}/sysctl.d
60 install -m 0644 ${WORKDIR}/40-gbmc-forward.conf ${D}${libdir}/sysctl.d/
William A. Kennington III6888f372023-04-12 16:42:28 -070061 install -m 0644 ${WORKDIR}/40-gbmc-sysctl.conf ${D}${libdir}/sysctl.d/
Willy Tu2696b0a2021-08-14 18:38:58 -070062
William A. Kennington IIIaa814b32022-10-26 16:50:30 -070063 install -d -m 0755 ${D}${systemd_unitdir}/timesyncd.conf.d/
64 install -D -m0644 ${WORKDIR}/40-gbmc-time.conf ${D}${systemd_unitdir}/timesyncd.conf.d/
Willy Tu511ffa92023-05-03 17:35:04 -070065
66 mkdir -p ${D}${systemd_system_unitdir}/sysinit.target.wants/
67 ln -sv ${systemd_system_unitdir}/systemd-time-wait-sync.service ${D}${systemd_system_unitdir}/sysinit.target.wants/
Willy Tufbf0f452023-06-27 11:37:35 -070068 mkdir -p ${D}${systemd_system_unitdir}/systemd-time-wait-sync.service.d/
69 install -D -m0644 ${WORKDIR}/10-gbmc.conf ${D}${systemd_system_unitdir}/systemd-time-wait-sync.service.d/
Willy Tudba90832021-02-10 11:55:58 -080070}
71
Willy Tu4dd03ca2021-08-06 09:37:35 -070072do_install:append:dev() {
William A. Kennington III5ba6d082021-03-10 19:24:22 -080073 printf "kernel.sysrq = 1\n" \
74 >${D}${libdir}/sysctl.d/40-gbmc-debug.conf
Willy Tudba90832021-02-10 11:55:58 -080075}