Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Linux-御风守护者
linux
提交
5c69b0ad
L
linux
项目概览
Linux-御风守护者
/
linux
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5c69b0ad
编写于
12月 03, 2011
作者:
G
Gustavo F. Padovan
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth
上级
ce7e4ad1
33cb722c
变更
6
显示空白变更内容
内联
并排
Showing
6 changed file
with
24 addition
and
15 deletion
+24
-15
drivers/bluetooth/Kconfig
drivers/bluetooth/Kconfig
+3
-3
drivers/bluetooth/btmrvl_sdio.c
drivers/bluetooth/btmrvl_sdio.c
+13
-2
drivers/bluetooth/btusb.c
drivers/bluetooth/btusb.c
+1
-2
net/bluetooth/bnep/core.c
net/bluetooth/bnep/core.c
+3
-5
net/bluetooth/cmtp/core.c
net/bluetooth/cmtp/core.c
+3
-2
net/bluetooth/hci_event.c
net/bluetooth/hci_event.c
+1
-1
未找到文件。
drivers/bluetooth/Kconfig
浏览文件 @
5c69b0ad
...
@@ -188,7 +188,7 @@ config BT_MRVL
...
@@ -188,7 +188,7 @@ config BT_MRVL
The core driver to support Marvell Bluetooth devices.
The core driver to support Marvell Bluetooth devices.
This driver is required if you want to support
This driver is required if you want to support
Marvell Bluetooth devices, such as 8688/8787.
Marvell Bluetooth devices, such as 8688/8787
/8797
.
Say Y here to compile Marvell Bluetooth driver
Say Y here to compile Marvell Bluetooth driver
into the kernel or say M to compile it as module.
into the kernel or say M to compile it as module.
...
@@ -201,8 +201,8 @@ config BT_MRVL_SDIO
...
@@ -201,8 +201,8 @@ config BT_MRVL_SDIO
The driver for Marvell Bluetooth chipsets with SDIO interface.
The driver for Marvell Bluetooth chipsets with SDIO interface.
This driver is required if you want to use Marvell Bluetooth
This driver is required if you want to use Marvell Bluetooth
devices with SDIO interface. Currently SD8688/SD8787
chipsets are
devices with SDIO interface. Currently SD8688/SD8787
/SD8797
supported.
chipsets are
supported.
Say Y here to compile support for Marvell BT-over-SDIO driver
Say Y here to compile support for Marvell BT-over-SDIO driver
into the kernel or say M to compile it as module.
into the kernel or say M to compile it as module.
...
...
drivers/bluetooth/btmrvl_sdio.c
浏览文件 @
5c69b0ad
...
@@ -64,7 +64,7 @@ static const struct btmrvl_sdio_card_reg btmrvl_reg_8688 = {
...
@@ -64,7 +64,7 @@ static const struct btmrvl_sdio_card_reg btmrvl_reg_8688 = {
.
io_port_1
=
0x01
,
.
io_port_1
=
0x01
,
.
io_port_2
=
0x02
,
.
io_port_2
=
0x02
,
};
};
static
const
struct
btmrvl_sdio_card_reg
btmrvl_reg_87
87
=
{
static
const
struct
btmrvl_sdio_card_reg
btmrvl_reg_87
xx
=
{
.
cfg
=
0x00
,
.
cfg
=
0x00
,
.
host_int_mask
=
0x02
,
.
host_int_mask
=
0x02
,
.
host_intstatus
=
0x03
,
.
host_intstatus
=
0x03
,
...
@@ -91,7 +91,14 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8688 = {
...
@@ -91,7 +91,14 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8688 = {
static
const
struct
btmrvl_sdio_device
btmrvl_sdio_sd8787
=
{
static
const
struct
btmrvl_sdio_device
btmrvl_sdio_sd8787
=
{
.
helper
=
NULL
,
.
helper
=
NULL
,
.
firmware
=
"mrvl/sd8787_uapsta.bin"
,
.
firmware
=
"mrvl/sd8787_uapsta.bin"
,
.
reg
=
&
btmrvl_reg_8787
,
.
reg
=
&
btmrvl_reg_87xx
,
.
sd_blksz_fw_dl
=
256
,
};
static
const
struct
btmrvl_sdio_device
btmrvl_sdio_sd8797
=
{
.
helper
=
NULL
,
.
firmware
=
"mrvl/sd8797_uapsta.bin"
,
.
reg
=
&
btmrvl_reg_87xx
,
.
sd_blksz_fw_dl
=
256
,
.
sd_blksz_fw_dl
=
256
,
};
};
...
@@ -102,6 +109,9 @@ static const struct sdio_device_id btmrvl_sdio_ids[] = {
...
@@ -102,6 +109,9 @@ static const struct sdio_device_id btmrvl_sdio_ids[] = {
/* Marvell SD8787 Bluetooth device */
/* Marvell SD8787 Bluetooth device */
{
SDIO_DEVICE
(
SDIO_VENDOR_ID_MARVELL
,
0x911A
),
{
SDIO_DEVICE
(
SDIO_VENDOR_ID_MARVELL
,
0x911A
),
.
driver_data
=
(
unsigned
long
)
&
btmrvl_sdio_sd8787
},
.
driver_data
=
(
unsigned
long
)
&
btmrvl_sdio_sd8787
},
/* Marvell SD8797 Bluetooth device */
{
SDIO_DEVICE
(
SDIO_VENDOR_ID_MARVELL
,
0x912A
),
.
driver_data
=
(
unsigned
long
)
&
btmrvl_sdio_sd8797
},
{
}
/* Terminating entry */
{
}
/* Terminating entry */
};
};
...
@@ -1075,3 +1085,4 @@ MODULE_LICENSE("GPL v2");
...
@@ -1075,3 +1085,4 @@ MODULE_LICENSE("GPL v2");
MODULE_FIRMWARE
(
"sd8688_helper.bin"
);
MODULE_FIRMWARE
(
"sd8688_helper.bin"
);
MODULE_FIRMWARE
(
"sd8688.bin"
);
MODULE_FIRMWARE
(
"sd8688.bin"
);
MODULE_FIRMWARE
(
"mrvl/sd8787_uapsta.bin"
);
MODULE_FIRMWARE
(
"mrvl/sd8787_uapsta.bin"
);
MODULE_FIRMWARE
(
"mrvl/sd8797_uapsta.bin"
);
drivers/bluetooth/btusb.c
浏览文件 @
5c69b0ad
...
@@ -785,9 +785,8 @@ static int btusb_send_frame(struct sk_buff *skb)
...
@@ -785,9 +785,8 @@ static int btusb_send_frame(struct sk_buff *skb)
usb_mark_last_busy
(
data
->
udev
);
usb_mark_last_busy
(
data
->
udev
);
}
}
usb_free_urb
(
urb
);
done:
done:
usb_free_urb
(
urb
);
return
err
;
return
err
;
}
}
...
...
net/bluetooth/bnep/core.c
浏览文件 @
5c69b0ad
...
@@ -77,17 +77,12 @@ static struct bnep_session *__bnep_get_session(u8 *dst)
...
@@ -77,17 +77,12 @@ static struct bnep_session *__bnep_get_session(u8 *dst)
static
void
__bnep_link_session
(
struct
bnep_session
*
s
)
static
void
__bnep_link_session
(
struct
bnep_session
*
s
)
{
{
/* It's safe to call __module_get() here because sessions are added
by the socket layer which has to hold the reference to this module.
*/
__module_get
(
THIS_MODULE
);
list_add
(
&
s
->
list
,
&
bnep_session_list
);
list_add
(
&
s
->
list
,
&
bnep_session_list
);
}
}
static
void
__bnep_unlink_session
(
struct
bnep_session
*
s
)
static
void
__bnep_unlink_session
(
struct
bnep_session
*
s
)
{
{
list_del
(
&
s
->
list
);
list_del
(
&
s
->
list
);
module_put
(
THIS_MODULE
);
}
}
static
int
bnep_send
(
struct
bnep_session
*
s
,
void
*
data
,
size_t
len
)
static
int
bnep_send
(
struct
bnep_session
*
s
,
void
*
data
,
size_t
len
)
...
@@ -528,6 +523,7 @@ static int bnep_session(void *arg)
...
@@ -528,6 +523,7 @@ static int bnep_session(void *arg)
up_write
(
&
bnep_session_sem
);
up_write
(
&
bnep_session_sem
);
free_netdev
(
dev
);
free_netdev
(
dev
);
module_put_and_exit
(
0
);
return
0
;
return
0
;
}
}
...
@@ -614,9 +610,11 @@ int bnep_add_connection(struct bnep_connadd_req *req, struct socket *sock)
...
@@ -614,9 +610,11 @@ int bnep_add_connection(struct bnep_connadd_req *req, struct socket *sock)
__bnep_link_session
(
s
);
__bnep_link_session
(
s
);
__module_get
(
THIS_MODULE
);
s
->
task
=
kthread_run
(
bnep_session
,
s
,
"kbnepd %s"
,
dev
->
name
);
s
->
task
=
kthread_run
(
bnep_session
,
s
,
"kbnepd %s"
,
dev
->
name
);
if
(
IS_ERR
(
s
->
task
))
{
if
(
IS_ERR
(
s
->
task
))
{
/* Session thread start failed, gotta cleanup. */
/* Session thread start failed, gotta cleanup. */
module_put
(
THIS_MODULE
);
unregister_netdev
(
dev
);
unregister_netdev
(
dev
);
__bnep_unlink_session
(
s
);
__bnep_unlink_session
(
s
);
err
=
PTR_ERR
(
s
->
task
);
err
=
PTR_ERR
(
s
->
task
);
...
...
net/bluetooth/cmtp/core.c
浏览文件 @
5c69b0ad
...
@@ -65,14 +65,12 @@ static struct cmtp_session *__cmtp_get_session(bdaddr_t *bdaddr)
...
@@ -65,14 +65,12 @@ static struct cmtp_session *__cmtp_get_session(bdaddr_t *bdaddr)
static
void
__cmtp_link_session
(
struct
cmtp_session
*
session
)
static
void
__cmtp_link_session
(
struct
cmtp_session
*
session
)
{
{
__module_get
(
THIS_MODULE
);
list_add
(
&
session
->
list
,
&
cmtp_session_list
);
list_add
(
&
session
->
list
,
&
cmtp_session_list
);
}
}
static
void
__cmtp_unlink_session
(
struct
cmtp_session
*
session
)
static
void
__cmtp_unlink_session
(
struct
cmtp_session
*
session
)
{
{
list_del
(
&
session
->
list
);
list_del
(
&
session
->
list
);
module_put
(
THIS_MODULE
);
}
}
static
void
__cmtp_copy_session
(
struct
cmtp_session
*
session
,
struct
cmtp_conninfo
*
ci
)
static
void
__cmtp_copy_session
(
struct
cmtp_session
*
session
,
struct
cmtp_conninfo
*
ci
)
...
@@ -325,6 +323,7 @@ static int cmtp_session(void *arg)
...
@@ -325,6 +323,7 @@ static int cmtp_session(void *arg)
up_write
(
&
cmtp_session_sem
);
up_write
(
&
cmtp_session_sem
);
kfree
(
session
);
kfree
(
session
);
module_put_and_exit
(
0
);
return
0
;
return
0
;
}
}
...
@@ -374,9 +373,11 @@ int cmtp_add_connection(struct cmtp_connadd_req *req, struct socket *sock)
...
@@ -374,9 +373,11 @@ int cmtp_add_connection(struct cmtp_connadd_req *req, struct socket *sock)
__cmtp_link_session
(
session
);
__cmtp_link_session
(
session
);
__module_get
(
THIS_MODULE
);
session
->
task
=
kthread_run
(
cmtp_session
,
session
,
"kcmtpd_ctr_%d"
,
session
->
task
=
kthread_run
(
cmtp_session
,
session
,
"kcmtpd_ctr_%d"
,
session
->
num
);
session
->
num
);
if
(
IS_ERR
(
session
->
task
))
{
if
(
IS_ERR
(
session
->
task
))
{
module_put
(
THIS_MODULE
);
err
=
PTR_ERR
(
session
->
task
);
err
=
PTR_ERR
(
session
->
task
);
goto
unlink
;
goto
unlink
;
}
}
...
...
net/bluetooth/hci_event.c
浏览文件 @
5c69b0ad
...
@@ -564,7 +564,7 @@ static void hci_setup(struct hci_dev *hdev)
...
@@ -564,7 +564,7 @@ static void hci_setup(struct hci_dev *hdev)
{
{
hci_setup_event_mask
(
hdev
);
hci_setup_event_mask
(
hdev
);
if
(
hdev
->
lmp
_ver
>
1
)
if
(
hdev
->
hci
_ver
>
1
)
hci_send_cmd
(
hdev
,
HCI_OP_READ_LOCAL_COMMANDS
,
0
,
NULL
);
hci_send_cmd
(
hdev
,
HCI_OP_READ_LOCAL_COMMANDS
,
0
,
NULL
);
if
(
hdev
->
features
[
6
]
&
LMP_SIMPLE_PAIR
)
{
if
(
hdev
->
features
[
6
]
&
LMP_SIMPLE_PAIR
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录