summaryrefslogtreecommitdiff
path: root/packages/usrp
diff options
context:
space:
mode:
authorMichael Lauer <mickey@vanille-media.de>2005-07-21 14:18:55 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-07-21 14:18:55 +0000
commita061461970fc229342633011d6ea926e69470d8a (patch)
treefb10c7aabac3dd17d2c2975ca68a8f3974fa4e57 /packages/usrp
parent38d0eb00876775afecaf669d3253e89011b3dfd4 (diff)
add usrp - Support software for the Universal Software Radio Peripheral (USRP)
Patch courtesy Philip Balister
Diffstat (limited to 'packages/usrp')
-rw-r--r--packages/usrp/.mtn2git_empty0
-rw-r--r--packages/usrp/files/.mtn2git_empty0
-rw-r--r--packages/usrp/files/usb11.patch96
-rw-r--r--packages/usrp/usrp_0.8.bb31
4 files changed, 127 insertions, 0 deletions
diff --git a/packages/usrp/.mtn2git_empty b/packages/usrp/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/usrp/.mtn2git_empty
diff --git a/packages/usrp/files/.mtn2git_empty b/packages/usrp/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/usrp/files/.mtn2git_empty
diff --git a/packages/usrp/files/usb11.patch b/packages/usrp/files/usb11.patch
new file mode 100644
index 0000000000..a0f1f548a6
--- /dev/null
+++ b/packages/usrp/files/usb11.patch
@@ -0,0 +1,96 @@
+diff -ur usrp-0.8/firmware/include/fpga_regs_standard.h usrp-0.8-usb11/firmware/include/fpga_regs_standard.h
+--- usrp-0.8/firmware/include/fpga_regs_standard.h 2004-12-10 23:25:42.000000000 -0500
++++ usrp-0.8-usb11/firmware/include/fpga_regs_standard.h 2005-04-18 15:48:58.000000000 -0400
+@@ -103,6 +103,7 @@
+ // 3 chan 1 Q
+
+ #define FR_TX_MUX 39
++#define FR_USB_PACKET_SIZE 40
+
+ #endif /* INCLUDED_FPGA_REGS_STANDARD_H */
+
+diff -ur usrp-0.8/firmware/src/common/usrp_common.c usrp-0.8-usb11/firmware/src/common/usrp_common.c
+--- usrp-0.8/firmware/src/common/usrp_common.c 2004-03-28 17:28:58.000000000 -0500
++++ usrp-0.8-usb11/firmware/src/common/usrp_common.c 2005-04-17 12:10:26.000000000 -0400
+@@ -101,9 +101,13 @@
+ // set autoin length for EP6
+ // FIXME should be f(enumeration)
+
+- EP6AUTOINLENH = (512) >> 8; SYNCDELAY; // this is the length for high speed
+- EP6AUTOINLENL = (512) & 0xff; SYNCDELAY;
+-
++ if (USBCS & bmHSM) {
++ EP6AUTOINLENH = (512) >> 8; SYNCDELAY; // this is the length for high speed
++ EP6AUTOINLENL = (512) & 0xff; SYNCDELAY;
++ } else {
++ EP6AUTOINLENH = (64) >> 8; SYNCDELAY; // this is the length for full speed
++ EP6AUTOINLENL = (64) & 0xff; SYNCDELAY;
++ }
+ init_board ();
+ }
+
+diff -ur usrp-0.8/firmware/src/usrp2/usb_descriptors.a51 usrp-0.8-usb11/firmware/src/usrp2/usb_descriptors.a51
+--- usrp-0.8/firmware/src/usrp2/usb_descriptors.a51 2004-12-08 16:11:24.000000000 -0500
++++ usrp-0.8-usb11/firmware/src/usrp2/usb_descriptors.a51 2005-04-14 11:51:07.000000000 -0400
+@@ -236,7 +236,7 @@
+ .db DSCR_CONFIG
+ .db <(_full_speed_config_descr_end - _full_speed_config_descr) ; LSB
+ .db >(_full_speed_config_descr_end - _full_speed_config_descr) ; MSB
+- .db 1 ; bNumInterfaces
++ .db 3 ; bNumInterfaces
+ .db 1 ; bConfigurationValue
+ .db 0 ; iConfiguration
+ .db 0x80 | bmSELF_POWERED ; bmAttributes
+@@ -253,7 +253,53 @@
+ .db 0xff ; bInterfaceSubClass (vendor specific)
+ .db 0xff ; bInterfaceProtocol (vendor specific)
+ .db SI_COMMAND_AND_STATUS ; iInterface (description)
++
++ ;; interface descriptor 1 (transmit path, ep2 OUT BULK)
++
++ .db DSCR_INTRFC_LEN
++ .db DSCR_INTRFC
++ .db 1 ; bInterfaceNumber (zero based)
++ .db 0 ; bAlternateSetting
++ .db 1 ; bNumEndpoints
++ .db 0xff ; bInterfaceClass (vendor specific)
++ .db 0xff ; bInterfaceSubClass (vendor specific)
++ .db 0xff ; bInterfaceProtocol (vendor specific)
++ .db SI_TX_PATH ; iInterface (description)
++
++ ;; interface 1's end point
++
++ .db DSCR_ENDPNT_LEN
++ .db DSCR_ENDPNT
++ .db 0x02 ; bEndpointAddress (ep 2 OUT)
++ .db ET_BULK ; bmAttributes
++ .db <64 ; wMaxPacketSize (LSB)
++ .db >64 ; wMaxPacketSize (MSB)
++ .db 0 ; bInterval (iso only)
++
++ ;; interface descriptor 2 (receive path, ep6 IN BULK)
++
++ .db DSCR_INTRFC_LEN
++ .db DSCR_INTRFC
++ .db 2 ; bInterfaceNumber (zero based)
++ .db 0 ; bAlternateSetting
++ .db 1 ; bNumEndpoints
++ .db 0xff ; bInterfaceClass (vendor specific)
++ .db 0xff ; bInterfaceSubClass (vendor specific)
++ .db 0xff ; bInterfaceProtocol (vendor specific)
++ .db SI_RX_PATH ; iInterface (description)
++
++ ;; interface 2's end point
++
++ .db DSCR_ENDPNT_LEN
++ .db DSCR_ENDPNT
++ .db 0x86 ; bEndpointAddress (ep 6 IN)
++ .db ET_BULK ; bmAttributes
++ .db <64 ; wMaxPacketSize (LSB)
++ .db >64 ; wMaxPacketSize (MSB)
++ .db 0 ; bInterval (iso only)
++
+
++
+ _full_speed_config_descr_end:
+
diff --git a/packages/usrp/usrp_0.8.bb b/packages/usrp/usrp_0.8.bb
new file mode 100644
index 0000000000..1b9966f1ce
--- /dev/null
+++ b/packages/usrp/usrp_0.8.bb
@@ -0,0 +1,31 @@
+DESCRIPTION = "Support software for the Universal Software Radio Peripheral (USRP)"
+LICENSE = "GPL"
+MAINTAINER = "Philip Balister philip@balister.org"
+HOMEPAGE = "http://comsec.com/wiki?UniversalSoftwareRadioPeripheral"
+SECTION = "devel"
+DEPENDS = "swig-native sdcc-native libusb"
+PR = "r0"
+
+SRC_URI = "ftp://ftp.gnu.org/gnu/gnuradio/usrp-${PV}.tar.gz \
+ file://usb11.patch;patch=1"
+S = "${WORKDIR}/usrp-${PV}"
+
+inherit autotools
+
+do_stage () {
+ oe_libinstall -so -C host/lib/.libs/ libusrp ${STAGING_LIBDIR}
+
+ install -m 644 host/lib/usrp0.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_basic.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_bytesex.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_config.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_daughterboards.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_prims.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_slots.h ${STAGING_INCDIR}
+ install -m 644 host/lib/usrp_standard.h ${STAGING_INCDIR}
+
+ install -m 644 firmware/include/usrp_i2c_addr.h ${STAGING_INCDIR}
+}
+
+PACKAGES += "python-pyursp"
+FILES_python-pyursp = "${libdir}/python*"