From owner-freebsd-wireless@FreeBSD.ORG Wed Oct 19 06:51:11 2011 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1999E1065672 for ; Wed, 19 Oct 2011 06:51:11 +0000 (UTC) (envelope-from gabor@zahemszky.hu) Received: from default-smtp.integrity.hu (default-smtp.integrity.hu [212.52.165.203]) by mx1.freebsd.org (Postfix) with ESMTP id 982188FC0A for ; Wed, 19 Oct 2011 06:51:10 +0000 (UTC) Received: by smtp.integrity.hu (Postfix, from userid 10000) id BBA751346775; Wed, 19 Oct 2011 08:31:11 +0200 (CEST) Received: from webmail2.integrity.hu (mailadmin.integrity.hu [10.1.65.15]) (Authenticated sender: gabor@zahemszky.hu) by smtp.integrity.hu (Postfix) with ESMTPA id 3CC3F13460E6; Wed, 19 Oct 2011 08:31:11 +0200 (CEST) Received: from YU4I6IWg1rcGR+l3jN6A7jAsv3mKEbY3E+krlbUyCrO8hu20O7Aojg== (+D5c/RqfStZUi2G+D/mIXVMnFfaQ8OSJ) by webmail2.integrity.hu with HTTP (HTTP/1.1 POST); Wed, 19 Oct 2011 08:31:11 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Wed, 19 Oct 2011 08:31:11 +0200 From: gabor@zahemszky.hu To: , 'Akinori Furukoshi' , 'Hans Petter Selasky' Message-ID: <19c213c04750b8021717de03b0ddee2d@zahemszky.hu> X-Sender: gabor@zahemszky.hu User-Agent: Roundcube Webmail/0.5.1 X-Virus-Scanned: clamav-milter 0.97 at mail-autosubmit X-Virus-Status: Clean Cc: Subject: FreeBSD and a working but unknown wlan adapter X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Oct 2011 06:51:11 -0000 Hi! Yesterday I bought a wlan adapter for my TV. I tried it under FreeBSD, but it couldn't recognise it. So I made my homework, and here is the output. It is a "Samsung WIS09ABGN Wireless LAN Adapter". It has Ralink chipset in it, so the if_run and runfw drivers should work with it. Here is the info and the usbconfig outputs: Name: Samsung Wireless LAN Adapter WIS09ABGN (for selected 2009-2011 models of Samsung TVs & Blu-Ray Players) Model: WIS09ABGN Model Code: WIS09ABGNX/XEC it should work - and it works! - with the if_run & runfw drivers # usbconfig -d 2.2 dump_device_desc ugen2.2: <802.11 n WLAN Ralink> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x04e8 idProduct = 0x2018 bcdDevice = 0x0101 iManufacturer = 0x0001 iProduct = 0x0002 <802.11 n WLAN> iSerialNumber = 0x0003 <1.0> bNumConfigurations = 0x0001 # usbconfig -d 2.2 dump_all_config_desc ugen2.2: <802.11 n WLAN Ralink> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0035 bNumInterfaces = 0x0001 bConfigurationValue = 0x0001 iConfiguration = 0x0000 bmAttributes = 0x0080 bMaxPower = 0x00e1 Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0005 bInterfaceClass = 0x00ff bInterfaceSubClass = 0x00ff bInterfaceProtocol = 0x00ff iInterface = 0x0005 <1.0> Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 bmAttributes = 0x0002 wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 1 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0001 bmAttributes = 0x0002 wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 2 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0002 bmAttributes = 0x0002 wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 3 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0003 bmAttributes = 0x0002 wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 Endpoint 4 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0004 bmAttributes = 0x0002 wMaxPacketSize = 0x0200 bInterval = 0x0000 bRefresh = 0x0000 bSynchAddress = 0x0000 === This output is with the original if_run and runfw modules. After it, I made two small changes in the src: a) added the device info into /usr/src/sys/dev/usb/usbdevs file: product SAMSUNG WIS09ABGN 0x2018 WIS09ABGN Wireless LAN adapter b) and added it to the known list of HWs in the /usr/src/sys/dev/usb/wlan/if_run.c file: RUN_DEV(SAMSUNG, WIS09ABGN), unloading the original module, generating the new (with cd /usrs/src/sys/modules/usb/run make and loading it with: kldload runfw kldload ./if_run.ko and voila, the system has a new run0 interface. After it, created the wlan0 interface, started wpa_supplicant and dhclient, and I have a working wifi connection. usbconfig -d 2.2 - with the "modified" driver ugen2.2: <802.11 n WLAN Ralink> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON It is on FreeBSD 8.2-p4 i386. bye, Gábor Zahemszky < Gabor at Zahemszky dot HU >