Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only
0002  *
0003  * Copyright (C) 2020-21 Intel Corporation.
0004  */
0005 
0006 #ifndef IOSM_IPC_UEVENT_H
0007 #define IOSM_IPC_UEVENT_H
0008 
0009 /* Baseband event strings */
0010 #define UEVENT_MDM_NOT_READY "MDM_NOT_READY"
0011 #define UEVENT_ROM_READY "ROM_READY"
0012 #define UEVENT_MDM_READY "MDM_READY"
0013 #define UEVENT_CRASH "CRASH"
0014 #define UEVENT_CD_READY "CD_READY"
0015 #define UEVENT_CD_READY_LINK_DOWN "CD_READY_LINK_DOWN"
0016 #define UEVENT_MDM_TIMEOUT "MDM_TIMEOUT"
0017 
0018 /* Maximum length of user events */
0019 #define MAX_UEVENT_LEN 64
0020 
0021 /**
0022  * struct ipc_uevent_info - Uevent information structure.
0023  * @dev:    Pointer to device structure
0024  * @uevent: Uevent information
0025  * @work:   Uevent work struct
0026  */
0027 struct ipc_uevent_info {
0028     struct device *dev;
0029     char uevent[MAX_UEVENT_LEN];
0030     struct work_struct work;
0031 };
0032 
0033 /**
0034  * ipc_uevent_send - Send modem event to user space.
0035  * @dev:    Generic device pointer
0036  * @uevent: Uevent information
0037  *
0038  */
0039 void ipc_uevent_send(struct device *dev, char *uevent);
0040 
0041 #endif