Import Mbed OS hard-float snapshot
This commit is contained in:
109
targets/TARGET_Samsung/TARGET_SIDK_S5JS100/s5js100_pwr.h
Normal file
109
targets/TARGET_Samsung/TARGET_SIDK_S5JS100/s5js100_pwr.h
Normal file
@@ -0,0 +1,109 @@
|
||||
/****************************************************************************
|
||||
*
|
||||
* Copyright 2020 Samsung Electronics All Rights Reserved.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||
* either express or implied. See the License for the specific
|
||||
* language governing permissions and limitations under the License.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __S5JS100_PWR_H__
|
||||
#define __S5JS100_PWR_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
PWR_DSTOP,
|
||||
PWR_STOP,
|
||||
} PWR_MODE;
|
||||
|
||||
typedef enum {
|
||||
MCPU_BLK = (0x1 << 0),
|
||||
RFIP_BLK = (0x1 << 1),
|
||||
} PWR_BLK;
|
||||
typedef enum {
|
||||
GPIO_ALIVE_0,
|
||||
GPIO_ALIVE_1,
|
||||
GPIO_ALIVE_NONE,
|
||||
} PORT_NUM;
|
||||
|
||||
typedef enum {
|
||||
OUTPUT = (0x1 << 0),
|
||||
INPUT = (0x1 << 1),
|
||||
} PORT_DIR;
|
||||
|
||||
typedef enum {
|
||||
PULL_DIS = 0,
|
||||
PULL_DOWN = 1,
|
||||
PULL_UP = 3,
|
||||
} PUD_CON;
|
||||
|
||||
typedef enum {
|
||||
LOWLEVEL,
|
||||
HIGHLEVEL,
|
||||
FALLING,
|
||||
RISING,
|
||||
} FILTER_TYPE;
|
||||
|
||||
// wakeup source define
|
||||
#define TEMPMON (1<<4)
|
||||
#define GPIO_ALV1 (1<<3)
|
||||
#define GPIO_ALV0 (1<<2)
|
||||
#define APSLPCNT (1<<1)
|
||||
#define NSLEEP (1<<0)
|
||||
|
||||
typedef enum {
|
||||
MCPU_CP = 0,
|
||||
MCPU_GNSS = 1,
|
||||
MCPU_NONE = -1,
|
||||
} MCPU_MODE;
|
||||
|
||||
#define GNSS_BIN_BASE (0x4063C000)
|
||||
#define CP_BIN_BASE (0x40050000)
|
||||
#define TCM_BASE (0x20000000)
|
||||
#define MCPU_BINARY_SIZE (0x20000)
|
||||
|
||||
extern int s5js100_pwr_dbg_on;
|
||||
extern MCPU_MODE mcpu_device_mode;
|
||||
|
||||
|
||||
#define WAKEUP_BOOT 0
|
||||
#define COLD_BOOT 1
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned int wakeup_src;
|
||||
unsigned int wakeup_status;
|
||||
FILTER_TYPE alv0_gpio_int_type;
|
||||
FILTER_TYPE alv1_gpio_int_type;
|
||||
unsigned int time_msec;
|
||||
unsigned int upper_temp;
|
||||
unsigned int lower_temp;
|
||||
unsigned int nbiot_time_msec;
|
||||
} PMU_SLEEP_INFO;
|
||||
|
||||
|
||||
extern unsigned int get_bootflag(void);
|
||||
extern void pmu_nb_sleep(void);
|
||||
extern void pmu_short_sleep(void);
|
||||
extern void s5js100_pmu_sleep(PMU_SLEEP_INFO *info);
|
||||
extern void mcpu_reset(void);
|
||||
extern void mcpu_init(MCPU_MODE device);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user