On Thu, Nov 8, 2012 at 10:27 AM, Muhammad Minhazul Haque <mdminhazulhaque@xxxxxxxxx> wrote: > Mr. Kevin and everyone, > > There was a serious mistake in the previous message. I forgot to > attach the patch. Please ignore it. I am posting it again. > > I was never reported for that product id 0x0132. Yet you can continue > support for it if it is rare. In the meantime, we can add more devices > to the header and add those names to "usb_device_id" table in > "InterfaceInit.c". I added a new product string > "BCM_USB_PRODUCT_ID_ZTE_326" and also modified the device id table. > > Again, I removed product if 0xbccd because Beceem, ZTE, Sprint use > this id for the block device containing device driver. Again, this is > always switched to base product id via udev. Here is my dmesg output > when udev is turned off. > ===== > root@inspiron:~# dmesg -c > [24449.439134] cdrom: issuing MRW background format suspend > [24459.102669] usb 2-1.2: new high-speed USB device number 11 using ehci_hcd > [24459.336258] scsi11 : usb-storage 2-1.2:1.0 > [24460.334906] scsi 11:0:0:0: CD-ROM BCM-CD V 01.02 01.01 > 1.13 PQ: 0 ANSI: 2 > [24460.336721] sr0: scsi3-mmc drive: 0x/0x xa/form2 tray > [24460.336971] sr 11:0:0:0: Attached scsi CD-ROM sr0 > [24460.337167] sr 11:0:0:0: Attached scsi generic sg1 type 5 > > root@inspiron:~# mount /dev/sr1 /media/tmp > mount: block device /dev/sr1 is write-protected, mounting read-only > ===== > > I did build after these changes and probed the module. It works > perfectly. I also tested 0x0172 and 0x0173. No error is reported. So I > assure that these products are valid. Not sure about 0x0132. Here is > the modinfo output. > ===== > license: GPL > version: 5.2.45 > description: Beceem Communications Inc. WiMAX driver > srcversion: 6968AC3635745331FE6470D > alias: usb:v19D2p0132d*dc*dsc*dp*ic*isc*ip* > alias: usb:v19D2p0007d*dc*dsc*dp*ic*isc*ip* > alias: usb:v19D2p0173d*dc*dsc*dp*ic*isc*ip* > alias: usb:v19D2p0172d*dc*dsc*dp*ic*isc*ip* > alias: usb:v0489pE017d*dc*dsc*dp*ic*isc*ip* > alias: usb:v198Fp015Ed*dc*dsc*dp*ic*isc*ip* > alias: usb:v198Fp0300d*dc*dsc*dp*ic*isc*ip* > alias: usb:v198Fp0220d*dc*dsc*dp*ic*isc*ip* > alias: usb:v198Fp0210d*dc*dsc*dp*ic*isc*ip* > depends: > vermagic: 3.2.0-32-generic-pae SMP mod_unload modversions 686 > parm: debug:Debug level (0=none,...,16=all) (uint) > ===== > > This patch is currently against a linux 3.7-rc4 kernel, for the x86 > architecture. > > The first patch is > ===== > diff --git a/bcm.orig/InterfaceInit.c b/bcm/InterfaceInit.c > index b05f5f7..7da666e 100644 > --- a/bcm.orig/InterfaceInit.c > +++ b/bcm/InterfaceInit.c > @@ -4,11 +4,12 @@ static struct usb_device_id InterfaceUsbtable[] = { > { USB_DEVICE(BCM_USB_VENDOR_ID_T3, BCM_USB_PRODUCT_ID_T3) }, > { USB_DEVICE(BCM_USB_VENDOR_ID_T3, BCM_USB_PRODUCT_ID_T3B) }, > { USB_DEVICE(BCM_USB_VENDOR_ID_T3, BCM_USB_PRODUCT_ID_T3L) }, > - { USB_DEVICE(BCM_USB_VENDOR_ID_T3, BCM_USB_PRODUCT_ID_SM250) }, > - { USB_DEVICE(BCM_USB_VENDOR_ID_ZTE, BCM_USB_PRODUCT_ID_226) }, > + { USB_DEVICE(BCM_USB_VENDOR_ID_T3, BCM_USB_PRODUCT_ID_SYM) }, > { USB_DEVICE(BCM_USB_VENDOR_ID_FOXCONN, BCM_USB_PRODUCT_ID_1901) }, > + { USB_DEVICE(BCM_USB_VENDOR_ID_ZTE, BCM_USB_PRODUCT_ID_226) }, > { USB_DEVICE(BCM_USB_VENDOR_ID_ZTE, BCM_USB_PRODUCT_ID_ZTE_TU25) }, > { USB_DEVICE(BCM_USB_VENDOR_ID_ZTE, BCM_USB_PRODUCT_ID_ZTE_226) }, > + { USB_DEVICE(BCM_USB_VENDOR_ID_ZTE, BCM_USB_PRODUCT_ID_ZTE_326) }, > { } > }; > MODULE_DEVICE_TABLE(usb, InterfaceUsbtable); > ===== > > And the second patch is > ===== > diff --git a/bcm.orig/InterfaceInit.h b/bcm/InterfaceInit.h > index 866924e..1486608 100644 > --- a/bcm.orig/InterfaceInit.h > +++ b/bcm/InterfaceInit.h > @@ -8,11 +8,11 @@ > #define BCM_USB_PRODUCT_ID_T3 0x0300 > #define BCM_USB_PRODUCT_ID_T3B 0x0210 > #define BCM_USB_PRODUCT_ID_T3L 0x0220 > -#define BCM_USB_PRODUCT_ID_SM250 0xbccd > #define BCM_USB_PRODUCT_ID_SYM 0x15E > -#define BCM_USB_PRODUCT_ID_1901 0xe017 > +#define BCM_USB_PRODUCT_ID_1901 0xe017 /* Sprint U1901 */ > #define BCM_USB_PRODUCT_ID_226 0x0132 /* not sure if this is valid */ > #define BCM_USB_PRODUCT_ID_ZTE_226 0x172 > +#define BCM_USB_PRODUCT_ID_ZTE_326 0x173 /* ZTE AX326 */ > #define BCM_USB_PRODUCT_ID_ZTE_TU25 0x0007 > > #define BCM_USB_MINOR_BASE 192 > ===== > > diffstat for this patch is: > ===== > {bcm => bcm.orig}/InterfaceInit.c | 5 ++--- > {bcm => bcm.orig}/InterfaceInit.h | 4 ++-- > 2 files changed, 4 insertions(+), 5 deletions(-) > ===== Thanks for these patches. I see the changes you have made a they look good, however I am not able to apply these patches. Can you resubmit them in the correct format? > To use the patch, remove module if it is probed. Build, and then probe. > > About the TODO: I currently have a solution to make the device work. > It is not from Intel's wimax stack. I used Beceem's API. Can we > discuss on this? Sure, lets work together to get this device working. It should be working correctly on 32 bit machines, however there is still an outstanding bug that I am trying to track down on 64 bit machines. Have you noticed this also? Thanks, Kevin _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel