diff src/cs/services/lls/lls_api.c @ 0:b6a5e36de839

src/cs: initial import from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 15 Jul 2018 04:39:26 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/cs/services/lls/lls_api.c	Sun Jul 15 04:39:26 2018 +0000
@@ -0,0 +1,116 @@
+/**
+ * @file   lls_api.c
+ *
+ * Implementation of Functions.
+ *
+ * @author   Laurent Sollier (l-sollier@ti.com)
+ * @version 0.1
+ */
+
+/*
+ * History:
+ *
+ *   Date          Author       Modification
+ *  ----------------------------------------
+ *  03/12/2002     L Sollier    Create
+ *
+ *
+ * (C) Copyright 2002 by Texas Instruments Incorporated, All Rights Reserved
+ */
+
+#ifndef _WINDOWS
+   #include "l1sw.cfg"
+   #include "chipset.cfg"
+#endif
+
+#include "lls/lls_api.h"
+#include "lls/lls_env.h"
+#include "lls/lls_i.h"
+
+
+/** External declaration */
+extern T_LLS_ENV_CTRL_BLK* lls_env_ctrl_blk;
+
+
+/**
+ * @name Functions implementation
+ *
+ */
+/*@{*/
+
+
+/**
+ * function: lls_switch_on
+ */
+T_RV_RET lls_switch_on(T_LLS_EQUIPMENT equipment_sort)
+{
+#if (ANLG_FAM == 2)
+   T_RV_RET ret = RV_OK;
+   UINT8 equipment_index;
+
+   /* Check if initialization has been correctly done */
+   if ( (lls_env_ctrl_blk == 0) || (lls_env_ctrl_blk->swe_is_initialized == FALSE) )
+   {
+      LLS_SEND_TRACE("LLS: Initialization is not yet done or failed", RV_TRACE_LEVEL_ERROR);
+      return RV_INTERNAL_ERR;
+   }
+
+   LLS_SEND_TRACE_PARAM("LLS: Switch ON request for equipment", equipment_sort, RV_TRACE_LEVEL_DEBUG_HIGH);
+
+   /* Retrieve index of the equipment in the table */
+   ret = lls_search_index(equipment_sort, &equipment_index);
+
+   if (ret != RV_OK)
+   {
+      LLS_SEND_TRACE("LLS: Equipment is unknow", RV_TRACE_LEVEL_ERROR);
+      return ret;
+   }
+
+   ret = lls_manage_equipment(equipment_index, SWITCH_ON);
+
+   return ret;
+
+#else
+   return RV_NOT_SUPPORTED;
+#endif
+}
+
+/**
+ * function: lls_switch_off
+ *
+ */
+T_RV_RET lls_switch_off(T_LLS_EQUIPMENT equipment_sort)
+{
+#if (ANLG_FAM == 2)
+   T_RV_RET ret = RV_OK;
+   UINT8 equipment_index;
+
+   /* Check if initialization has been correctly done */
+   if ( (lls_env_ctrl_blk == 0) || (lls_env_ctrl_blk->swe_is_initialized == FALSE) )
+   {
+      LLS_SEND_TRACE("LLS: Initialization is not yet done or failed", RV_TRACE_LEVEL_ERROR);
+      return RV_INTERNAL_ERR;
+   }
+
+   LLS_SEND_TRACE_PARAM("LLS: Switch OFF request for equipment", equipment_sort, RV_TRACE_LEVEL_DEBUG_HIGH);
+
+   /* Retrieve index of the equipment in the table */
+   ret = lls_search_index(equipment_sort, &equipment_index);
+
+   if (ret != RV_OK)
+   {
+      LLS_SEND_TRACE("LLS: Equipment is unknow", RV_TRACE_LEVEL_ERROR);
+      return ret;
+   }
+
+   ret = lls_manage_equipment(equipment_index, SWITCH_OFF);
+   
+   return ret;
+
+#else
+   return RV_NOT_SUPPORTED;
+#endif
+}
+
+
+/*@}*/