On Tue, May 23, 2017 at 10:56 PM, Alexey Brodkin <Alexey.Brodkin at synopsys.com> wrote: > Hi Amit! > > On Tue, 2017-05-23 at 17:00 +0530, amit karwar wrote: >> On Wed, May 17, 2017 at 1:41 PM, Alexey Brodkin >> <Alexey.Brodkin at synopsys.com> wrote: >> > >> > Hello Amitkumar, Prameela, >> > >> > I was lucky enough to get hold of RS9113 Evaluation Kit and now I'm trying >> > to get it working with my board via USB and SDIO interfaces but seeing issues here and there: >> > 1) In case of SDIO I see this on interface up with vanilla 4.11.1 kernel: >> > ----------------------->8-------------------- >> > # ifconfig wlan0 up >> > rsi_91x: Sending RX filter frame >> > rsi_91x: rsi_core_qos_processor: Queue number = 4 >> > rsi_91x: rsi_sdio_host_intf_write_pkt: Successfully written onto card >> > rsi_91x: rsi_set_vap_capabilities: Sending VAP capabilities frame >> > rsi_91x: rsi_mac80211_conf_tx: Conf queue 0, aifs: 2, cwmin: 15 cwmax: 1023, txop: 0 >> > rsi_91x: rsi_mac80211_conf_tx: Conf queue 1, aifs: 2, cwmin: 15 cwmax: 1023, txop: 0 >> > rsi_91x: rsi_mac80211_conf_tx: Conf queue 2, aifs: 2, cwmin: 15 cwmax: 1023, txop: 0 >> > # rsi_91x: rsi_mac80211_conf_tx: Conf queue 3, aifs: 2, cwmin: 15 cwmax: 1023, txop: 0 >> > rsi_91x: rsi_channel_change: Set channel: 2412 MHz type: 416 channel_no 1 >> > rsi_91x: rsi_set_channel: Sending scan req frame >> > rsi_91x: rsi_mac80211_config: Configuring Power >> > rsi_91x: rsi_config_power: Set tx power: 20 dBM >> > rsi_91x: rsi_send_radio_params_update: Sending Radio Params update frame >> > rsi_91x: rsi_core_qos_processor: Queue number = 4 >> > rsi_91x: rsi_interrupt_handler: Intr_status = 8 8 4 >> > rsi_91x: Pkt pending interrupt >> > rsi_91x: rsi_mgmt_pkt_recv: Msg Len: 0, Msg Type: 1 >> > rsi_91x: rsi_handle_ta_confirm_type: Invalid TA confirm pkt received >> > rsi_91x: rsi_sdio_host_intf_write_pkt: Successfully written onto card >> > rsi_91x: rsi_core_qos_processor: Queue number = 4 >> > rsi_91x: rsi_sdio_host_intf_write_pkt: Successfully written onto card >> > rsi_91x: rsi_core_qos_processor: Queue number = 4 >> > rsi_91x: rsi_interrupt_handler: Intr_status = 8 8 4 >> > rsi_91x: Pkt pending interrupt >> > rsi_91x: rsi_mgmt_pkt_recv: Msg Len: 0, Msg Type: 1 >> > rsi_91x: rsi_handle_ta_confirm_type: Invalid TA confirm pkt received >> > rsi_91x: rsi_interrupt_handler: Intr_status = 8 8 4 >> > rsi_91x: Pkt pending interrupt >> > rsi_91x: rsi_mgmt_pkt_recv: Msg Len: 321, Msg Type: 2 >> > rsi_91x: rsi_sdio_host_intf_write_pkt: Successfully written onto card >> > rsi_91x: rsi_core_qos_processor: Queue number = 255 >> > rsi_91x: rsi_core_qos_processor: No More Pkt >> > rsi_91x: rsi_interrupt_handler: Intr_status = c 8 4 >> > rsi_91x: Pkt pending interrupt >> > rsi_91x: rsi_mgmt_pkt_recv: Msg Len: 299, Msg Type: 2 >> > rsi_91x: rsi_interrupt_handler: ==> FIRMWARE Assert <== > > Any hint on what's wrong here? > > Note firmware was successfully loaded on probe a bit earlier. > And here I used a firmware blob from linux-firmware git repo, > https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/rsi_91x.fw > >> > rsi_91x: rsi_interrupt_handler: Firmware Status is 0x65 >> > rsi_91x: rsi_core_qos_processor: Queue number = 255 >> > rsi_91x: rsi_core_qos_processor: No More Pkt >> > ----------------------->8-------------------- >> > >> > and you recent patch series for nwe firmware loading I see something a bit >> > different: >> > ----------------------->8-------------------- >> > mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 25000000Hz, actual 25000000HZ div = 1) >> > mmc0: new SDIO card at address fffd >> > rsi_91x: rsi_probe: Init function called >> > rsi_91x: rsi_init_sdio_interface: Enabled the interface >> > mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0) >> > rsi_91x: rsi_setblocklength: Setting the block length >> > rsi_91x: rsi_setblocklength: Operational blk length is 256 >> > rsi_91x: rsi_init_sdio_interface: Setup card succesfully >> > rsi_91x: rsi_init_sdio_slave_regs: Initialzing SDIO read start level >> > rsi_91x: rsi_init_sdio_slave_regs: Initialzing FIFO ctrl registers >> > rsi_91x: rsi_sdio_master_access_msword: MASTER_ACCESS_MSBYTE:0x5 >> > rsi_91x: rsi_sdio_master_access_msword:MASTER_ACCESS_LSBYTE:0x41 >> > rsi_91x: rsi_sdio_read_register_multiple: Synch Cmd53 read failed >> >> Looks like sdio_readsb() failed for some reason on your platform. >> We expect firmware loading to be successful with recent patch series. > > Hm, that's interesting why stuff used to work before that patch series. > At least as you might see from above I got much further with vanilla 4.11 kernel. > > BTW where may I find new firmware blob which is mentioned in on of the patches ("rs9113_wlan_qspi.rps")? I have posted a firmware image for new firmware loading mechanism to community. There are some patches for SDIO specific driver enhancements and fixes. I am sending them in couple of days. With those patches you will be able to see wireless interface bring up, connection in open network and data path working. > >> > rsi_91x: rsi_sdio_master_reg_read: AHB register read failed >> > rsi_91x: rsi_load_firmware: REGOUT read failed >> > rsi_91x: rsi_hal_device_init: Failed to load TA instructions >> > rsi_91x: rsi_probe: Failed in device init >> > rsi_91x: rsi_91x_deinit: Performing deinit os ops >> > rsi_91x: rsi_core_qos_processor: Queue number = 255 >> > rsi_91x: rsi_core_qos_processor: No More Pkt >> > rsi_91x: rsi_probe: Failed in probe...Exiting >> > RSI-SDIO WLAN: probe of mmc0:fffd:1 failed with error 1 >> > ----------------------->8-------------------- >> > >> > 2) In case of USB I just see: >> > ----------------------->8-------------------- >> > usb 1-1: new high-speed USB device number 6 using ehci-platform >> > usb 1-1: config 1 interface 0 altsetting 0 endpoint 0x83 has an invalid bInterval 255, changing to 11 >> > usb 1-1: New USB device found, idVendor=1618, idProduct=9113 >> > usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 >> > usb 1-1: Product: Wireless USB-CDC Network Module >> > usb 1-1: Manufacturer: Redpine Signals, Inc. >> > cdc_acm 1-1:1.0: ttyACM0: USB ACM device >> > ----------------------->8-------------------- >> > >> > I noticed that there're quite some patches floating on linux-wireless mailing list which >> > were not yet merged in upstream kernel (even in linux-next or wireless-testing). >> > >> > So at this point I'm not really sure what could be a safe baseline for my experiments: >> > - if existing vanilla say 4.11 kernel is good enough and things that doesn't work are caused >> > by other problems not related to Redpine module (that would be strange because both USB abd SD-card >> > slot are proven to work pretty well with other devices) >> > - if I need an arbitrary set of patches to get things up and running etc >> > >> > That said if there's a public git repo which contains everything required for Redpine module to >> > work [preferably based on the latest kernel sources] I'd like to get a reference to it. >> > >> > Any hints here are much appreciated. >> >> We don't have a public git repo maintained. We have 2 patchsets ready >> for submission. We are working on code cleanup for other pending >> changes. I would suggest you to wait till these patches are posted. > > Ok, will do. But please add me in Cc list in your upcoming patches as I'm very interested > in getting Redpine module working on our new board and will be happy to review them as well as test on > my platform. > Sure. I will add you in CC for those patches. Regards, Amitkumar Karwar