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
Kirill Smelkov
linux
Commits
3ac7f581
Commit
3ac7f581
authored
Jun 05, 2003
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
bk://kernel.bkbits.net/gregkh/linux/pci-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux
parents
cbef6c0f
ff0699a5
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1023 additions
and
64 deletions
+1023
-64
Documentation/DocBook/Makefile
Documentation/DocBook/Makefile
+2
-1
Documentation/DocBook/gadget.tmpl
Documentation/DocBook/gadget.tmpl
+966
-0
drivers/usb/image/hpusbscsi.c
drivers/usb/image/hpusbscsi.c
+0
-11
drivers/usb/input/hid-input.c
drivers/usb/input/hid-input.c
+51
-48
drivers/usb/input/hid.h
drivers/usb/input/hid.h
+1
-2
drivers/usb/serial/empeg.c
drivers/usb/serial/empeg.c
+3
-2
No files found.
Documentation/DocBook/Makefile
View file @
3ac7f581
...
...
@@ -11,7 +11,8 @@ DOCBOOKS := wanbook.sgml z8530book.sgml mcabook.sgml videobook.sgml \
kernel-locking.sgml via-audio.sgml mousedrivers.sgml
\
deviceiobook.sgml procfs-guide.sgml tulip-user.sgml
\
writing_usb_driver.sgml scsidrivers.sgml sis900.sgml
\
kernel-api.sgml journal-api.sgml lsm.sgml usb.sgml
kernel-api.sgml journal-api.sgml lsm.sgml usb.sgml
\
gadget.sgml
###
# The build process is as follows (targets):
...
...
Documentation/DocBook/gadget.tmpl
0 → 100644
View file @
3ac7f581
This diff is collapsed.
Click to expand it.
drivers/usb/image/hpusbscsi.c
View file @
3ac7f581
...
...
@@ -93,17 +93,6 @@ hpusbscsi_usb_probe(struct usb_interface *intf,
}
}
/* USB initialisation magic for the simple case */
result
=
usb_set_interface
(
dev
,
altsetting
->
desc
.
bInterfaceNumber
,
0
);
switch
(
result
)
{
case
0
:
/* no error */
break
;
default:
printk
(
KERN_ERR
"unknown error %d from usb_set_interface
\n
"
,
result
);
goto
out_free_controlurb
;
}
/* build and submit an interrupt URB for status byte handling */
usb_fill_int_urb
(
new
->
controlurb
,
new
->
dev
,
usb_rcvintpipe
(
new
->
dev
,
new
->
ep_int
),
...
...
drivers/usb/input/hid-input.c
View file @
3ac7f581
...
...
@@ -70,8 +70,11 @@ static struct input_dev *find_input(struct hid_device *hid, struct hid_field *fi
hidinput
=
list_entry
(
lh
,
struct
hid_input
,
list
);
for
(
i
=
0
;
i
<
hidinput
->
maxfield
;
i
++
)
if
(
hidinput
->
fields
[
i
]
==
field
)
if
(
!
hidinput
->
report
)
continue
;
for
(
i
=
0
;
i
<
hidinput
->
report
->
maxfield
;
i
++
)
if
(
hidinput
->
report
->
field
[
i
]
==
field
)
return
&
hidinput
->
input
;
}
...
...
@@ -527,7 +530,7 @@ int hidinput_connect(struct hid_device *hid)
struct
hid_report
*
report
;
struct
list_head
*
list
;
struct
hid_input
*
hidinput
=
NULL
;
int
i
,
j
;
int
i
,
j
,
k
;
INIT_LIST_HEAD
(
&
hid
->
inputs
);
...
...
@@ -539,57 +542,57 @@ int hidinput_connect(struct hid_device *hid)
if
(
i
==
hid
->
maxcollection
)
return
-
1
;
report_enum
=
hid
->
report_enum
+
HID_INPUT_REPORT
;
list
=
report_enum
->
report_list
.
next
;
while
(
list
!=
&
report_enum
->
report_list
)
{
report
=
(
struct
hid_report
*
)
list
;
for
(
k
=
HID_INPUT_REPORT
;
k
<=
HID_OUTPUT_REPORT
;
k
++
)
{
report_enum
=
hid
->
report_enum
+
k
;
list
=
report_enum
->
report_list
.
next
;
while
(
list
!=
&
report_enum
->
report_list
)
{
report
=
(
struct
hid_report
*
)
list
;
if
(
!
report
->
maxfield
)
continue
;
if
(
!
report
->
maxfield
)
continue
;
if
(
!
hidinput
)
{
hidinput
=
kmalloc
(
sizeof
(
*
hidinput
),
GFP_KERNEL
);
if
(
!
hidinput
)
{
err
(
"Out of memory during hid input probe"
);
return
-
1
;
hidinput
=
kmalloc
(
sizeof
(
*
hidinput
),
GFP_KERNEL
);
if
(
!
hidinput
)
{
err
(
"Out of memory during hid input probe"
);
return
-
1
;
}
memset
(
hidinput
,
0
,
sizeof
(
*
hidinput
));
list_add_tail
(
&
hidinput
->
list
,
&
hid
->
inputs
);
hidinput
->
input
.
private
=
hid
;
hidinput
->
input
.
event
=
hidinput_input_event
;
hidinput
->
input
.
open
=
hidinput_open
;
hidinput
->
input
.
close
=
hidinput_close
;
hidinput
->
input
.
name
=
hid
->
name
;
hidinput
->
input
.
phys
=
hid
->
phys
;
hidinput
->
input
.
uniq
=
hid
->
uniq
;
hidinput
->
input
.
id
.
bustype
=
BUS_USB
;
hidinput
->
input
.
id
.
vendor
=
dev
->
descriptor
.
idVendor
;
hidinput
->
input
.
id
.
product
=
dev
->
descriptor
.
idProduct
;
hidinput
->
input
.
id
.
version
=
dev
->
descriptor
.
bcdDevice
;
}
memset
(
hidinput
,
0
,
sizeof
(
*
hidinput
));
list_add_tail
(
&
hidinput
->
list
,
&
hid
->
inputs
);
hidinput
->
input
.
private
=
hid
;
hidinput
->
input
.
event
=
hidinput_input_event
;
hidinput
->
input
.
open
=
hidinput_open
;
hidinput
->
input
.
close
=
hidinput_close
;
hidinput
->
input
.
name
=
hid
->
name
;
hidinput
->
input
.
phys
=
hid
->
phys
;
hidinput
->
input
.
uniq
=
hid
->
uniq
;
hidinput
->
input
.
id
.
bustype
=
BUS_USB
;
hidinput
->
input
.
id
.
vendor
=
dev
->
descriptor
.
idVendor
;
hidinput
->
input
.
id
.
product
=
dev
->
descriptor
.
idProduct
;
hidinput
->
input
.
id
.
version
=
dev
->
descriptor
.
bcdDevice
;
}
for
(
i
=
0
;
i
<
report
->
maxfield
;
i
++
)
for
(
j
=
0
;
j
<
report
->
field
[
i
]
->
maxusage
;
j
++
)
hidinput_configure_usage
(
hidinput
,
report
->
field
[
i
],
report
->
field
[
i
]
->
usage
+
j
);
if
(
hid
->
quirks
&
HID_QUIRK_MULTI_INPUT
)
{
/* This will leave hidinput NULL, so that it
* allocates another one if we have more inputs on
* the same interface. Some devices (e.g. Happ's
* UGCI) cram a lot of unrelated inputs into the
* same interface. */
hidinput
->
fields
=
report
->
field
;
hidinput
->
maxfield
=
report
->
maxfield
;
input_register_device
(
&
hidinput
->
input
);
hidinput
=
NULL
;
}
for
(
i
=
0
;
i
<
report
->
maxfield
;
i
++
)
for
(
j
=
0
;
j
<
report
->
field
[
i
]
->
maxusage
;
j
++
)
hidinput_configure_usage
(
hidinput
,
report
->
field
[
i
],
report
->
field
[
i
]
->
usage
+
j
);
if
(
hid
->
quirks
&
HID_QUIRK_MULTI_INPUT
)
{
/* This will leave hidinput NULL, so that it
* allocates another one if we have more inputs on
* the same interface. Some devices (e.g. Happ's
* UGCI) cram a lot of unrelated inputs into the
* same interface. */
hidinput
->
report
=
report
;
input_register_device
(
&
hidinput
->
input
);
hidinput
=
NULL
;
}
list
=
list
->
next
;
list
=
list
->
next
;
}
}
/* This only gets called when we are a single-input (most of the
...
...
drivers/usb/input/hid.h
View file @
3ac7f581
...
...
@@ -324,8 +324,7 @@ struct hid_control_fifo {
struct
hid_input
{
struct
list_head
list
;
struct
hid_field
**
fields
;
int
maxfield
;
struct
hid_report
*
report
;
struct
input_dev
input
;
};
...
...
drivers/usb/serial/empeg.c
View file @
3ac7f581
...
...
@@ -460,14 +460,15 @@ static void empeg_unthrottle (struct usb_serial_port *port)
static
int
empeg_startup
(
struct
usb_serial
*
serial
)
{
int
r
;
dbg
(
"%s"
,
__FUNCTION__
);
dbg
(
"%s - Set config to 1"
,
__FUNCTION__
);
usb_set_configuration
(
serial
->
dev
,
1
);
r
=
usb_set_configuration
(
serial
->
dev
,
1
);
/* continue on with initialization */
return
0
;
return
r
;
}
...
...
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