Ejemplo n.º 1
0
u8 Write_ReadWriteStatusUncryptedVolume_u8 (u8 NewStatus_u8)
{
  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  StickConfiguration_st.ReadWriteFlagUncryptedVolume_u8 = NewStatus_u8;

  WriteStickConfigurationToUserPage ();

  return (TRUE);
}
Ejemplo n.º 2
0
u8 ClearStickKeysNotInitatedToFlash (void)
{
    // If configuration not found then init it
    if (FALSE == ReadStickConfigurationFromUserPage ())
    {
        InitStickConfigurationToUserPage_u8 ();
    }

    // CI_LocalPrintf ("Clear: Stick keys not initiated\r\n");

    StickConfiguration_st.StickKeysNotInitiated_u8 = FALSE;

    WriteStickConfigurationToUserPage ();

    return (TRUE);
}
Ejemplo n.º 3
0
u8 SetSdCardNotFilledWithRandomCharsToFlash (void)
{
  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  CI_LocalPrintf ("Set new SD card *** not *** filled with random chars\r\n");

  StickConfiguration_st.SDFillWithRandomChars_u8 &= 0xFE;     // Clear the "card with random chars filled"  bit

  WriteStickConfigurationToUserPage ();

  return (TRUE);
}
Ejemplo n.º 4
0
u8 SetSdCardFilledWithRandomCharsToFlash (void)
{
  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  CI_LocalPrintf ("Set new SD card filled with random chars\r\n");

  StickConfiguration_st.SDFillWithRandomChars_u8 |= 0x01;     // Set the "SD card filled with randoms"  bit

  WriteStickConfigurationToUserPage ();

  return (TRUE);
}
Ejemplo n.º 5
0
u8 ClearNewSdCardFoundToFlash (void)
{
  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  CI_LocalPrintf ("Clear new SD card found\r\n");

  StickConfiguration_st.NewSDCardFound_u8 &= 0xFE;     // Clear the "new SD card found"  bit

  WriteStickConfigurationToUserPage ();

  return (TRUE);
}
Ejemplo n.º 6
0
u8 CheckForNewFirmwareVersion (void)
{
  static u8 UpdateFlag_u8 = FALSE;
  u8 update_u8;

  if (TRUE == UpdateFlag_u8)
  {
    return (TRUE);
  }

  UpdateFlag_u8 = TRUE;   // Run only once

  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  update_u8 = FALSE;
  if (VERSION_MAJOR != StickConfiguration_st.VersionInfo_au8[0])
  {
    update_u8 = TRUE;
  }

  if (VERSION_MINOR != StickConfiguration_st.VersionInfo_au8[1])
  {
    update_u8 = TRUE;
  }

/*
  StickConfiguration_st.VersionInfo_au8[2]              = 0;               // Build number not used
  StickConfiguration_st.VersionInfo_au8[3]              = 0;               // Build number not used
*/

  if (TRUE == update_u8)
  {
    WriteStickConfigurationToUserPage ();
  }

  return (TRUE);
}
Ejemplo n.º 7
0
u8 WriteNewSdCardFoundToFlash (u32 *SdId_u32)
{
  // If configuration not found then init it
  if (FALSE == ReadStickConfigurationFromUserPage ())
  {
    InitStickConfigurationToUserPage_u8 ();
  }

  CI_LocalPrintf ("*** New SD card found ***  Serial number 0x%08x\r\n",*SdId_u32);

  WriteSdId (SdId_u32);

  StickConfiguration_st.NewSDCardFound_u8 |= 0x01;            // Bit 0 = new card found
//  StickConfiguration_st.NewSDCardFound_u8 += 2;               // add change counter +1

  StickConfiguration_st.SDFillWithRandomChars_u8 &= 0xFE;     // Clear the "card with random chars filled"  bit

  WriteStickConfigurationToUserPage ();

  return (TRUE);
}
Ejemplo n.º 8
0
u8 InitStickConfigurationToUserPage_u8 (void)
{
    StickConfiguration_st.MagicNumber_StickConfig_u16 = MAGIC_NUMBER_STICK20_CONFIG;
    StickConfiguration_st.ReadWriteFlagUncryptedVolume_u8 = READ_WRITE_ACTIVE;
    StickConfiguration_st.ReadWriteFlagCryptedVolume_u8 = READ_WRITE_ACTIVE;
    StickConfiguration_st.ReadWriteFlagHiddenVolume_u8 = READ_WRITE_ACTIVE;
    StickConfiguration_st.FirmwareLocked_u8 = 0;
    StickConfiguration_st.ActiveSD_CardID_u32 = 0;  // todo: check endian
    // StickConfiguration_st.VersionInfo_au8[0] = VERSION_MAJOR;
    // StickConfiguration_st.VersionInfo_au8[1] = VERSION_MINOR;
    StickConfiguration_st.VersionInfo_au8[2] = 0;   // Build number not used
    StickConfiguration_st.VersionInfo_au8[3] = 0;   // Build number not used
    StickConfiguration_st.NewSDCardFound_u8 = 0;
    StickConfiguration_st.SDFillWithRandomChars_u8 = FALSE;
    StickConfiguration_st.VolumeActiceFlag_u8 = 0;
    StickConfiguration_st.NewSmartCardFound_u8 = 0;
    StickConfiguration_st.ActiveSmartCardID_u32 = 0;
    StickConfiguration_st.StickKeysNotInitiated_u8 = TRUE;

    WriteStickConfigurationToUserPage ();
    return (TRUE);
}