sysreg
.macro VFPFMRX, rd, sysreg, cond
.macro VFPFMXR, sysreg, rd, cond
enum aarch64_insn_system_register sysreg);
#define sysreg_clear_set(sysreg, clear, set) do { \
u64 __scs_val = read_sysreg(sysreg); \
write_sysreg(__scs_new, sysreg); \
#define sysreg_clear_set_s(sysreg, clear, set) do { \
u64 __scs_val = read_sysreg_s(sysreg); \
write_sysreg_s(__scs_new, sysreg); \
u32 sysreg, rt;
sysreg = esr_sys64_to_sysreg(esr);
if (do_emulate_mrs(regs, sysreg, rt) != 0)
static union trap_config get_trap_config(u32 sysreg)
.val = xa_to_value(xa_load(&sr_forward_xa, sysreg)),
u32 sysreg;
sysreg = esr_sys64_to_sysreg(esr);
tc = get_trap_config(sysreg);
sysreg, tc.val);
trace_kvm_forward_sysreg_trap(vcpu, sysreg, is_read);
u32 sysreg = esr_sys64_to_sysreg(kvm_vcpu_get_esr(vcpu));
switch (sysreg) {
idx = (sys_reg_CRm(sysreg) & 0x3) << 3 | sys_reg_Op2(sysreg);
u32 sysreg = esr_sys64_to_sysreg(kvm_vcpu_get_esr(vcpu));
switch (sysreg) {
u32 sysreg;
sysreg = esr_sys64_to_sysreg(kvm_vcpu_get_esr(vcpu));
switch (sysreg) {
u32 sysreg = esr_sys64_to_sysreg(kvm_vcpu_get_esr(vcpu));
if (sysreg != SYS_TCR_EL1)
u32 sysreg, bool is_read)
switch (sysreg) {
u32 sysreg;
sysreg = esr_cp15_to_sysreg(esr);
sysreg = esr_sys64_to_sysreg(esr);
if (__vgic_v3_check_trap_forwarding(vcpu, sysreg, is_read))
switch (sysreg) {
u32 sysreg = esr_sys64_to_sysreg(kvm_vcpu_get_esr(vcpu));
if (sysreg != SYS_ZCR_EL2)
#define ID_FILTERED(sysreg, name, mask) { \
ID_DESC(sysreg), \
TP_PROTO(struct kvm_vcpu *vcpu, u32 sysreg, bool is_read),
TP_ARGS(vcpu, sysreg, is_read),
__field(u32, sysreg)
__entry->sysreg = sysreg;
sys_reg_Op0(__entry->sysreg),
sys_reg_Op1(__entry->sysreg),
sys_reg_CRn(__entry->sysreg),
sys_reg_CRm(__entry->sysreg),
sys_reg_Op2(__entry->sysreg))
enum aarch64_insn_system_register sysreg)
insn |= sysreg << 5;
samsung_clk_save(NULL, data->ctx->sysreg, data->clk_sysreg_save,
if (data->ctx->sysreg)
samsung_clk_restore(NULL, data->ctx->sysreg,
samsung_clk_save(reg_cache->reg_base, reg_cache->sysreg,
samsung_clk_restore(reg_cache->reg_base, reg_cache->sysreg,
samsung_clk_restore(reg_cache->reg_base, reg_cache->sysreg,
struct regmap *sysreg,
reg_cache->sysreg = sysreg;
ctx->sysreg = syscon_regmap_lookup_by_phandle(np, "samsung,sysreg");
if (IS_ERR(ctx->sysreg)) {
ctx->sysreg = NULL;
regmap_write(ctx->sysreg, ctx->drcg_offset, DRCG_EN_MSK);
regmap_write_bits(ctx->sysreg, ctx->memclk_offset,
samsung_clk_extended_sleep_init(NULL, ctx->sysreg,
struct regmap *sysreg;
struct regmap *sysreg;
struct regmap *sysreg,
struct regmap *sysreg,
#define samsung_clk_sleep_init(reg_base, sysreg, rdump, nr_rdump) \
samsung_clk_extended_sleep_init(reg_base, sysreg, rdump, nr_rdump, \
if (regmap_update_bits(ctx->sysreg, DSD_CFG_MUX,
struct regmap *sysreg;
ctx->sysreg = syscon_regmap_lookup_by_phandle(dev->of_node,
if (IS_ERR(ctx->sysreg)) {
return PTR_ERR(ctx->sysreg);
ctx->sysreg = syscon_regmap_lookup_by_phandle(dev->of_node,
if (IS_ERR(ctx->sysreg)) {
ctx->sysreg = NULL;
struct regmap *sysreg;
if (driver_data->has_vtsel && ctx->sysreg &&
regmap_update_bits(ctx->sysreg,
if (ctx->sysreg && regmap_update_bits(ctx->sysreg,
if (driver_data->has_mic_bypass && ctx->sysreg &&
regmap_update_bits(ctx->sysreg,
ret = regmap_read(mic->sysreg, DSD_CFG_MUX, &val);
ret = regmap_write(mic->sysreg, DSD_CFG_MUX, val);
mic->sysreg = syscon_regmap_lookup_by_phandle(dev->of_node,
if (IS_ERR(mic->sysreg)) {
ret = PTR_ERR(mic->sysreg);
struct regmap *sysreg;
struct regmap *sysreg;
if (!hdata->sysreg)
regmap_update_bits(hdata->sysreg, EXYNOS5433_SYSREG_DISP_HDMI_PHY,
hdata->sysreg = syscon_regmap_lookup_by_phandle(dev->of_node,
if (IS_ERR(hdata->sysreg)) {
i2c->sysreg = ERR_PTR(-ENOENT);
if (!IS_ERR(i2c->sysreg))
regmap_read(i2c->sysreg, EXYNOS5_SYS_I2C_CFG, &i2c->sys_i2c_cfg);
if (!IS_ERR(i2c->sysreg))
regmap_write(i2c->sysreg, EXYNOS5_SYS_I2C_CFG, i2c->sys_i2c_cfg);
struct regmap *sysreg;
i2c->sysreg = syscon_regmap_lookup_by_phandle(np,
if (IS_ERR(i2c->sysreg))
regmap_update_bits(i2c->sysreg, EXYNOS5_SYS_I2C_CFG, BIT(id), 0);
fimc->sysreg = fimc_get_sysreg_regmap(dev->of_node);
if (IS_ERR(fimc->sysreg))
return PTR_ERR(fimc->sysreg);
struct regmap *sysreg;
struct regmap *map = fimc->sysreg;
p_phy->sysreg = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, "nuvoton,sys");
if (IS_ERR(p_phy->sysreg))
return dev_err_probe(&pdev->dev, PTR_ERR(p_phy->sysreg),
struct regmap *sysreg;
regmap_read(p_phy->sysreg, MA35_SYS_REG_USBPMISCR, &val);
ret = regmap_read_poll_timeout(p_phy->sysreg, MA35_SYS_REG_USBPMISCR, val,
regmap_update_bits(p_phy->sysreg, MA35_SYS_REG_USBPMISCR, 0x7, (PHY0POR | PHY0SUSPEND));
regmap_update_bits(p_phy->sysreg, MA35_SYS_REG_USBPMISCR, 0x7, PHY0SUSPEND);
ret = regmap_read_poll_timeout(p_phy->sysreg, MA35_SYS_REG_USBPMISCR, val,
ret = regmap_update_bits(usi->sysreg, usi->sw_conf,
usi->sysreg = syscon_regmap_lookup_by_phandle_args(np, "samsung,sysreg",
if (IS_ERR(usi->sysreg))
return PTR_ERR(usi->sysreg);
struct regmap *sysreg; /* System Register map */
ufs->sysreg = syscon_regmap_lookup_by_phandle(np, "samsung,sysreg");
if (IS_ERR(ufs->sysreg))
ufs->sysreg = NULL;
if (ufs->sysreg) {
return regmap_update_bits(ufs->sysreg,
struct regmap *sysreg;
#define sysreg_clear_set(sysreg, clear, set) do { \
u64 __scs_val = read_sysreg(sysreg); \
write_sysreg(__scs_new, sysreg); \
#define sysreg_clear_set_s(sysreg, clear, set) do { \
u64 __scs_val = read_sysreg_s(sysreg); \
write_sysreg_s(__scs_new, sysreg); \