Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
R
reform-boundary-uboot
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Reform
reform-boundary-uboot
Commits
16debc62
Commit
16debc62
authored
6 years ago
by
Troy Kisky
Browse files
Options
Downloads
Patches
Plain Diff
arm: clock_imx8mm: convert decode_intpll to use struct ana_grp2
Signed-off-by:
Troy Kisky
<
troy.kisky@boundarydevices.com
>
parent
6e8239c1
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
arch/arm/mach-imx/imx8m/clock_imx8mm.c
+12
-13
12 additions, 13 deletions
arch/arm/mach-imx/imx8m/clock_imx8mm.c
with
12 additions
and
13 deletions
arch/arm/mach-imx/imx8m/clock_imx8mm.c
+
12
−
13
View file @
16debc62
...
@@ -45,22 +45,20 @@ int enable_i2c_clk(unsigned char enable, unsigned i2c_num)
...
@@ -45,22 +45,20 @@ int enable_i2c_clk(unsigned char enable, unsigned i2c_num)
static
u32
decode_intpll
(
enum
clk_root_src
intpll
)
static
u32
decode_intpll
(
enum
clk_root_src
intpll
)
{
{
struct
ana_grp2
*
pll
;
u32
gnrl_ctl
,
div_ctl
,
pll_clke_mask
;
u32
gnrl_ctl
,
div_ctl
,
pll_clke_mask
;
u32
main_div
,
pre_div
,
post_div
,
div
;
u32
main_div
,
pre_div
,
post_div
,
div
;
u64
freq
;
u64
freq
;
switch
(
intpll
)
{
switch
(
intpll
)
{
case
ARM_PLL_CLK
:
case
ARM_PLL_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
ARM_PLL_GNRL_CTL
);
pll
=
&
ana_pll
->
arm_pll
;
div_ctl
=
readl
((
void
__iomem
*
)
ARM_PLL_DIV_CTL
);
break
;
break
;
case
GPU_PLL_CLK
:
case
GPU_PLL_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
GPU_PLL_GNRL_CTL
);
pll
=
&
ana_pll
->
gpu_pll
;
div_ctl
=
readl
((
void
__iomem
*
)
GPU_PLL_DIV_CTL
);
break
;
break
;
case
VPU_PLL_CLK
:
case
VPU_PLL_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
VPU_PLL_GNRL_CTL
);
pll
=
&
ana_pll
->
vpu_pll
;
div_ctl
=
readl
((
void
__iomem
*
)
VPU_PLL_DIV_CTL
);
break
;
break
;
case
SYSTEM_PLL1_800M_CLK
:
case
SYSTEM_PLL1_800M_CLK
:
case
SYSTEM_PLL1_400M_CLK
:
case
SYSTEM_PLL1_400M_CLK
:
...
@@ -71,8 +69,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
...
@@ -71,8 +69,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
case
SYSTEM_PLL1_100M_CLK
:
case
SYSTEM_PLL1_100M_CLK
:
case
SYSTEM_PLL1_80M_CLK
:
case
SYSTEM_PLL1_80M_CLK
:
case
SYSTEM_PLL1_40M_CLK
:
case
SYSTEM_PLL1_40M_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL1_GNRL_CTL
);
pll
=
&
ana_pll
->
sys_pll1
;
div_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL1_DIV_CTL
);
break
;
break
;
case
SYSTEM_PLL2_1000M_CLK
:
case
SYSTEM_PLL2_1000M_CLK
:
case
SYSTEM_PLL2_500M_CLK
:
case
SYSTEM_PLL2_500M_CLK
:
...
@@ -83,16 +80,17 @@ static u32 decode_intpll(enum clk_root_src intpll)
...
@@ -83,16 +80,17 @@ static u32 decode_intpll(enum clk_root_src intpll)
case
SYSTEM_PLL2_125M_CLK
:
case
SYSTEM_PLL2_125M_CLK
:
case
SYSTEM_PLL2_100M_CLK
:
case
SYSTEM_PLL2_100M_CLK
:
case
SYSTEM_PLL2_50M_CLK
:
case
SYSTEM_PLL2_50M_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL2_GNRL_CTL
);
pll
=
&
ana_pll
->
sys_pll2
;
div_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL2_DIV_CTL
);
break
;
break
;
case
SYSTEM_PLL3_CLK
:
case
SYSTEM_PLL3_CLK
:
gnrl_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL3_GNRL_CTL
);
pll
=
&
ana_pll
->
sys_pll3
;
div_ctl
=
readl
((
void
__iomem
*
)
SYS_PLL3_DIV_CTL
);
break
;
break
;
default:
default:
printf
(
"int PLL %d not supporte
\n
"
,
intpll
);
return
-
EINVAL
;
return
-
EINVAL
;
}
}
gnrl_ctl
=
readl
(
&
pll
->
gnrl_ctl
);
div_ctl
=
readl
(
&
pll
->
div_ctl
);
/* Only support SYS_XTAL 24M, PAD_CLK not take into consideration */
/* Only support SYS_XTAL 24M, PAD_CLK not take into consideration */
if
((
gnrl_ctl
&
INTPLL_REF_CLK_SEL_MASK
)
!=
0
)
if
((
gnrl_ctl
&
INTPLL_REF_CLK_SEL_MASK
)
!=
0
)
...
@@ -110,7 +108,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
...
@@ -110,7 +108,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
if
(
!
(
gnrl_ctl
&
INTPLL_LOCK_MASK
))
{
if
(
!
(
gnrl_ctl
&
INTPLL_LOCK_MASK
))
{
puts
(
"pll not locked
\n
"
);
puts
(
"pll not locked
\n
"
);
return
0
;
return
-
EINVAL
;
}
}
switch
(
intpll
)
{
switch
(
intpll
)
{
...
@@ -172,6 +170,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
...
@@ -172,6 +170,7 @@ static u32 decode_intpll(enum clk_root_src intpll)
div
=
20
;
div
=
20
;
break
;
break
;
default:
default:
printf
(
"int pll %d not supported
\n
"
,
intpll
);
return
-
EINVAL
;
return
-
EINVAL
;
}
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment