6db4831e98
Android 14
71 lines
1.7 KiB
C
71 lines
1.7 KiB
C
/*
|
|
* sb_notify.h
|
|
* Samsung Mobile Battery Notify Header
|
|
*
|
|
* Copyright (C) 2012 Samsung Electronics, Inc.
|
|
*
|
|
*
|
|
* This software is licensed under the terms of the GNU General Public
|
|
* License version 2, as published by the Free Software Foundation, and
|
|
* may be copied, distributed, and modified under those terms.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
*/
|
|
|
|
#ifndef __SB_NOTIFY_H
|
|
#define __SB_NOTIFY_H __FILE__
|
|
|
|
#include <linux/notifier.h>
|
|
#include <linux/battery/sb_def.h>
|
|
|
|
enum sbn_type {
|
|
SB_NOTIFY_UNKNOWN = 0,
|
|
|
|
SB_NOTIFY_DEV_PROBE,
|
|
SB_NOTIFY_DEV_SHUTDOWN,
|
|
SB_NOTIFY_DEV_LIST,
|
|
|
|
SB_NOTIFY_EVENT_MISC,
|
|
SB_NOTIFY_EVENT_SIOP,
|
|
SB_NOTIFY_EVENT_SLATE_MODE,
|
|
|
|
SB_NOTIFY_MAX,
|
|
|
|
};
|
|
|
|
struct sbn_dev_list {
|
|
const char **list;
|
|
unsigned int count;
|
|
};
|
|
|
|
struct sbn_bit_event {
|
|
unsigned int value;
|
|
unsigned int mask;
|
|
};
|
|
|
|
#define SB_NOTIFY_DISABLE (-3661)
|
|
#if IS_ENABLED(CONFIG_SB_NOTIFY)
|
|
int sb_notify_call(enum sbn_type ntype, sb_data *ndata);
|
|
int sb_notify_register(struct notifier_block *nb,
|
|
notifier_fn_t notifier, const char *name, enum sb_dev_type type);
|
|
|
|
int sb_notify_unregister(struct notifier_block *nb);
|
|
#else
|
|
static inline int sb_notify_call(enum sbn_type ntype, sb_data *ndata)
|
|
{ return SB_NOTIFY_DISABLE; }
|
|
|
|
static inline int sb_notify_register(struct notifier_block *nb,
|
|
notifier_fn_t notifier, const char *name, enum sb_dev_type type)
|
|
{ return SB_NOTIFY_DISABLE; }
|
|
|
|
static inline int sb_notify_unregister(struct notifier_block *nb)
|
|
{ return SB_NOTIFY_DISABLE; }
|
|
#endif
|
|
|
|
#endif /* __SB_NOTIFY_H */
|
|
|