Files
RedBear-OS/local/recipes/gpu/amdgpu-source/include/linux/regulator/s2dos05.h
T
vasilito dc68054305 restore lost packages from 0.2.3 + fix overwritten 0.2.4 files
- Restore 29 recipe symlinks (libdrm, qtbase, dbus, sddm, pipewire, etc.)
- Restore 33 patches (KDE, libdrm, mesa, pipewire, sddm, wireplumber)
- Restore 20+ local/scripts (audit, lint, test, build helpers)
- Restore src/cook/scheduler.rs, status.rs, gnu-config/
- Restore scripts/patch-inclusion-gate.sh, run_mini1.sh, validate-collision-log.sh
- Recover TLC source from HEAD (was overwritten by 0.2.3 checkout)
- Recover 11 local/docs plans from HEAD (were overwritten)
- Recover qt6-wayland-smoke symlink from HEAD
- Fix MOTD: remove garbled ASCII art, use clean text
- Update version: 0.2.0 -> 0.2.4 in os-release, motd, config
- Reduce filesystem_size: 1536 -> 512 MiB
- Add ABSOLUTE RULE to AGENTS.md: never delete/ignore packages
- Reduce pcid scheme log verbosity: info -> debug
2026-06-19 12:39:14 +03:00

74 lines
1.8 KiB
C

/* SPDX-License-Identifier: GPL-2.0+ */
// s2dos05.h
//
// Copyright (c) 2016 Samsung Electronics Co., Ltd
// http://www.samsung.com
// Copyright (C) 2024 Dzmitry Sankouski <dsankouski@gmail.com>
#ifndef __LINUX_S2DOS05_H
#define __LINUX_S2DOS05_H
// S2DOS05 registers
// Slave Addr : 0xC0
enum S2DOS05_reg {
S2DOS05_REG_DEV_ID,
S2DOS05_REG_TOPSYS_STAT,
S2DOS05_REG_STAT,
S2DOS05_REG_EN,
S2DOS05_REG_LDO1_CFG,
S2DOS05_REG_LDO2_CFG,
S2DOS05_REG_LDO3_CFG,
S2DOS05_REG_LDO4_CFG,
S2DOS05_REG_BUCK_CFG,
S2DOS05_REG_BUCK_VOUT,
S2DOS05_REG_IRQ_MASK = 0x0D,
S2DOS05_REG_SSD_TSD = 0x0E,
S2DOS05_REG_OCL = 0x10,
S2DOS05_REG_IRQ = 0x11
};
// S2DOS05 regulator ids
enum S2DOS05_regulators {
S2DOS05_LDO1,
S2DOS05_LDO2,
S2DOS05_LDO3,
S2DOS05_LDO4,
S2DOS05_BUCK1,
S2DOS05_REG_MAX,
};
#define S2DOS05_IRQ_PWRMT_MASK BIT(5)
#define S2DOS05_IRQ_TSD_MASK BIT(4)
#define S2DOS05_IRQ_SSD_MASK BIT(3)
#define S2DOS05_IRQ_SCP_MASK BIT(2)
#define S2DOS05_IRQ_UVLO_MASK BIT(1)
#define S2DOS05_IRQ_OCD_MASK BIT(0)
#define S2DOS05_BUCK_MIN1 506250
#define S2DOS05_LDO_MIN1 1500000
#define S2DOS05_LDO_MIN2 2700000
#define S2DOS05_BUCK_STEP1 6250
#define S2DOS05_LDO_STEP1 25000
#define S2DOS05_LDO_VSEL_MASK 0x7F
#define S2DOS05_LDO_FD_MASK 0x80
#define S2DOS05_BUCK_VSEL_MASK 0xFF
#define S2DOS05_BUCK_FD_MASK 0x08
#define S2DOS05_ENABLE_MASK_L1 BIT(0)
#define S2DOS05_ENABLE_MASK_L2 BIT(1)
#define S2DOS05_ENABLE_MASK_L3 BIT(2)
#define S2DOS05_ENABLE_MASK_L4 BIT(3)
#define S2DOS05_ENABLE_MASK_B1 BIT(4)
#define S2DOS05_RAMP_DELAY 12000
#define S2DOS05_ENABLE_TIME_LDO 50
#define S2DOS05_ENABLE_TIME_BUCK 350
#define S2DOS05_LDO_N_VOLTAGES (S2DOS05_LDO_VSEL_MASK + 1)
#define S2DOS05_BUCK_N_VOLTAGES (S2DOS05_BUCK_VSEL_MASK + 1)
#define S2DOS05_REGULATOR_MAX (S2DOS05_REG_MAX)
#endif // __LINUX_S2DOS05_H