|
|
@ -1,12 +1,15 @@ |
|
|
|
|
|
|
|
import os |
|
|
|
|
|
|
|
|
|
|
|
from selfdrive.manager.process import PythonProcess, NativeProcess, DaemonProcess |
|
|
|
from selfdrive.manager.process import PythonProcess, NativeProcess, DaemonProcess |
|
|
|
from selfdrive.hardware import EON, TICI, PC |
|
|
|
from selfdrive.hardware import EON, TICI, PC |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WEBCAM = os.getenv("WEBCAM") is not None |
|
|
|
|
|
|
|
|
|
|
|
procs = [ |
|
|
|
procs = [ |
|
|
|
DaemonProcess("manage_athenad", "selfdrive.athena.manage_athenad", "AthenadPid"), |
|
|
|
DaemonProcess("manage_athenad", "selfdrive.athena.manage_athenad", "AthenadPid"), |
|
|
|
# due to qualcomm kernel bugs SIGKILLing camerad sometimes causes page table corruption |
|
|
|
# due to qualcomm kernel bugs SIGKILLing camerad sometimes causes page table corruption |
|
|
|
NativeProcess("camerad", "selfdrive/camerad", ["./camerad"], unkillable=True, driverview=True), |
|
|
|
NativeProcess("camerad", "selfdrive/camerad", ["./camerad"], unkillable=True, driverview=True), |
|
|
|
NativeProcess("clocksd", "selfdrive/clocksd", ["./clocksd"]), |
|
|
|
NativeProcess("clocksd", "selfdrive/clocksd", ["./clocksd"]), |
|
|
|
NativeProcess("dmonitoringmodeld", "selfdrive/modeld", ["./dmonitoringmodeld"], driverview=True), |
|
|
|
|
|
|
|
NativeProcess("logcatd", "selfdrive/logcatd", ["./logcatd"]), |
|
|
|
NativeProcess("logcatd", "selfdrive/logcatd", ["./logcatd"]), |
|
|
|
NativeProcess("loggerd", "selfdrive/loggerd", ["./loggerd"]), |
|
|
|
NativeProcess("loggerd", "selfdrive/loggerd", ["./loggerd"]), |
|
|
|
NativeProcess("modeld", "selfdrive/modeld", ["./modeld"]), |
|
|
|
NativeProcess("modeld", "selfdrive/modeld", ["./modeld"]), |
|
|
@ -34,6 +37,11 @@ if not PC: |
|
|
|
PythonProcess("updated", "selfdrive.updated", persistent=True), |
|
|
|
PythonProcess("updated", "selfdrive.updated", persistent=True), |
|
|
|
] |
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if not PC or WEBCAM: |
|
|
|
|
|
|
|
procs += [ |
|
|
|
|
|
|
|
NativeProcess("dmonitoringmodeld", "selfdrive/modeld", ["./dmonitoringmodeld"], driverview=True), |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
if TICI: |
|
|
|
if TICI: |
|
|
|
procs += [ |
|
|
|
procs += [ |
|
|
|
PythonProcess("timezoned", "selfdrive.timezoned", persistent=True), |
|
|
|
PythonProcess("timezoned", "selfdrive.timezoned", persistent=True), |
|
|
|