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
e67930c8
Commit
e67930c8
authored
Nov 25, 2002
by
Greg Kroah-Hartman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] USB serial: move the ezusb functions into their own file.
parent
385920b9
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
74 additions
and
62 deletions
+74
-62
drivers/usb/serial/Kconfig
drivers/usb/serial/Kconfig
+5
-0
drivers/usb/serial/Makefile
drivers/usb/serial/Makefile
+2
-1
drivers/usb/serial/ezusb.c
drivers/usb/serial/ezusb.c
+67
-0
drivers/usb/serial/usb-serial.c
drivers/usb/serial/usb-serial.c
+0
-45
drivers/usb/serial/usb-serial.h
drivers/usb/serial/usb-serial.h
+0
-16
No files found.
drivers/usb/serial/Kconfig
View file @
e67930c8
...
...
@@ -400,5 +400,10 @@ config USB_SERIAL_OMNINET
The module will be called omninet.o. If you want to compile it as a
module, say M here and read <file:Documentation/modules.txt>.
config USB_EZUSB
bool
depends on USB_SERIAL_KEYSPAN_PDA || USB_SERIAL_XIRCOM || USB_SERIAL_KEYSPAN || USB_SERIAL_WHITEHEAT
default y
endmenu
drivers/usb/serial/Makefile
View file @
e67930c8
...
...
@@ -7,6 +7,7 @@
obj-$(CONFIG_USB_SERIAL)
+=
usbserial.o
usbserial-obj-$(CONFIG_USB_SERIAL_CONSOLE)
+=
console.o
usbserial-obj-$(CONFIG_USB_EZUSB)
+=
ezusb.o
obj-$(CONFIG_USB_SERIAL_VISOR)
+=
visor.o
obj-$(CONFIG_USB_SERIAL_IPAQ)
+=
ipaq.o
...
...
@@ -29,7 +30,7 @@ obj-$(CONFIG_USB_SERIAL_KLSI) += kl5kusb105.o
obj-$(CONFIG_USB_SERIAL_SAFE)
+=
safe_serial.o
# Objects that export symbols.
export-objs
:=
usb-serial.o
export-objs
:=
usb-serial.o
ezusb.o
usbserial-objs
:=
usb-serial.o
$
(
usbserial-obj-y
)
...
...
drivers/usb/serial/ezusb.c
0 → 100644
View file @
e67930c8
/*
* EZ-USB specific functions used by some of the USB to Serial drivers.
*
* Copyright (C) 1999 - 2002 Greg Kroah-Hartman (greg@kroah.com)
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version
* 2 as published by the Free Software Foundation.
*/
#include <linux/config.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/tty.h>
#include <linux/module.h>
#include <linux/usb.h>
#ifdef CONFIG_USB_SERIAL_DEBUG
static
int
debug
=
1
;
#else
static
int
debug
;
#endif
#include "usb-serial.h"
/* EZ-USB Control and Status Register. Bit 0 controls 8051 reset */
#define CPUCS_REG 0x7F92
int
ezusb_writememory
(
struct
usb_serial
*
serial
,
int
address
,
unsigned
char
*
data
,
int
length
,
__u8
bRequest
)
{
int
result
;
unsigned
char
*
transfer_buffer
;
/* dbg("ezusb_writememory %x, %d", address, length); */
if
(
!
serial
->
dev
)
{
dbg
(
"%s - no physical device present, failing."
,
__FUNCTION__
);
return
-
ENODEV
;
}
transfer_buffer
=
kmalloc
(
length
,
GFP_KERNEL
);
if
(
!
transfer_buffer
)
{
err
(
"%s - kmalloc(%d) failed."
,
__FUNCTION__
,
length
);
return
-
ENOMEM
;
}
memcpy
(
transfer_buffer
,
data
,
length
);
result
=
usb_control_msg
(
serial
->
dev
,
usb_sndctrlpipe
(
serial
->
dev
,
0
),
bRequest
,
0x40
,
address
,
0
,
transfer_buffer
,
length
,
3
*
HZ
);
kfree
(
transfer_buffer
);
return
result
;
}
int
ezusb_set_reset
(
struct
usb_serial
*
serial
,
unsigned
char
reset_bit
)
{
int
response
;
dbg
(
"%s - %d"
,
__FUNCTION__
,
reset_bit
);
response
=
ezusb_writememory
(
serial
,
CPUCS_REG
,
&
reset_bit
,
1
,
0xa0
);
if
(
response
<
0
)
{
err
(
"%s- %d failed"
,
__FUNCTION__
,
reset_bit
);
}
return
response
;
}
EXPORT_SYMBOL
(
ezusb_writememory
);
EXPORT_SYMBOL
(
ezusb_set_reset
);
drivers/usb/serial/usb-serial.c
View file @
e67930c8
...
...
@@ -488,45 +488,6 @@ static void return_serial (struct usb_serial *serial)
return
;
}
#ifdef USES_EZUSB_FUNCTIONS
/* EZ-USB Control and Status Register. Bit 0 controls 8051 reset */
#define CPUCS_REG 0x7F92
int
ezusb_writememory
(
struct
usb_serial
*
serial
,
int
address
,
unsigned
char
*
data
,
int
length
,
__u8
bRequest
)
{
int
result
;
unsigned
char
*
transfer_buffer
;
/* dbg("ezusb_writememory %x, %d", address, length); */
if
(
!
serial
->
dev
)
{
dbg
(
"%s - no physical device present, failing."
,
__FUNCTION__
);
return
-
ENODEV
;
}
transfer_buffer
=
kmalloc
(
length
,
GFP_KERNEL
);
if
(
!
transfer_buffer
)
{
err
(
"%s - kmalloc(%d) failed."
,
__FUNCTION__
,
length
);
return
-
ENOMEM
;
}
memcpy
(
transfer_buffer
,
data
,
length
);
result
=
usb_control_msg
(
serial
->
dev
,
usb_sndctrlpipe
(
serial
->
dev
,
0
),
bRequest
,
0x40
,
address
,
0
,
transfer_buffer
,
length
,
3
*
HZ
);
kfree
(
transfer_buffer
);
return
result
;
}
int
ezusb_set_reset
(
struct
usb_serial
*
serial
,
unsigned
char
reset_bit
)
{
int
response
;
dbg
(
"%s - %d"
,
__FUNCTION__
,
reset_bit
);
response
=
ezusb_writememory
(
serial
,
CPUCS_REG
,
&
reset_bit
,
1
,
0xa0
);
if
(
response
<
0
)
{
err
(
"%s- %d failed"
,
__FUNCTION__
,
reset_bit
);
}
return
response
;
}
#endif
/* USES_EZUSB_FUNCTIONS */
/*****************************************************************************
* Driver tty interface functions
*****************************************************************************/
...
...
@@ -1699,12 +1660,6 @@ EXPORT_SYMBOL(usb_serial_deregister);
EXPORT_SYMBOL
(
usb_serial_probe
);
EXPORT_SYMBOL
(
usb_serial_disconnect
);
EXPORT_SYMBOL
(
usb_serial_port_softint
);
#ifdef USES_EZUSB_FUNCTIONS
EXPORT_SYMBOL
(
ezusb_writememory
);
EXPORT_SYMBOL
(
ezusb_set_reset
);
#endif
/* Module information */
...
...
drivers/usb/serial/usb-serial.h
View file @
e67930c8
...
...
@@ -237,24 +237,8 @@ extern void usb_serial_port_softint(void *private);
extern
int
usb_serial_probe
(
struct
usb_interface
*
iface
,
const
struct
usb_device_id
*
id
);
extern
void
usb_serial_disconnect
(
struct
usb_interface
*
iface
);
/* determine if we should include the EzUSB loader functions */
#undef USES_EZUSB_FUNCTIONS
#if defined(CONFIG_USB_SERIAL_KEYSPAN_PDA) || defined(CONFIG_USB_SERIAL_KEYSPAN_PDA_MODULE)
#define USES_EZUSB_FUNCTIONS
#endif
#if defined(CONFIG_USB_SERIAL_XIRCOM) || defined(CONFIG_USB_SERIAL_XIRCOM_MODULE)
#define USES_EZUSB_FUNCTIONS
#endif
#if defined(CONFIG_USB_SERIAL_KEYSPAN) || defined(CONFIG_USB_SERIAL_KEYSPAN_MODULE)
#define USES_EZUSB_FUNCTIONS
#endif
#if defined(CONFIG_USB_SERIAL_WHITEHEAT) || defined(CONFIG_USB_SERIAL_WHITEHEAT_MODULE)
#define USES_EZUSB_FUNCTIONS
#endif
#ifdef USES_EZUSB_FUNCTIONS
extern
int
ezusb_writememory
(
struct
usb_serial
*
serial
,
int
address
,
unsigned
char
*
data
,
int
length
,
__u8
bRequest
);
extern
int
ezusb_set_reset
(
struct
usb_serial
*
serial
,
unsigned
char
reset_bit
);
#endif
/* USB Serial console functions */
#ifdef CONFIG_USB_SERIAL_CONSOLE
...
...
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