Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
ccdaeb4c
Commit
ccdaeb4c
authored
May 08, 2009
by
Paul Mundt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
sh: TMU platform data for SH-X3 proto CPU.
Signed-off-by:
Paul Mundt
<
lethal@linux-sh.org
>
parent
c3d480de
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
207 additions
and
2 deletions
+207
-2
arch/sh/kernel/cpu/sh4a/setup-shx3.c
arch/sh/kernel/cpu/sh4a/setup-shx3.c
+207
-2
No files found.
arch/sh/kernel/cpu/sh4a/setup-shx3.c
View file @
ccdaeb4c
/*
* SH-X3 Setup
* SH-X3
Prototype
Setup
*
* Copyright (C) 2007 Paul Mundt
* Copyright (C) 2007
- 2009
Paul Mundt
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
...
...
@@ -12,6 +12,7 @@
#include <linux/serial.h>
#include <linux/serial_sci.h>
#include <linux/io.h>
#include <linux/sh_timer.h>
#include <asm/mmzone.h>
static
struct
plat_sci_port
sci_platform_data
[]
=
{
...
...
@@ -48,17 +49,221 @@ static struct platform_device sci_device = {
},
};
static
struct
sh_timer_config
tmu0_platform_data
=
{
.
name
=
"TMU0"
,
.
channel_offset
=
0x04
,
.
timer_bit
=
0
,
.
clk
=
"module_clk"
,
.
clockevent_rating
=
200
,
};
static
struct
resource
tmu0_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU0"
,
.
start
=
0xffc10008
,
.
end
=
0xffc10013
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
16
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu0_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
0
,
.
dev
=
{
.
platform_data
=
&
tmu0_platform_data
,
},
.
resource
=
tmu0_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu0_resources
),
};
static
struct
sh_timer_config
tmu1_platform_data
=
{
.
name
=
"TMU1"
,
.
channel_offset
=
0x10
,
.
timer_bit
=
1
,
.
clk
=
"module_clk"
,
.
clocksource_rating
=
200
,
};
static
struct
resource
tmu1_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU1"
,
.
start
=
0xffc10014
,
.
end
=
0xffc1001f
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
17
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu1_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
1
,
.
dev
=
{
.
platform_data
=
&
tmu1_platform_data
,
},
.
resource
=
tmu1_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu1_resources
),
};
static
struct
sh_timer_config
tmu2_platform_data
=
{
.
name
=
"TMU2"
,
.
channel_offset
=
0x1c
,
.
timer_bit
=
2
,
.
clk
=
"module_clk"
,
};
static
struct
resource
tmu2_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU2"
,
.
start
=
0xffc10020
,
.
end
=
0xffc1002f
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
18
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu2_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
2
,
.
dev
=
{
.
platform_data
=
&
tmu2_platform_data
,
},
.
resource
=
tmu2_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu2_resources
),
};
static
struct
sh_timer_config
tmu3_platform_data
=
{
.
name
=
"TMU3"
,
.
channel_offset
=
0x04
,
.
timer_bit
=
0
,
.
clk
=
"module_clk"
,
};
static
struct
resource
tmu3_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU3"
,
.
start
=
0xffc20008
,
.
end
=
0xffc20013
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
19
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu3_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
3
,
.
dev
=
{
.
platform_data
=
&
tmu3_platform_data
,
},
.
resource
=
tmu3_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu3_resources
),
};
static
struct
sh_timer_config
tmu4_platform_data
=
{
.
name
=
"TMU4"
,
.
channel_offset
=
0x10
,
.
timer_bit
=
1
,
.
clk
=
"module_clk"
,
};
static
struct
resource
tmu4_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU4"
,
.
start
=
0xffc20014
,
.
end
=
0xffc2001f
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
20
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu4_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
4
,
.
dev
=
{
.
platform_data
=
&
tmu4_platform_data
,
},
.
resource
=
tmu4_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu4_resources
),
};
static
struct
sh_timer_config
tmu5_platform_data
=
{
.
name
=
"TMU5"
,
.
channel_offset
=
0x1c
,
.
timer_bit
=
2
,
.
clk
=
"module_clk"
,
};
static
struct
resource
tmu5_resources
[]
=
{
[
0
]
=
{
.
name
=
"TMU5"
,
.
start
=
0xffc20020
,
.
end
=
0xffc2002b
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
21
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
tmu5_device
=
{
.
name
=
"sh_tmu"
,
.
id
=
5
,
.
dev
=
{
.
platform_data
=
&
tmu5_platform_data
,
},
.
resource
=
tmu5_resources
,
.
num_resources
=
ARRAY_SIZE
(
tmu5_resources
),
};
static
struct
platform_device
*
shx3_early_devices
[]
__initdata
=
{
&
tmu0_device
,
&
tmu1_device
,
&
tmu2_device
,
&
tmu3_device
,
&
tmu4_device
,
&
tmu5_device
,
};
static
struct
platform_device
*
shx3_devices
[]
__initdata
=
{
&
sci_device
,
};
static
int
__init
shx3_devices_setup
(
void
)
{
int
ret
;
ret
=
platform_add_devices
(
shx3_early_devices
,
ARRAY_SIZE
(
shx3_early_devices
));
if
(
unlikely
(
ret
!=
0
))
return
ret
;
return
platform_add_devices
(
shx3_devices
,
ARRAY_SIZE
(
shx3_devices
));
}
__initcall
(
shx3_devices_setup
);
void
__init
plat_early_device_setup
(
void
)
{
early_platform_add_devices
(
shx3_early_devices
,
ARRAY_SIZE
(
shx3_early_devices
));
}
enum
{
UNUSED
=
0
,
...
...
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