mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-02-07 23:03:06 +00:00
* 0day explit mitigation * Memory corruption prevention * Privilege escalation prevention * Buffer over flow prevention * File System corruption defense * Thread escape prevention This may very well be the most intensive inclusion to BrooklynR. This will not be part of an x86 suite nor it will be released as tool kit. The security core toolkit will remain part of kernel base.
212 lines
4.6 KiB
C
212 lines
4.6 KiB
C
/* s5m8767.h
|
|
*
|
|
* Copyright (c) 2011 Samsung Electronics Co., Ltd
|
|
* http://www.samsung.com
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License as published by the
|
|
* Free Software Foundation; either version 2 of the License, or (at your
|
|
* option) any later version.
|
|
*
|
|
*/
|
|
|
|
#ifndef __LINUX_MFD_S5M8767_H
|
|
#define __LINUX_MFD_S5M8767_H
|
|
|
|
/* S5M8767 registers */
|
|
enum s5m8767_reg {
|
|
S5M8767_REG_ID,
|
|
S5M8767_REG_INT1,
|
|
S5M8767_REG_INT2,
|
|
S5M8767_REG_INT3,
|
|
S5M8767_REG_INT1M,
|
|
S5M8767_REG_INT2M,
|
|
S5M8767_REG_INT3M,
|
|
S5M8767_REG_STATUS1,
|
|
S5M8767_REG_STATUS2,
|
|
S5M8767_REG_STATUS3,
|
|
S5M8767_REG_CTRL1,
|
|
S5M8767_REG_CTRL2,
|
|
S5M8767_REG_LOWBAT1,
|
|
S5M8767_REG_LOWBAT2,
|
|
S5M8767_REG_BUCHG,
|
|
S5M8767_REG_DVSRAMP,
|
|
S5M8767_REG_DVSTIMER2 = 0x10,
|
|
S5M8767_REG_DVSTIMER3,
|
|
S5M8767_REG_DVSTIMER4,
|
|
S5M8767_REG_LDO1,
|
|
S5M8767_REG_LDO2,
|
|
S5M8767_REG_LDO3,
|
|
S5M8767_REG_LDO4,
|
|
S5M8767_REG_LDO5,
|
|
S5M8767_REG_LDO6,
|
|
S5M8767_REG_LDO7,
|
|
S5M8767_REG_LDO8,
|
|
S5M8767_REG_LDO9,
|
|
S5M8767_REG_LDO10,
|
|
S5M8767_REG_LDO11,
|
|
S5M8767_REG_LDO12,
|
|
S5M8767_REG_LDO13,
|
|
S5M8767_REG_LDO14 = 0x20,
|
|
S5M8767_REG_LDO15,
|
|
S5M8767_REG_LDO16,
|
|
S5M8767_REG_LDO17,
|
|
S5M8767_REG_LDO18,
|
|
S5M8767_REG_LDO19,
|
|
S5M8767_REG_LDO20,
|
|
S5M8767_REG_LDO21,
|
|
S5M8767_REG_LDO22,
|
|
S5M8767_REG_LDO23,
|
|
S5M8767_REG_LDO24,
|
|
S5M8767_REG_LDO25,
|
|
S5M8767_REG_LDO26,
|
|
S5M8767_REG_LDO27,
|
|
S5M8767_REG_LDO28,
|
|
S5M8767_REG_UVLO = 0x31,
|
|
S5M8767_REG_BUCK1CTRL1,
|
|
S5M8767_REG_BUCK1CTRL2,
|
|
S5M8767_REG_BUCK2CTRL,
|
|
S5M8767_REG_BUCK2DVS1,
|
|
S5M8767_REG_BUCK2DVS2,
|
|
S5M8767_REG_BUCK2DVS3,
|
|
S5M8767_REG_BUCK2DVS4,
|
|
S5M8767_REG_BUCK2DVS5,
|
|
S5M8767_REG_BUCK2DVS6,
|
|
S5M8767_REG_BUCK2DVS7,
|
|
S5M8767_REG_BUCK2DVS8,
|
|
S5M8767_REG_BUCK3CTRL,
|
|
S5M8767_REG_BUCK3DVS1,
|
|
S5M8767_REG_BUCK3DVS2,
|
|
S5M8767_REG_BUCK3DVS3,
|
|
S5M8767_REG_BUCK3DVS4,
|
|
S5M8767_REG_BUCK3DVS5,
|
|
S5M8767_REG_BUCK3DVS6,
|
|
S5M8767_REG_BUCK3DVS7,
|
|
S5M8767_REG_BUCK3DVS8,
|
|
S5M8767_REG_BUCK4CTRL,
|
|
S5M8767_REG_BUCK4DVS1,
|
|
S5M8767_REG_BUCK4DVS2,
|
|
S5M8767_REG_BUCK4DVS3,
|
|
S5M8767_REG_BUCK4DVS4,
|
|
S5M8767_REG_BUCK4DVS5,
|
|
S5M8767_REG_BUCK4DVS6,
|
|
S5M8767_REG_BUCK4DVS7,
|
|
S5M8767_REG_BUCK4DVS8,
|
|
S5M8767_REG_BUCK5CTRL1,
|
|
S5M8767_REG_BUCK5CTRL2,
|
|
S5M8767_REG_BUCK5CTRL3,
|
|
S5M8767_REG_BUCK5CTRL4,
|
|
S5M8767_REG_BUCK5CTRL5,
|
|
S5M8767_REG_BUCK6CTRL1,
|
|
S5M8767_REG_BUCK6CTRL2,
|
|
S5M8767_REG_BUCK7CTRL1,
|
|
S5M8767_REG_BUCK7CTRL2,
|
|
S5M8767_REG_BUCK8CTRL1,
|
|
S5M8767_REG_BUCK8CTRL2,
|
|
S5M8767_REG_BUCK9CTRL1,
|
|
S5M8767_REG_BUCK9CTRL2,
|
|
S5M8767_REG_LDO1CTRL,
|
|
S5M8767_REG_LDO2_1CTRL,
|
|
S5M8767_REG_LDO2_2CTRL,
|
|
S5M8767_REG_LDO2_3CTRL,
|
|
S5M8767_REG_LDO2_4CTRL,
|
|
S5M8767_REG_LDO3CTRL,
|
|
S5M8767_REG_LDO4CTRL,
|
|
S5M8767_REG_LDO5CTRL,
|
|
S5M8767_REG_LDO6CTRL,
|
|
S5M8767_REG_LDO7CTRL,
|
|
S5M8767_REG_LDO8CTRL,
|
|
S5M8767_REG_LDO9CTRL,
|
|
S5M8767_REG_LDO10CTRL,
|
|
S5M8767_REG_LDO11CTRL,
|
|
S5M8767_REG_LDO12CTRL,
|
|
S5M8767_REG_LDO13CTRL,
|
|
S5M8767_REG_LDO14CTRL,
|
|
S5M8767_REG_LDO15CTRL,
|
|
S5M8767_REG_LDO16CTRL,
|
|
S5M8767_REG_LDO17CTRL,
|
|
S5M8767_REG_LDO18CTRL,
|
|
S5M8767_REG_LDO19CTRL,
|
|
S5M8767_REG_LDO20CTRL,
|
|
S5M8767_REG_LDO21CTRL,
|
|
S5M8767_REG_LDO22CTRL,
|
|
S5M8767_REG_LDO23CTRL,
|
|
S5M8767_REG_LDO24CTRL,
|
|
S5M8767_REG_LDO25CTRL,
|
|
S5M8767_REG_LDO26CTRL,
|
|
S5M8767_REG_LDO27CTRL,
|
|
S5M8767_REG_LDO28CTRL,
|
|
};
|
|
|
|
/* S5M8767 regulator ids */
|
|
enum s5m8767_regulators {
|
|
S5M8767_LDO1,
|
|
S5M8767_LDO2,
|
|
S5M8767_LDO3,
|
|
S5M8767_LDO4,
|
|
S5M8767_LDO5,
|
|
S5M8767_LDO6,
|
|
S5M8767_LDO7,
|
|
S5M8767_LDO8,
|
|
S5M8767_LDO9,
|
|
S5M8767_LDO10,
|
|
S5M8767_LDO11,
|
|
S5M8767_LDO12,
|
|
S5M8767_LDO13,
|
|
S5M8767_LDO14,
|
|
S5M8767_LDO15,
|
|
S5M8767_LDO16,
|
|
S5M8767_LDO17,
|
|
S5M8767_LDO18,
|
|
S5M8767_LDO19,
|
|
S5M8767_LDO20,
|
|
S5M8767_LDO21,
|
|
S5M8767_LDO22,
|
|
S5M8767_LDO23,
|
|
S5M8767_LDO24,
|
|
S5M8767_LDO25,
|
|
S5M8767_LDO26,
|
|
S5M8767_LDO27,
|
|
S5M8767_LDO28,
|
|
S5M8767_BUCK1,
|
|
S5M8767_BUCK2,
|
|
S5M8767_BUCK3,
|
|
S5M8767_BUCK4,
|
|
S5M8767_BUCK5,
|
|
S5M8767_BUCK6,
|
|
S5M8767_BUCK7,
|
|
S5M8767_BUCK8,
|
|
S5M8767_BUCK9,
|
|
S5M8767_AP_EN32KHZ,
|
|
S5M8767_CP_EN32KHZ,
|
|
|
|
S5M8767_REG_MAX,
|
|
};
|
|
|
|
/* LDO_EN/BUCK_EN field in registers */
|
|
#define S5M8767_ENCTRL_SHIFT 6
|
|
#define S5M8767_ENCTRL_MASK (0x3 << S5M8767_ENCTRL_SHIFT)
|
|
|
|
/*
|
|
* LDO_EN/BUCK_EN register value for controlling this Buck or LDO
|
|
* by GPIO (PWREN, BUCKEN).
|
|
*/
|
|
#define S5M8767_ENCTRL_USE_GPIO 0x1
|
|
|
|
/*
|
|
* Values for BUCK_RAMP field in DVS_RAMP register, matching raw values
|
|
* in mV/us.
|
|
*/
|
|
enum s5m8767_dvs_buck_ramp_values {
|
|
S5M8767_DVS_BUCK_RAMP_5 = 0x4,
|
|
S5M8767_DVS_BUCK_RAMP_10 = 0x9,
|
|
S5M8767_DVS_BUCK_RAMP_12_5 = 0xb,
|
|
S5M8767_DVS_BUCK_RAMP_25 = 0xd,
|
|
S5M8767_DVS_BUCK_RAMP_50 = 0xe,
|
|
S5M8767_DVS_BUCK_RAMP_100 = 0xf,
|
|
};
|
|
#define S5M8767_DVS_BUCK_RAMP_SHIFT 4
|
|
#define S5M8767_DVS_BUCK_RAMP_MASK (0xf << S5M8767_DVS_BUCK_RAMP_SHIFT)
|
|
|
|
#endif /* __LINUX_MFD_S5M8767_H */
|