Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
446e326c
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
446e326c
编写于
1月 19, 2012
作者:
P
Paul Mundt
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'rmobile/mackerel' into rmobile-fixes-for-linus
上级
d5bb386d
6d9b7dd0
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
64 deletion
+19
-64
arch/arm/mach-shmobile/board-mackerel.c
arch/arm/mach-shmobile/board-mackerel.c
+19
-64
未找到文件。
arch/arm/mach-shmobile/board-mackerel.c
浏览文件 @
446e326c
...
...
@@ -43,7 +43,6 @@
#include <linux/smsc911x.h>
#include <linux/sh_intc.h>
#include <linux/tca6416_keypad.h>
#include <linux/usb/r8a66597.h>
#include <linux/usb/renesas_usbhs.h>
#include <linux/dma-mapping.h>
...
...
@@ -145,11 +144,6 @@
* 1-2 short | VBUS 5V | Host
* open | external VBUS | Function
*
* *1
* CN31 is used as
* CONFIG_USB_R8A66597_HCD Host
* CONFIG_USB_RENESAS_USBHS Function
*
* CAUTION
*
* renesas_usbhs driver can use external interrupt mode
...
...
@@ -161,15 +155,6 @@
* mackerel can not use external interrupt (IRQ7-PORT167) mode on "USB0",
* because Touchscreen is using IRQ7-PORT40.
* It is impossible to use IRQ7 demux on this board.
*
* We can use external interrupt mode USB-Function on "USB1".
* USB1 can become Host by r8a66597, and become Function by renesas_usbhs.
* But don't select both drivers in same time.
* These uses same IRQ number for request_irq(), and aren't supporting
* IRQF_SHARED / IORESOURCE_IRQ_SHAREABLE.
*
* Actually these are old/new version of USB driver.
* This mean its register will be broken if it supports shared IRQ,
*/
/*
...
...
@@ -207,6 +192,16 @@
*
*/
/*
* FSI - AK4642
*
* it needs amixer settings for playing
*
* amixer set "Headphone" on
* amixer set "HPOUTL Mixer DACH" on
* amixer set "HPOUTR Mixer DACH" on
*/
/*
* FIXME !!
*
...
...
@@ -676,51 +671,16 @@ static struct platform_device usbhs0_device = {
* Use J30 to select between Host and Function. This setting
* can however not be detected by software. Hotplug of USBHS1
* is provided via IRQ8.
*
* Current USB1 works as "USB Host".
* - set J30 "short"
*
* If you want to use it as "USB gadget",
* - J30 "open"
* - modify usbhs1_get_id() USBHS_HOST -> USBHS_GADGET
* - add .get_vbus = usbhs_get_vbus in usbhs1_private
*/
#define IRQ8 evt2irq(0x0300)
/* USBHS1 USB Host support via r8a66597_hcd */
static
void
usb1_host_port_power
(
int
port
,
int
power
)
{
if
(
!
power
)
/* only power-on is supported for now */
return
;
/* set VBOUT/PWEN and EXTLP1 in DVSTCTR */
__raw_writew
(
__raw_readw
(
0xE68B0008
)
|
0x600
,
0xE68B0008
);
}
static
struct
r8a66597_platdata
usb1_host_data
=
{
.
on_chip
=
1
,
.
port_power
=
usb1_host_port_power
,
};
static
struct
resource
usb1_host_resources
[]
=
{
[
0
]
=
{
.
name
=
"USBHS1"
,
.
start
=
0xe68b0000
,
.
end
=
0xe68b00e6
-
1
,
.
flags
=
IORESOURCE_MEM
,
},
[
1
]
=
{
.
start
=
evt2irq
(
0x1ce0
)
/* USB1_USB1I0 */
,
.
flags
=
IORESOURCE_IRQ
,
},
};
static
struct
platform_device
usb1_host_device
=
{
.
name
=
"r8a66597_hcd"
,
.
id
=
1
,
.
dev
=
{
.
dma_mask
=
NULL
,
/* not use dma */
.
coherent_dma_mask
=
0xffffffff
,
.
platform_data
=
&
usb1_host_data
,
},
.
num_resources
=
ARRAY_SIZE
(
usb1_host_resources
),
.
resource
=
usb1_host_resources
,
};
/* USBHS1 USB Function support via renesas_usbhs */
#define USB_PHY_MODE (1 << 4)
#define USB_PHY_INT_EN ((1 << 3) | (1 << 2))
#define USB_PHY_ON (1 << 1)
...
...
@@ -776,7 +736,7 @@ static void usbhs1_hardware_exit(struct platform_device *pdev)
static
int
usbhs1_get_id
(
struct
platform_device
*
pdev
)
{
return
USBHS_
GADGE
T
;
return
USBHS_
HOS
T
;
}
static
u32
usbhs1_pipe_cfg
[]
=
{
...
...
@@ -807,7 +767,6 @@ static struct usbhs_private usbhs1_private = {
.
hardware_exit
=
usbhs1_hardware_exit
,
.
get_id
=
usbhs1_get_id
,
.
phy_reset
=
usbhs_phy_reset
,
.
get_vbus
=
usbhs_get_vbus
,
},
.
driver_param
=
{
.
buswait_bwait
=
4
,
...
...
@@ -1303,7 +1262,6 @@ static struct platform_device *mackerel_devices[] __initdata = {
&
nor_flash_device
,
&
smc911x_device
,
&
lcdc_device
,
&
usb1_host_device
,
&
usbhs1_device
,
&
usbhs0_device
,
&
leds_device
,
...
...
@@ -1465,9 +1423,6 @@ static void __init mackerel_init(void)
gpio_pull_down
(
GPIO_PORT167CR
);
/* VBUS0_1 pull down */
gpio_request
(
GPIO_FN_IDIN_1_113
,
NULL
);
/* USB phy tweak to make the r8a66597_hcd host driver work */
__raw_writew
(
0x8a0a
,
0xe6058130
);
/* USBCR4 */
/* enable FSI2 port A (ak4643) */
gpio_request
(
GPIO_FN_FSIAIBT
,
NULL
);
gpio_request
(
GPIO_FN_FSIAILR
,
NULL
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录