Uploaded image for project: ' AGL Development'
  1. AGL Development
  2. SPEC-1737

kingfisher radio: radio chip does not boot on flash

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major Major
    • None
    • Flounder
    • Kernel/ OS
    • None

      Hi  have a kingfisher rev M04

      The original symptom was that the radio does not start.

      After some investigation, I found out that the init of the radio chip fails:

      I narrowed down the test case to this:

      #si_init

      #si_ctl /dev/i2c-12 0x65 -b fm
      si46xx_boot_flash(0x00008000)
      si46xx_init_patch()
      si46xx_load_init()
      Loading: /lib/firmware/radio/patch.bin (5796 bytes)
      si46xx_load_init()
      si46xx_flash_load(0x00008000)
      si46xx_boot()
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(PIN_CONFIG_ENABLE, 0x03)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_TUNE_FE_CFG, 0x00)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_BAND_BOTTOM, 0x2256)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_BAND_TOP, 0x2A26)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_FREQUENCY_SPACING, 0x14)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(DIGITAL_IO_OUTPUT_SELECT, 0x8000)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(DIGITAL_IO_OUTPUT_FORMAT, 0x1040)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_RDS_CONFIG, 0x01)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_AUDIO_DE_EMPHASIS, 0x01)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      Invalid mode (no FW loaded?)

       


      The interesting thing is that boot from file works:

      m3ulcb:~# si_init

      m3ulcb:~# /usr/bin/si_ctl /dev/i2c-12 0x65 -a fm -p US -t 128 -u 128 -c 87900
      si46xx_init_mode(3)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_init_patch()
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_load_init()
      Loading: /lib/firmware/radio/fm.bif (516492 bytes)

       

       

      si46xx_boot()
      Current mode:
      FMHD is active
      si46xx_set_property(PIN_CONFIG_ENABLE, 0x03)
      si46xx_set_property(FM_TUNE_FE_CFG, 0x00)
      si46xx_set_property(FM_SEEK_BAND_BOTTOM, 0x2256)
      si46xx_set_property(FM_SEEK_BAND_TOP, 0x2A26)
      si46xx_set_property(FM_SEEK_FREQUENCY_SPACING, 0x14)
      si46xx_set_property(DIGITAL_IO_OUTPUT_SELECT, 0x8000)
      si46xx_set_property(DIGITAL_IO_OUTPUT_FORMAT, 0x1040)
      si46xx_set_property(FM_RDS_CONFIG, 0x01)
      si46xx_set_property(FM_AUDIO_DE_EMPHASIS, 0x01)
      si46xx_fm_tune_freq(87900)
      SNR: 4 dB
      RSSI: 23 dBuV
      Frequency: 87900kHz
      FREQOFF: 306
      READANTCAP: 1

      m3ulcb:~# si_ctl /dev/i2c-12 0x65 -l up
      SNR: 11 dB
      RSSI: 33 dBuV
      Frequency: 88300kHz
      FREQOFF: 304
      READANTCAP: 19
      m3ulcb:~# si_ctl /dev/i2c-12 0x65 -l up
      SNR: 12 dB
      RSSI: 30 dBuV
      Frequency: 90900kHz
      FREQOFF: 302
      READANTCAP: 19

       

       

      ... but after si_init,

      the boot from flash will fail:

      m3ulcb:~# si_ctl /dev/i2c-12 0x65 -b fm
      si46xx_boot_flash(0x00008000)
      si46xx_init_patch()
      si46xx_load_init()
      Loading: /lib/firmware/radio/patch.bin (5796 bytes)
      si46xx_load_init()
      si46xx_flash_load(0x00008000)
      si46xx_boot()
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(PIN_CONFIG_ENABLE, 0x03)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_TUNE_FE_CFG, 0x00)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_BAND_BOTTOM, 0x2256)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_BAND_TOP, 0x2A26)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_SEEK_FREQUENCY_SPACING, 0x14)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(DIGITAL_IO_OUTPUT_SELECT, 0x8000)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(DIGITAL_IO_OUTPUT_FORMAT, 0x1040)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_RDS_CONFIG, 0x01)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      si46xx_set_property(FM_AUDIO_DE_EMPHASIS, 0x01)
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      ERR_CMD
      000: c0 00 00 80
      PUP_STATE: bootloader
      Invalid mode (no FW loaded?)

       

       

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            harunobu.kurokawa Harunobu Kurokawa
            tbultel Thierry Bultel
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: