/* SPDX-License-Identifier: GPL-2.0-only */ /* * OMAP2/3 Clock Management (CM) register definitions * * Copyright (C) 2007-2009 Texas Instruments, Inc. * Copyright (C) 2007-2010 Nokia Corporation * Paul Walmsley * * The CM hardware modules on the OMAP2/3 are quite similar to each * other. The CM modules/instances on OMAP4 are quite different, so * they are handled in a separate file.
*/ #ifndef __ARCH_ASM_MACH_OMAP2_CM2XXX_3XXX_H #define __ARCH_ASM_MACH_OMAP2_CM2XXX_3XXX_H
#include"cm.h"
/* * Module specific CM register offsets from CM_BASE + domain offset * Use cm_{read,write}_mod_reg() with these registers. * These register offsets generally appear in more than one PRCM submodule.
*/
/* Read-modify-write a register in a CM module. Caller must lock */ staticinline u32 omap2_cm_rmw_mod_reg_bits(u32 mask, u32 bits, s16 module,
s16 idx)
{
u32 v;
v = omap2_cm_read_mod_reg(module, idx);
v &= ~mask;
v |= bits;
omap2_cm_write_mod_reg(v, module, idx);
return v;
}
/* Read a CM register, AND it, and shift the result down to bit 0 */ staticinline u32 omap2_cm_read_mod_bits_shift(s16 domain, s16 idx, u32 mask)
{
u32 v;
v = omap2_cm_read_mod_reg(domain, idx);
v &= mask;
v >>= __ffs(mask);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.