Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
b2d95917
Commit
b2d95917
authored
Jan 20, 2010
by
Tony Lindgren
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'omap-fixes' into omap-fixes-for-linus
parents
ccaae273
1daa8c1d
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
66 additions
and
31 deletions
+66
-31
arch/arm/mach-omap2/gpmc.c
arch/arm/mach-omap2/gpmc.c
+2
-0
arch/arm/mach-omap2/id.c
arch/arm/mach-omap2/id.c
+23
-18
arch/arm/mach-omap2/mux.c
arch/arm/mach-omap2/mux.c
+15
-12
arch/arm/mach-omap2/mux.h
arch/arm/mach-omap2/mux.h
+24
-0
arch/arm/plat-omap/dma.c
arch/arm/plat-omap/dma.c
+1
-1
arch/arm/plat-omap/include/plat/cpu.h
arch/arm/plat-omap/include/plat/cpu.h
+1
-0
No files found.
arch/arm/mach-omap2/gpmc.c
View file @
b2d95917
...
...
@@ -534,6 +534,8 @@ void __init gpmc_init(void)
BUG
();
}
clk_enable
(
gpmc_l3_clk
);
l
=
gpmc_read_reg
(
GPMC_REVISION
);
printk
(
KERN_INFO
"GPMC revision %d.%d
\n
"
,
(
l
>>
4
)
&
0x0f
,
l
&
0x0f
);
/* Set smart idle mode and automatic L3 clock gating */
...
...
arch/arm/mach-omap2/id.c
View file @
b2d95917
...
...
@@ -188,6 +188,8 @@ void __init omap3_check_revision(void)
u16
hawkeye
;
u8
rev
;
omap_chip
.
oc
=
CHIP_IS_OMAP3430
;
/*
* We cannot access revision registers on ES1.0.
* If the processor type is Cortex-A8 and the revision is 0x0
...
...
@@ -196,6 +198,7 @@ void __init omap3_check_revision(void)
cpuid
=
read_cpuid
(
CPUID_ID
);
if
((((
cpuid
>>
4
)
&
0xfff
)
==
0xc08
)
&&
((
cpuid
&
0xf
)
==
0x0
))
{
omap_revision
=
OMAP3430_REV_ES1_0
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES1
;
return
;
}
...
...
@@ -216,18 +219,28 @@ void __init omap3_check_revision(void)
case
0
:
/* Take care of early samples */
case
1
:
omap_revision
=
OMAP3430_REV_ES2_0
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES2
;
break
;
case
2
:
omap_revision
=
OMAP3430_REV_ES2_1
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES2
;
break
;
case
3
:
omap_revision
=
OMAP3430_REV_ES3_0
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_0
;
break
;
case
4
:
omap_revision
=
OMAP3430_REV_ES3_1
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_1
;
break
;
case
7
:
/* FALLTHROUGH */
default:
/* Use the latest known revision as default */
omap_revision
=
OMAP3430_REV_ES3_1
;
omap_revision
=
OMAP3430_REV_ES3_1_2
;
/* REVISIT: Add CHIP_IS_OMAP3430ES3_1_2? */
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_1
;
}
break
;
case
0xb868
:
...
...
@@ -235,14 +248,18 @@ void __init omap3_check_revision(void)
*
* Set the device to be OMAP3505 here. Actual device
* is identified later based on the features.
*
* REVISIT: AM3505/AM3517 should have their own CHIP_IS
*/
omap_revision
=
OMAP3505_REV
(
rev
);
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_1
;
break
;
case
0xb891
:
/* FALLTHROUGH */
default:
/* Unknown default to latest silicon rev as default*/
omap_revision
=
OMAP3630_REV_ES1_0
;
omap_chip
.
oc
|=
CHIP_IS_OMAP3630ES1
;
}
}
...
...
@@ -360,6 +377,7 @@ void __init omap2_check_revision(void)
omap3_check_revision
();
omap3_check_features
();
omap3_cpuinfo
();
return
;
}
else
if
(
cpu_is_omap44xx
())
{
omap4_check_revision
();
return
;
...
...
@@ -374,27 +392,14 @@ void __init omap2_check_revision(void)
if
(
cpu_is_omap243x
())
{
/* Currently only supports 2430ES2.1 and 2430-all */
omap_chip
.
oc
|=
CHIP_IS_OMAP2430
;
return
;
}
else
if
(
cpu_is_omap242x
())
{
/* Currently only supports 2420ES2.1.1 and 2420-all */
omap_chip
.
oc
|=
CHIP_IS_OMAP2420
;
}
else
if
(
cpu_is_omap3505
()
||
cpu_is_omap3517
())
{
omap_chip
.
oc
=
CHIP_IS_OMAP3430
|
CHIP_IS_OMAP3430ES3_1
;
}
else
if
(
cpu_is_omap343x
())
{
omap_chip
.
oc
=
CHIP_IS_OMAP3430
;
if
(
omap_rev
()
==
OMAP3430_REV_ES1_0
)
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES1
;
else
if
(
omap_rev
()
>=
OMAP3430_REV_ES2_0
&&
omap_rev
()
<=
OMAP3430_REV_ES2_1
)
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES2
;
else
if
(
omap_rev
()
==
OMAP3430_REV_ES3_0
)
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_0
;
else
if
(
omap_rev
()
==
OMAP3430_REV_ES3_1
)
omap_chip
.
oc
|=
CHIP_IS_OMAP3430ES3_1
;
else
if
(
omap_rev
()
==
OMAP3630_REV_ES1_0
)
omap_chip
.
oc
|=
CHIP_IS_OMAP3630ES1
;
}
else
{
pr_err
(
"Uninitialized omap_chip, please fix!
\n
"
);
return
;
}
pr_err
(
"Uninitialized omap_chip, please fix!
\n
"
);
}
/*
...
...
arch/arm/mach-omap2/mux.c
View file @
b2d95917
...
...
@@ -51,7 +51,7 @@ struct omap_mux_entry {
static
unsigned
long
mux_phys
;
static
void
__iomem
*
mux_base
;
static
inline
u16
omap_mux_read
(
u16
reg
)
u16
omap_mux_read
(
u16
reg
)
{
if
(
cpu_is_omap24xx
())
return
__raw_readb
(
mux_base
+
reg
);
...
...
@@ -59,7 +59,7 @@ static inline u16 omap_mux_read(u16 reg)
return
__raw_readw
(
mux_base
+
reg
);
}
static
inline
void
omap_mux_write
(
u16
val
,
u16
reg
)
void
omap_mux_write
(
u16
val
,
u16
reg
)
{
if
(
cpu_is_omap24xx
())
__raw_writeb
(
val
,
mux_base
+
reg
);
...
...
@@ -67,6 +67,14 @@ static inline void omap_mux_write(u16 val, u16 reg)
__raw_writew
(
val
,
mux_base
+
reg
);
}
void
omap_mux_write_array
(
struct
omap_board_mux
*
board_mux
)
{
while
(
board_mux
->
reg_offset
!=
OMAP_MUX_TERMINATOR
)
{
omap_mux_write
(
board_mux
->
value
,
board_mux
->
reg_offset
);
board_mux
++
;
}
}
#if defined(CONFIG_ARCH_OMAP24XX) && defined(CONFIG_OMAP_MUX)
static
struct
omap_mux_cfg
arch_mux_cfg
;
...
...
@@ -833,14 +841,6 @@ static void __init omap_mux_set_cmdline_signals(void)
kfree
(
options
);
}
static
void
__init
omap_mux_set_board_signals
(
struct
omap_board_mux
*
board_mux
)
{
while
(
board_mux
->
reg_offset
!=
OMAP_MUX_TERMINATOR
)
{
omap_mux_write
(
board_mux
->
value
,
board_mux
->
reg_offset
);
board_mux
++
;
}
}
static
int
__init
omap_mux_copy_names
(
struct
omap_mux
*
src
,
struct
omap_mux
*
dst
)
{
...
...
@@ -998,12 +998,15 @@ int __init omap_mux_init(u32 mux_pbase, u32 mux_size,
omap_mux_package_fixup
(
package_subset
,
superset
);
if
(
package_balls
)
omap_mux_package_init_balls
(
package_balls
,
superset
);
omap_mux_set_cmdline_signals
();
omap_mux_set_board_signals
(
board_mux
);
#endif
omap_mux_init_list
(
superset
);
#ifdef CONFIG_OMAP_MUX
omap_mux_set_cmdline_signals
();
omap_mux_write_array
(
board_mux
);
#endif
return
0
;
}
...
...
arch/arm/mach-omap2/mux.h
View file @
b2d95917
...
...
@@ -146,6 +146,30 @@ u16 omap_mux_get_gpio(int gpio);
*/
void
omap_mux_set_gpio
(
u16
val
,
int
gpio
);
/**
* omap_mux_read() - read mux register
* @mux_offset: Offset of the mux register
*
*/
u16
omap_mux_read
(
u16
mux_offset
);
/**
* omap_mux_write() - write mux register
* @val: New mux register value
* @mux_offset: Offset of the mux register
*
* This should be only needed for dynamic remuxing of non-gpio signals.
*/
void
omap_mux_write
(
u16
val
,
u16
mux_offset
);
/**
* omap_mux_write_array() - write an array of mux registers
* @board_mux: Array of mux registers terminated by MAP_MUX_TERMINATOR
*
* This should be only needed for dynamic remuxing of non-gpio signals.
*/
void
omap_mux_write_array
(
struct
omap_board_mux
*
board_mux
);
/**
* omap3_mux_init() - initialize mux system with board specific set
* @board_mux: Board specific mux table
...
...
arch/arm/plat-omap/dma.c
View file @
b2d95917
...
...
@@ -1183,7 +1183,7 @@ void omap_dma_unlink_lch(int lch_head, int lch_queue)
}
if
((
dma_chan
[
lch_head
].
flags
&
OMAP_DMA_ACTIVE
)
||
(
dma_chan
[
lch_
head
].
flags
&
OMAP_DMA_ACTIVE
))
{
(
dma_chan
[
lch_
queue
].
flags
&
OMAP_DMA_ACTIVE
))
{
printk
(
KERN_ERR
"omap_dma: You need to stop the DMA channels "
"before unlinking
\n
"
);
dump_stack
();
...
...
arch/arm/plat-omap/include/plat/cpu.h
View file @
b2d95917
...
...
@@ -434,6 +434,7 @@ IS_OMAP_TYPE(3517, 0x3517)
#define OMAP3430_REV_ES2_1 0x34302034
#define OMAP3430_REV_ES3_0 0x34303034
#define OMAP3430_REV_ES3_1 0x34304034
#define OMAP3430_REV_ES3_1_2 0x34305034
#define OMAP3630_REV_ES1_0 0x36300034
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment