div_nmp
divp = (val >> pll->params->div_nmp->divp_shift) & (divp_mask(pll));
divn = (val >> pll->params->div_nmp->divn_shift) & (divn_mask(pll));
divm = (val >> pll->params->div_nmp->divm_shift) & (divm_mask(pll));
if (!pll_params->div_nmp)
pll_params->div_nmp = &default_nmp;
static struct div_nmp pll_e_nmp = {
if (!pll_params->div_nmp)
pll_params->div_nmp = &pll_e_nmp;
if (!pll_params->div_nmp)
#define divm_mask(p) mask(p->params->div_nmp->divm_width)
#define divn_mask(p) mask(p->params->div_nmp->divn_width)
mask(p->params->div_nmp->divp_width))
#define divm_shift(p) (p)->params->div_nmp->divm_shift
#define divn_shift(p) (p)->params->div_nmp->divn_shift
#define divp_shift(p) (p)->params->div_nmp->divp_shift
if (!pll_params->div_nmp)
static struct div_nmp default_nmp = {
struct div_nmp *div_nmp = params->div_nmp;
val &= ~(divp_mask(pll) << div_nmp->override_divp_shift);
val |= cfg->p << div_nmp->override_divp_shift;
val &= ~((divm_mask(pll) << div_nmp->override_divm_shift) |
(divn_mask(pll) << div_nmp->override_divn_shift));
val |= (cfg->m << div_nmp->override_divm_shift) |
(cfg->n << div_nmp->override_divn_shift);
struct div_nmp *div_nmp = params->div_nmp;
cfg->p = (val >> div_nmp->override_divp_shift) & divp_mask(pll);
cfg->m = (val >> div_nmp->override_divm_shift) & divm_mask(pll);
cfg->n = (val >> div_nmp->override_divn_shift) & divn_mask(pll);
cfg->m = (val >> div_nmp->divm_shift) & divm_mask(pll);
cfg->n = (val >> div_nmp->divn_shift) & divn_mask(pll);
cfg->p = (val >> div_nmp->divp_shift) & divp_mask(pll);
static struct div_nmp pllxc_nmp = {
.div_nmp = &pllxc_nmp,
static struct div_nmp pllcx_nmp = {
.div_nmp = &pllcx_nmp,
.div_nmp = &pllcx_nmp,
static struct div_nmp pllm_nmp = {
.div_nmp = &pllm_nmp,
static struct div_nmp pllp_nmp = {
.div_nmp = &pllp_nmp,
.div_nmp = &pllp_nmp,
.div_nmp = &pllp_nmp,
.div_nmp = &pllp_nmp,
static struct div_nmp pllu_nmp = {
.div_nmp = &pllu_nmp,
.div_nmp = &pllxc_nmp,
static struct div_nmp plle_nmp = {
.div_nmp = &plle_nmp,
static struct div_nmp pllre_nmp = {
.div_nmp = &pllre_nmp,
static struct div_nmp pllxc_nmp = {
.div_nmp = &pllxc_nmp,
.div_nmp = &pllxc_nmp,
static struct div_nmp pllcx_nmp = {
.div_nmp = &pllcx_nmp,
.div_nmp = &pllcx_nmp,
static struct div_nmp pllss_nmp = {
.div_nmp = &pllss_nmp,
static struct div_nmp pllm_nmp = {
.div_nmp = &pllm_nmp,
static struct div_nmp plle_nmp = {
.div_nmp = &plle_nmp,
static struct div_nmp pllre_nmp = {
.div_nmp = &pllre_nmp,
static struct div_nmp pllp_nmp = {
.div_nmp = &pllp_nmp,
.div_nmp = &pllp_nmp,
static struct div_nmp plld_nmp = {
.div_nmp = &plld_nmp,
.div_nmp = &pllss_nmp,
.div_nmp = &pllss_nmp,
static struct div_nmp pllu_nmp = {
.div_nmp = &pllu_nmp,
#define divm_mask(p) mask(p->params->div_nmp->divm_width)
#define divn_mask(p) mask(p->params->div_nmp->divn_width)
mask(p->params->div_nmp->divp_width))
#define divm_shift(p) ((p)->params->div_nmp->divm_shift)
#define divn_shift(p) ((p)->params->div_nmp->divn_shift)
#define divp_shift(p) ((p)->params->div_nmp->divp_shift)
ndiv_new_mask = (divn_mask(pllx) >> pllx->params->div_nmp->divn_shift)
base |= cfg->n << pllx->params->div_nmp->divn_shift;
static struct div_nmp pllx_nmp = {
.div_nmp = &pllx_nmp,
static struct div_nmp pllc_nmp = {
.div_nmp = &pllc_nmp,
static struct div_nmp pllcx_nmp = {
.div_nmp = &pllcx_nmp,
.div_nmp = &pllcx_nmp,
static struct div_nmp pllss_nmp = {
.div_nmp = &pllss_nmp,
static struct div_nmp pllm_nmp = {
.div_nmp = &pllm_nmp,
.div_nmp = &pllm_nmp,
static struct div_nmp plle_nmp = {
.div_nmp = &plle_nmp,
static struct div_nmp pllre_nmp = {
.div_nmp = &pllre_nmp,
static struct div_nmp pllp_nmp = {
.div_nmp = &pllp_nmp,
.div_nmp = &pllc_nmp,
static struct div_nmp plla_nmp = {
.div_nmp = &plla_nmp,
static struct div_nmp plld_nmp = {
.div_nmp = &plld_nmp,
.div_nmp = &pllss_nmp,
.div_nmp = &pllss_nmp,
static struct div_nmp pllu_nmp = {
.div_nmp = &pllu_nmp,
static struct div_nmp pllm_nmp = {
.div_nmp = &pllm_nmp,
struct div_nmp *div_nmp;