git repo with Redpine changes

amit karwar amitkarwar at gmail.com
Thu Jun 1 06:54:30 PDT 2017


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



More information about the linux-snps-arc mailing list