Browse Source

Use goahead-3.6.5 replace goahead-5.1.0

zhangbo 5 years ago
parent
commit
b1192753ed
100 changed files with 5893 additions and 1260 deletions
  1. 1 1
      .gitignore
  2. 11 2
      app/Makefile
  3. 8 7
      app/bmc/Makefile
  4. BIN
      app/bmc/bmc_app
  5. 39 34
      app/bmc/uds/UDSIfc.c
  6. 1 1
      app/common_include/com_IPMIDefs.h
  7. 2 3
      app/driver/ADC/Makefile
  8. 1 4
      app/driver/FMC/Makefile
  9. 1 3
      app/driver/GPIO/.gpio.ko.cmd
  10. 1 3
      app/driver/GPIO_I2C/Makefile
  11. 1 4
      app/driver/I2C/.i2c.ko.cmd
  12. 0 1
      app/driver/I2C/Module.symvers
  13. 1 2
      app/driver/Platform/Makefile
  14. 1 3
      app/driver/SPI/.spi.ko.cmd
  15. 1 2
      app/driver/SPI/Module.symvers
  16. 1 4
      app/goahead-3.6.5/CONTRIBUTING.md
  17. 7 0
      app/goahead-3.6.5/Jimbo_Note.txt
  18. 41 0
      app/goahead-3.6.5/LICENSE.md
  19. 27 30
      app/goahead-3.6.5/Makefile
  20. 69 0
      app/goahead-3.6.5/README.md
  21. 0 0
      app/goahead-3.6.5/build/linux-arm-static/.install-certs-modified
  22. 1 0
      app/goahead-3.6.5/build/linux-arm-static/.makeflags
  23. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/ca.crt
  24. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/ca.key
  25. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/ec.crt
  26. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/ec.key
  27. BIN
      app/goahead-3.6.5/build/linux-arm-static/bin/goahead
  28. BIN
      app/goahead-3.6.5/build/linux-arm-static/bin/gopass
  29. BIN
      app/goahead-3.6.5/build/linux-arm-static/bin/libgo.a
  30. BIN
      app/goahead-3.6.5/build/linux-arm-static/bin/libgoahead-mbedtls.a
  31. BIN
      app/goahead-3.6.5/build/linux-arm-static/bin/libmbedtls.a
  32. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/roots.crt
  33. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/self.crt
  34. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/self.key
  35. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/test.crt
  36. 0 0
      app/goahead-3.6.5/build/linux-arm-static/bin/test.key
  37. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/ResultUtils.h
  38. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/cJSON.h
  39. 282 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_BmcType.h
  40. 565 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMIDefs.h
  41. 105 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_App.h
  42. 234 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_AppDevice+.h
  43. 617 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_AppDevice.h
  44. 41 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Chassis.h
  45. 411 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_ChassisDevice.h
  46. 301 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_FRU.h
  47. 307 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_IPM.h
  48. 68 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_IPMB.h
  49. 187 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_PEF.h
  50. 183 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SDR.h
  51. 447 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SDRRecord.h
  52. 323 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SEL.h
  53. 383 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Sensor.h
  54. 55 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SensorEvent.h
  55. 64 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Storage.h
  56. 7 0
      app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Storlead.h
  57. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/config.h
  58. 3 0
      app/goahead-3.6.5/build/linux-arm-static/inc/dashboard.h
  59. 2 0
      app/goahead-3.6.5/build/linux-arm-static/inc/embedtls.h
  60. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/fan.h
  61. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/fru.h
  62. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/fw_update.h
  63. 118 133
      app/goahead-3.6.5/build/linux-arm-static/inc/goahead.h
  64. 16 16
      app/goahead-3.6.5/build/linux-arm-static/inc/js.h
  65. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi.h
  66. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_AppDevice.h
  67. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_ChassisDevice.h
  68. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_IPM.h
  69. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_PEF.h
  70. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_StorDevice.h
  71. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_errorcodes.h
  72. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_fru.h
  73. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_rmcp.h
  74. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_sdr.h
  75. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_sensor.h
  76. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_session.h
  77. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_storlead_OEM.h
  78. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_struct.h
  79. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_usermgmt.h
  80. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/libsensor.h
  81. 71 489
      app/goahead-3.6.5/build/linux-arm-static/inc/mbedtls.h
  82. 393 0
      app/goahead-3.6.5/build/linux-arm-static/inc/me.h
  83. 47 62
      app/goahead-3.6.5/build/linux-arm-static/inc/osdep.h
  84. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/remote_control.h
  85. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/sel.h
  86. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/sensor_helpers.h
  87. 0 0
      app/goahead-3.6.5/build/linux-arm-static/inc/server_health.h
  88. 0 0
      app/goahead-3.6.5/configure
  89. 0 0
      app/goahead-3.6.5/doc/api/api.css
  90. 210 210
      app/goahead-3.6.5/doc/api/goahead.dtags
  91. 237 245
      app/goahead-3.6.5/doc/api/goahead.html
  92. 0 0
      app/goahead-3.6.5/doc/api/goahead.tags
  93. 1 1
      app/goahead-3.6.5/doc/contents/README.TXT
  94. 0 0
      app/goahead-3.6.5/doc/contents/css/all.css.less
  95. 0 0
      app/goahead-3.6.5/doc/contents/css/api.css
  96. 0 0
      app/goahead-3.6.5/doc/contents/css/app.less
  97. 0 0
      app/goahead-3.6.5/doc/contents/css/override.less
  98. 0 0
      app/goahead-3.6.5/doc/contents/css/theme.less
  99. 0 0
      app/goahead-3.6.5/doc/contents/developers/authstore.html
  100. 0 0
      app/goahead-3.6.5/doc/contents/developers/embedding.html

+ 1 - 1
.gitignore

@@ -1,4 +1,4 @@
-app/goahead-5.1.0/build/
+app/goahead-3.6.5/build/
 *.uImage
 *.o
 *.kernel.STMDISCO

+ 11 - 2
app/Makefile

@@ -9,8 +9,17 @@ all	:
 	
 	# make apps
 	make -C ./bmc
-	make -C ./goahead-5.1.0
+	make -C ./goahead-3.6.5
 	make -C ./test_app
 	#make -C ./ipmitool-1.8.18
 clean	: 
-	rm -rf *.o
+	make -C ./goahead-3.6.5 clean
+	make -C ./bmc clean
+	make -C ./test_app clean
+
+	make -C ./driver/Platform clean
+	make -C ./driver/GPIO clean
+	make -C ./driver/FMC clean
+	make -C ./driver/ADC clean
+	make -C ./driver/I2C clean
+	make -C ./driver/SPI clean

+ 8 - 7
app/bmc/Makefile

@@ -116,15 +116,16 @@ CFLAGS	+= -I ./encryption
 
 
 
-#object
-OBJS	= $(SRC:%.o=%.c)
-
-$(EXEC): $(OBJS)
+$(EXEC): $(SRC)
 	$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBS) -lpthread
-	rm -f *.o
+
+
+
+#object
+OBJS	:= $(SRC:%.c=%.o)
 
 clean:
-	OBJS	= $(SRC:%.o=%.c)
-	rm -rf $(EXEC) $(OBJS)
+	rm -f $(EXEC) $(OBJS)
+	rm -f *.gdb
 
 

BIN
app/bmc/bmc_app


+ 39 - 34
app/bmc/uds/UDSIfc.c

@@ -149,14 +149,19 @@ void *UDSIfcTask(void* pArg)
 **/
 int InitUnixDomainSocket(void)
 {
-    struct sockaddr_un local;
-   
-    memset(&local,0,sizeof(local));
+    struct sockaddr_un server_addr;
 
-    local.sun_family = AF_UNIX;
-    strncpy(local.sun_path,UDS_SOCKET_PATH,strlen(UDS_SOCKET_PATH));
+    bzero(&server_addr, sizeof(server_addr));
+    server_addr.sun_family = AF_UNIX;
+    strcpy(server_addr.sun_path,UDS_SOCKET_PATH);
+    int len = sizeof(server_addr.sun_family)+strlen(server_addr.sun_path);
 
- //   unlink(local.sun_path);
+    if(-1 != access(UDS_SOCKET_PATH, F_OK))
+    {
+        remove(UDS_SOCKET_PATH);
+    }
+
+    unlink(server_addr.sun_path);
 
     gUDSSocket=socket(AF_UNIX,SOCK_STREAM,0);
     if(UDS_FAILURE == gUDSSocket)
@@ -165,13 +170,11 @@ int InitUnixDomainSocket(void)
         return UDS_FAILURE;
     }
 
-    if(-1 != access(UDS_SOCKET_PATH, F_OK))
-    {
-        remove(UDS_SOCKET_PATH);
-    }
+    int opt = 1;
+    setsockopt(gUDSSocket, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt));
 
     /* Bind pBMCInfo->UDSConfig.UDSSocket to the particular socket file in the path*/
-    if (UDS_FAILURE == bind(gUDSSocket,(struct sockaddr *)&local,sizeof(local)))
+    if (UDS_FAILURE == bind(gUDSSocket,(struct sockaddr *)&server_addr,len))
     {
         printf("UDSIfc.c : Error binding  UNIX Domain Socket, %d, %s\n", errno, strerror(errno));
         return UDS_FAILURE;
@@ -182,13 +185,13 @@ int InitUnixDomainSocket(void)
         return UDS_FAILURE;
     }
     
-    /* Changing the Permission of other user to
-     * avoid permission denied problems while
-     * client tries to connect to server */
-    if(UDS_SUCCESS > chmod(local.sun_path,S_IRWXU|S_IRGRP|S_IXGRP|S_IRWXO))
-    {
-        printf("UDSIfc.c : Cannot Change the permission of Unix Domain Socket\n");
-    }
+    // /* Changing the Permission of other user to
+    //  * avoid permission denied problems while
+    //  * client tries to connect to server */
+    // if(UDS_SUCCESS > chmod(local.sun_path,S_IRWXU|S_IRGRP|S_IXGRP|S_IRWXO))
+    // {
+    //     printf("UDSIfc.c : Cannot Change the permission of Unix Domain Socket\n");
+    // }
 
     return UDS_SUCCESS;
 }
@@ -204,7 +207,6 @@ void *RecvUDSPkt(void *pArg)
     struct timeval Timeout;
     struct sockaddr_un local;
     int RetVal,max,Index = 0;
-    unsigned int locallen;
     int UDSSocket=-1;
     prctl(PR_SET_NAME,__FUNCTION__,0,0,0);
     int curThreadIndex = 0;
@@ -214,7 +216,7 @@ void *RecvUDSPkt(void *pArg)
 
     memset(&local,0,sizeof(local));
 
-    locallen=sizeof(local);
+    socklen_t locallen = sizeof(local);
 
     while(TRUE)
     {
@@ -281,42 +283,45 @@ int ReadUDSData(MsgPkt_T *MsgPkt,int Socket )
     uint8_t* pData =(uint8_t *) & MsgPkt->Data[0];
     uint16_t RecvdLen = 0,RemLen = 0,Len = 0;
     unsigned int SourceLen = 0;
-    struct sockaddr_un Source;
     IPMIUDSMsg_T *pIPMIUDSMsg = (IPMIUDSMsg_T *)&pData[0];
-    SourceLen = sizeof(Source);
 
     while (RecvdLen < sizeof(IPMIUDSMsg_T))
     {
-        Len = recvfrom (Socket, &pData[RecvdLen],sizeof(IPMIUDSMsg_T),0,(struct sockaddr *)&Source,&SourceLen);
+        Len = recv (Socket, &pData[RecvdLen],sizeof(IPMIUDSMsg_T),0);
         if (Len <= 0)
         {
             return UDS_FAILURE;
         }
         
-        // int i;
-        // printf("---> server recv1 %#x: ", Len);
-        // for(i=0;i<Len;i++)
-        //     printf("%#x ", pData[RecvdLen+i]);
-        // printf("\n");
+        int i;
+        printf("---> server recv1 %#x: ", Len);
+        for(i=0;i<Len;i++)
+            printf("%#x ", pData[RecvdLen+i]);
+        printf("\n");
 
         RecvdLen += Len;
     }
 
+    if((pIPMIUDSMsg->IPMIMsgLen > MSG_PAYLOAD_SIZE) || (pIPMIUDSMsg->IPMIMsgLen < sizeof(IPMIUDSMsg_T)))
+    {
+        printf("Invalid UDS message len %d\n", pIPMIUDSMsg->IPMIMsgLen);
+        return UDS_FAILURE;
+    }
     RemLen = pIPMIUDSMsg->IPMIMsgLen-RecvdLen;
 
     while(RemLen>0)
     {
-        Len = recvfrom (Socket,&pData[RecvdLen],pIPMIUDSMsg->IPMIMsgLen-RecvdLen,0,(struct sockaddr *)&Source,&SourceLen);
+        Len = recv(Socket,&pData[RecvdLen],pIPMIUDSMsg->IPMIMsgLen-RecvdLen,0);
         if(Len <= 0)
         {
             return UDS_FAILURE;
         }
 
-        // int i;
-        // printf("---> server recv2 %#x: ", Len);
-        // for(i=0;i<Len;i++)
-        //     printf("%#x ", pData[RecvdLen+i]);
-        // printf("\n");
+        int i;
+        printf("---> server recv2 %#x: ", Len);
+        for(i=0;i<Len;i++)
+            printf("%#x ", pData[RecvdLen+i]);
+        printf("\n");
 
         RecvdLen += Len;
         RemLen -= Len;

+ 1 - 1
app/common_include/com_IPMIDefs.h

@@ -83,7 +83,7 @@
 #define UDS_CMD_FAILURE 1
 #define UDS_FAILURE -1
 #define UDS_PARAM_FAILURE -2
-#define UDS_SOCKET_QUE_LEN  50
+#define UDS_SOCKET_QUE_LEN  1024
 #define MAX_UDS_BUFFER_SIZE 1024
 #define	MAX_REQUEST_SIZE		1024
 #define	MAX_RESPONSE_SIZE		1024

+ 2 - 3
app/driver/ADC/Makefile

@@ -27,8 +27,7 @@ modules	:
 	make -C $(KERNELDIR) M=`pwd` modules CFLAGS="" LDFLAGS=""
 	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o
+
 

+ 1 - 4
app/driver/FMC/Makefile

@@ -31,11 +31,8 @@ modules	:
 	make -C $(KERNELDIR) M=$(PWD) modules CFLAGS="" LDFLAGS=""
 #	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o
-
 
 
 

+ 1 - 3
app/driver/GPIO/.gpio.ko.cmd

@@ -24,7 +24,5 @@ modules	:
 	make -C $(KERNELDIR) M=$(PWD) modules CFLAGS="" LDFLAGS=""
 #	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o

+ 1 - 3
app/driver/GPIO_I2C/Makefile

@@ -24,7 +24,5 @@ modules	:
 	make -C $(KERNELDIR) M=$(PWD) modules CFLAGS="" LDFLAGS=""
 #	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o

+ 1 - 4
app/driver/I2C/.i2c.ko.cmd

@@ -25,8 +25,5 @@ modules	:
 	make -C $(KERNELDIR) M=`pwd` modules CFLAGS="" LDFLAGS=""
 	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o
-

+ 0 - 1
app/driver/I2C/Module.symvers

@@ -1 +0,0 @@
-cmd_/stm32f429/linux-cortexm-1.14.2/projects/ls1046a/app/driver/test/test_module.ko := arm-uclinuxeabi-ld -EL -r  -T /stm32f429/linux-cortexm-1.14.2/linux/scripts/module-common.lds  -o /stm32f429/linux-cortexm-1.14.2/projects/ls1046a/app/driver/test/test_module.ko /stm32f429/linux-cortexm-1.14.2/projects/ls1046a/app/driver/test/test_module.o /stm32f429/linux-cortexm-1.14.2/projects/ls1046a/app/driver/test/test_module.mod.o

+ 1 - 2
app/driver/Platform/Makefile

@@ -19,7 +19,6 @@ EXTRA_CFLAGS += -I$(APPDIR)/common_include
 modules	:
 	make -C $(KERNELDIR) M=`pwd` modules CFLAGS="" LDFLAGS=""
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
 

+ 1 - 3
app/driver/SPI/.spi.ko.cmd

@@ -26,8 +26,6 @@ modules	:
 	make -C $(KERNELDIR) M=`pwd` modules CFLAGS="" LDFLAGS=""
 	rm -f *.o
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
-	rm -f *.o
 

+ 1 - 2
app/driver/SPI/Module.symvers

@@ -16,7 +16,6 @@ EXTRA_CFLAGS += -I$(INSTALL_ROOT)/projects/ls1046a/app/driver/STM32F4xx_HAL_Driv
 modules	:
 	make -C $(KERNELDIR) M=`pwd` modules CFLAGS="" LDFLAGS=""
 
-clean_modules:
+clean:
 	make -C $(KERNELDIR) M=`pwd` clean
-	rm -f modules.order
 

+ 1 - 4
app/goahead-5.1.0/CONTRIBUTING.md → app/goahead-3.6.5/CONTRIBUTING.md

@@ -1,9 +1,6 @@
 # Contribution Guidelines
 
-All code contributions shall be made using the
-[MIT](https://opensource.org/licenses/MIT).
-See [Contributors
-Agreement](https://embedthis.com/developers/contributors.html) for full details.
+All code contributions shall be made using the project [License](license.md).
 
 Please ensure pull requests adheres to the following guidelines:
 

+ 7 - 0
app/goahead-3.6.5/Jimbo_Note.txt

@@ -0,0 +1,7 @@
+1、所有的内存申请和释放都调用 alloc.c里定义的 "PUBLIC void *walloc(ssize num) " 和"PUBLIC void wfree(void *mem)"
+
+2、所有新增的用户代码都编译进 libgo.a 静态库中。
+
+3、请后台数据交互使用 goAction 方式。
+
+4、

+ 41 - 0
app/goahead-3.6.5/LICENSE.md

@@ -0,0 +1,41 @@
+Embedthis GoAhead Licenses
+===
+
+This software is distributed under commercial and GPL open source licenses.
+The GPL License does not generally permit incorporating this software into
+non-open source programs. Commercial licenses for this software and support
+services are available from Embedthis Software.
+
+* [GPL License](http://www.gnu.org/licenses/gpl-2.0.html)
+* [Embedthis Commercial License](https://embedthis.com/licensing/)
+
+
+Third Party Licenses
+---
+
+The Software contains third party software under the agreements that follow.
+
+### RSA MD5 License
+
+License to copy and use this software is granted provided that it is identified 
+as the "RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material 
+mentioning or referencing this software or this function. License is also 
+granted to make and use derivative works provided that such works are 
+identified as "derived from the RSA Data Security, Inc. MD5 Message-Digest 
+Algorithm" in all material mentioning or referencing the derived work. RSA Data
+Security, Inc. makes no representations concerning either the merchantability 
+of this software or the suitability of this software for any particular 
+purpose. It is provided "as is" without express or implied warranty of any 
+kind. These notices must be retained in any copies of any part of this 
+documentation and/or software. 
+
+### MbedTLS License
+
+MbedTLS - [Apache](http://www.apache.org/licenses/LICENSE-2.0)
+
+
+Trademarks and Copyrights
+---
+Copyright (c) Embedthis Software. All Rights Reserved.
+Embedthis and Embedthis GoAhead are trademarks of Embedthis Software, LLC.
+Other brands and their products are trademarks of their respective holders.

+ 27 - 30
app/goahead-5.1.0/Makefile → app/goahead-3.6.5/Makefile

@@ -7,29 +7,27 @@
 #   you can build using the MakeMe tool for for a fully configurable build. If you wish to
 #   cross-compile, you should use MakeMe.
 #
-#	See projects/$(OS)-$(ARCH)-$(PROFILE)-me.h for configuration default settings. Can override
-#	via make environment variables. For example: make ME_COM_SQLITE=0. These are converted to
-#	DFLAGS and will then override the me.h default values. Use "make help" for a list of available
+#	See projects/$(OS)-$(ARCH)-$(PROFILE)-me.h for configuration default settings. Can override 
+#	via make environment variables. For example: make ME_COM_SQLITE=0. These are converted to 
+#	DFLAGS and will then override the me.h default values. Use "make help" for a list of available 
 #	make variable options.
 #
 NAME    := goahead
-#OS      := $(shell uname | sed 's/CYGWIN.*/windows/;s/Darwin/macosx/' | tr '[A-Z]' '[a-z]')
+OS      := $(shell uname | sed 's/CYGWIN.*/windows/;s/Darwin/macosx/' | tr '[A-Z]' '[a-z]')
+OS 		:= linux
+ARCH 	:= arm
+CC 		:= arm-uclinuxeabi-gcc
+AR      := arm-uclinuxeabi-ar
 PROFILE := static
-#default
 
-OS		:= linux
-ARCH	:= arm
-CC		:= arm-uclinuxeabi-gcc
-CFLAGS 	:= -Os -mcpu=cortex-m3 -mthumb
-LDFLAGS	:= -mcpu=cortex-m3 -mthumb -L$(INSTALL_ROOT)/A2F/root/usr/lib
+CFLAGS		:= -Os -mcpu=cortex-m3 -mthumb
+CFLAGS 		+= -I$(INSTALL_ROOT)/A2F/root/usr/include
+CFLAGS 		+= -I$(INSTALL_ROOT)/A2F/uclibc/include
+LDFLAGS		:= -mcpu=cortex-m3 -mthumb -L$(INSTALL_ROOT)/A2F/root/usr/lib
 
-CFLAGS	+= -I$(INSTALL_ROOT)/A2F/root/usr/include
-CFLAGS	+= -I$(INSTALL_ROOT)/A2F/uclibc/include
-
-#LDFLAGS	+= -L$(INSTALL_ROOT)/A2F/uclibc/lib
 ifeq ($(ARCH),)
 	ifeq ($(OS),windows)
-		ifeq ($(PROCESSOR_ARCHITECTURE),AMD64)
+		ifeq ($(PROCESSOR_ARCHITEW6432),AMD64)
 			ARCH?=x64
 		else
 			ARCH?=x86
@@ -48,12 +46,11 @@ else
 endif
 
 BIN 	:= $(OS)-$(ARCH)-$(PROFILE)/bin
-PATH    := $(PWD)/build/$(BIN):$(PATH)
+PATH	:= $(BIN):$(PATH)
 
 .EXPORT_ALL_VARIABLES:
 
 all compile:
-	@echo "jimbo: $(INSTALL_ROOT)"
 	@if [ ! -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) ] ; then \
 		echo "The build configuration projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) is not supported" ; exit 255 ; \
 	fi
@@ -62,20 +59,20 @@ all compile:
 	@echo ; echo 'You can now install via "sudo make $(MAKEFLAGS) install" or run GoAhead via: "sudo make run"'
 	@echo "To run locally, put $(OS)-$(ARCH)-$(PROFILE)/bin in your path" ; echo
 
-clean clobber installBinary uninstall run:
+clean clobber:
 	@$(MAKE) -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) $@
 
-deploy:
-	@echo '       [Deploy] $(MAKE) ME_ROOT_PREFIX=$(OS)-$(ARCH)-$(PROFILE)/deploy -f projects/$(NAME)-$(OS)-$(PROFILE).  $(EXT) installBinary'
-	@$(MAKE) ME_ROOT_PREFIX=$(OS)-$(ARCH)-$(PROFILE)/deploy -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) installBinary
-
-install:
-	$(MAKE) -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) $@
-ifneq ($(OS),windows)
-	@echo ; echo 'You can now run via "sudo goahead -v --home /etc/goahead /var/www/goahead"'
-else
-	@echo ; echo 'You can now run via "goahead -v" in the goahead installation directory.'
-endif
+#deploy:
+#	@echo '       [Deploy] $(MAKE) ME_ROOT_PREFIX=$(OS)-$(ARCH)-$(PROFILE)/deploy -f projects/$(NAME)-$(OS)-$(PROFILE).  $(EXT) installBinary'
+#	@$(MAKE) ME_ROOT_PREFIX=$(OS)-$(ARCH)-$(PROFILE)/deploy -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) installBinary
+#
+#install:
+#	$(MAKE) -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) $@
+#ifneq ($(OS),windows)
+#	@echo ; echo 'You can now run via "sudo goahead -v --home /etc/goahead /var/www/goahead-default"'
+#else
+#	@echo ; echo 'You can now run via "goahead -v" in the goahead installation directory.'
+#endif
 
 version:
 	@$(MAKE) -f projects/$(NAME)-$(OS)-$(PROFILE).$(EXT) $@
@@ -127,7 +124,7 @@ help:
 	@echo '  ME_GOAHEAD_UPLOAD                 # Enable file upload (true|false)' >&2
 	@echo '  ME_GOAHEAD_UPLOAD_DIR             # Define directory for uploaded files (path)' >&2
 	@echo '  ME_COM_MBEDTLS                    # Enable the mbed TLS stack' >&2
-	@echo '  ME_COM_OPENSSL                    # Enable the OpenSSL SSL stack, must set ME_COM_OPENSS_PATH' >&2
+	@echo '  ME_COM_OPENSSL                    # Enable the OpenSSL SSL stack' >&2
 	@echo '  ME_ROM                            # Build for ROM without a file system' >&2
 	@echo '  ME_STACK_SIZE                     # Define the VxWorks stack size' >&2
 	@echo '' >&2

+ 69 - 0
app/goahead-3.6.5/README.md

@@ -0,0 +1,69 @@
+Embedthis GoAhead 3.X
+===
+
+[![Build
+Status](https://travis-ci.org/embedthis/goahead.png)](https://travis-ci.org/embedthis/goahead)
+
+The most popular little embedded web server.
+
+Licensing
+---
+See LICENSE.md for details and read:
+
+
+https://embedthis.com/goahead/licensing.html
+
+### Building
+
+You can build with Make or with MakeMe. MakeMe is quicker and more flexible.
+To install MakeMe, download it from https://embedthis.com/makeme/
+
+### To build with make:
+
+    make
+
+You can pass make variables to tailor the build. For a list of variables: 
+
+    make help
+
+### To build with nmake on Windows:
+
+    WinMake
+
+### To build with MakeMe:
+
+    ./configure
+    me
+
+For a list of configure options:
+
+    ./configure --help
+
+### To run:
+
+    me run
+
+### To install:
+
+    sudo make install
+
+or 
+
+    sudo me install
+
+### To uninstall
+
+    sudo make uninstall
+
+or
+
+    sudo me uninstall
+
+### To test:
+
+    me test
+
+Resources
+---
+  - [Embedthis web site](https://embedthis.com/)
+  - [GoAhead GitHub repository](http://github.com/embedthis/goahead)

+ 0 - 0
app/goahead-5.1.0/log → app/goahead-3.6.5/build/linux-arm-static/.install-certs-modified


+ 1 - 0
app/goahead-3.6.5/build/linux-arm-static/.makeflags

@@ -0,0 +1 @@
+s --no-print-directory

+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/ca.crt → app/goahead-3.6.5/build/linux-arm-static/bin/ca.crt


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/ca.key → app/goahead-3.6.5/build/linux-arm-static/bin/ca.key


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/ec.crt → app/goahead-3.6.5/build/linux-arm-static/bin/ec.crt


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/ec.key → app/goahead-3.6.5/build/linux-arm-static/bin/ec.key


BIN
app/goahead-3.6.5/build/linux-arm-static/bin/goahead


BIN
app/goahead-3.6.5/build/linux-arm-static/bin/gopass


BIN
app/goahead-3.6.5/build/linux-arm-static/bin/libgo.a


BIN
app/goahead-3.6.5/build/linux-arm-static/bin/libgoahead-mbedtls.a


BIN
app/goahead-3.6.5/build/linux-arm-static/bin/libmbedtls.a


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/roots.crt → app/goahead-3.6.5/build/linux-arm-static/bin/roots.crt


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/self.crt → app/goahead-3.6.5/build/linux-arm-static/bin/self.crt


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/self.key → app/goahead-3.6.5/build/linux-arm-static/bin/self.key


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/test.crt → app/goahead-3.6.5/build/linux-arm-static/bin/test.crt


+ 0 - 0
app/goahead-5.1.0/paks/certs/samples/test.key → app/goahead-3.6.5/build/linux-arm-static/bin/test.key


+ 0 - 0
app/goahead-5.1.0/src/utils/mine/ResultUtils.h → app/goahead-3.6.5/build/linux-arm-static/inc/ResultUtils.h


+ 0 - 0
app/goahead-5.1.0/src/cJSON/cJSON.h → app/goahead-3.6.5/build/linux-arm-static/inc/cJSON.h


+ 282 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_BmcType.h

@@ -0,0 +1,282 @@
+#ifndef __COM_BMC_TYPE_H__
+#define __COM_BMC_TYPE_H__
+
+#include "com_IPMI_ChassisDevice.h"
+#include "com_IPMI_FRU.h"
+#include "com_IPMIDefs.h"
+#include "com_IPMI_SEL.h"
+#include "com_IPMI_SDRRecord.h"
+
+#ifndef uint8_t
+  #define uint8_t unsigned char
+#endif
+#ifndef uint16_t
+  #define uint16_t unsigned short
+#endif
+#ifndef uint32_t
+  #define uint32_t unsigned long
+#endif
+
+
+#pragma pack(1)
+
+typedef struct{
+	uint8_t	sensorNum;
+	uint8_t supportHistory;
+	uint8_t	sensorHistoryEn;
+} OEM_SENSOR_CAPABILITY_T;
+
+
+/***************************************** FRU ******************************************************/
+
+/*
+ * Common Header: 		offset = 0,		len = 8
+ * chassis info area	offset = 1,		len = 64
+ * Board info area:		offset = 9,		len = 96
+ * product info area:	offset = 21, 	len = 88
+ * ------------------------------------------------------------------
+ * 										total = 256 		
+ */
+#define FRU_CHASSIS_SIZE	64
+#define FRU_BOARD_SIZE		96
+#define FRU_PRODUCT_SIZE	88
+#define FRU_TOTAL_SIZE		256
+
+typedef struct	
+{
+    uint8_t		ChassisInfoAreaFormatVersion;
+    uint8_t		ChassisInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		ChassisType;
+    uint8_t   	Data[FRU_CHASSIS_SIZE-6];
+    uint8_t		type_length;
+	uint8_t		Y;
+	uint8_t		checksum;
+}  OemFRUChassisInfo_T;
+
+typedef struct
+{
+    uint8_t		BoardInfoAreaFormatVersion;
+    uint8_t		BoardInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		Language;
+    uint8_t   	MfgDateTime[3];
+    uint8_t		Data[FRU_BOARD_SIZE - 21];
+    uint8_t		PowerOnCounts[4];
+    uint8_t		TotalWorkTime[4];
+    uint8_t		ThisWorkTime[4];
+    uint8_t		type_length;
+    uint8_t		Y;
+    uint8_t		checksum;
+}  OemFRUBoardInfo_T;
+
+/* Product Info Area */
+typedef struct
+{
+    uint8_t		ProductInfoAreaFormatVersion;
+    uint8_t		ProductInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		Language;
+    uint8_t		Data[FRU_PRODUCT_SIZE - 6];
+    uint8_t		type_length;
+    uint8_t		Y;
+	uint8_t		checksum;
+}  OemFRUProductInfo_T;
+
+
+/* Complete FRU Data */
+typedef struct
+{
+    FRUCommonHeader_T   		CommonHeader;
+    OemFRUChassisInfo_T			ChassisInfo;
+    OemFRUBoardInfo_T			BoardInfo;
+    OemFRUProductInfo_T			ProductInfo;
+}  OemFRUData_T;
+
+
+typedef struct{
+//    uint8_t   DeviceID;       /* FRU Device ID                                */
+//    uint8_t   IsInternalFRU;  /* Flag to hide FRU					*/
+    uint8_t   Type;           /* FRU type NVR/EEPROM/....                     */
+    uint16_t  Size;           /* FRU Device size                              */
+    uint8_t   AccessType;     /* FRU device access type BYTE/WORD             */
+    uint8_t   BusNumber;      /* Bus number if FRU is EEPROM                  */
+    uint8_t   SlaveAddr;      /* FRU device slave address if FRU is EEPROM    */
+    uint8_t   DeviceType;     /* FRU device type if FRU is EEPROM             */
+} FRUInfo_T;
+
+/**************************************** sensor **********************************************/
+typedef struct
+{
+    uint16_t 		NumThreshSensors;
+    uint16_t 		NumNonThreshSensors;
+    int 			MonitorBusy;//=0;
+ //   uint16_t 		SensorMonitorLoopCount;		//nessary ?
+    uint8_t  		InitAgentRearm; // = FALSE;	nessary??
+    uint16_t 		ValidSensorCnt;
+    uint8_t 		ValidSensorList[MAX_SENSOR_NUMBERS];
+//    HealthState_T  	HealthState;
+    uint32_t 		PowerOnTick;
+    uint32_t 		SysResetTick;
+    
+} SENSOR_T;
+
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   SensorTypeCode;
+    uint8_t   LowerNonCritical;
+    uint8_t   LowerCritical;
+    uint8_t   LowerNonRecoverable;
+    uint8_t   UpperNonCritical;
+    uint8_t   UpperCritical;
+    uint8_t   UpperNonRecoverable;
+
+} SensorThresholds;
+
+/* SDRRepositoryAllocInfo_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  NumAllocUnits;      /* Number of possible allocation units */
+    uint16_t  AllocUnitSize;      /* Allocation unit size in bytes */
+    uint16_t  NumFreeAllocUnits;  /* Number of free allocation units */
+    uint16_t  LargestFreeBlock;   /* Largest free block in allocation units */
+    uint8_t   MaxRecSize;         /* Maximimum record size in allocation units */
+
+}   SDRRepositoryAllocInfo_T;
+
+/* SDRRepositoryInfo_T */
+typedef struct
+{
+    uint8_t   CompletionCode;     /* Completion Code */
+    uint8_t   Version;            /* Version of the SDR 0x51 */
+    uint16_t  RecCt;              /* Record Count */
+    uint16_t  FreeSpace;          /* Free space LSB first */
+    uint32_t  AddTimeStamp;       /* Most recent addition timestamp */
+    uint32_t  EraseTimeStamp;     /* Most recent erase timestamp */
+    uint8_t   OpSupport;          /* Operation Support */
+
+}   SDRRepositoryInfo_T;
+
+/**
+ * @struct SDRRepository_T
+ * @brief SDR Repository organisation
+**/
+typedef struct
+{
+    uint8_t   Signature [4];      /* $SDR */
+
+    uint16_t  NumRecords;         /* Number of records */
+    uint16_t  Size;               /* Size of the SDR Records Data */
+
+    uint32_t  AddTimeStamp;       /* Most recent addition timestamp */
+    uint32_t  EraseTimeStamp;     /* Most recent erase timestamp */
+
+}   SDRRepository_T;
+
+typedef struct
+{
+    uint8_t     				SDRError;
+    uint8_t      					UpdatingSDR;
+    uint8_t     				UpdatingChannel;
+    SDRRepositoryAllocInfo_T    RepositoryAllocInfo;
+    SDRRepositoryInfo_T       	RepositoryInfo;
+    uint8_t   					TrackPOffset;
+    uint16_t  					TrackRecID;
+    uint16_t  					ReservationID;
+    uint8_t 					IPMB_Seqnum;
+    uint8_t     				PartAddbytes;
+    uint16_t 					LatestRecordID;
+    uint16_t 					NumMarkedRecords;
+    SDRRepository_T*   			SDRRAM;
+} SDR_T;
+
+/******************************************* SEL *******************************************/
+typedef struct
+{
+    uint16_t  	SelReservationID;
+    uint32_t  	LastEvtTS;
+//    uint8_t   	SELLimit;
+    uint16_t  	PartialAddRecordID;
+    uint8_t   	PartialAddRecOffset;
+    uint8_t   	PartialAdd;
+    uint8_t   	SenMonSELFlag;
+    uint16_t  	MaxSELRecord;
+//    uint8_t    	RsrvIDCancelled;
+    uint8_t 		SELOverFlow;
+    SELEventRecord_T  SelPartialAddRecord;
+    uint8_t 	SELEventMsg [16];
+    int 		selalmostfull;
+} SEL_T;
+
+typedef struct {
+	uint8_t 	BladeWorkMode;
+	uint8_t 	chassisManageFnEnable;
+	uint8_t 	thisBladeIndex;
+	uint8_t 	bladeStatus;	//0: not present, 1: normal, 2: error, others: reserved.
+	uint8_t 	sensorHistoryEn;
+} OEM_FLAGS_T;
+
+
+
+typedef struct
+{
+    SDRRecHdr_T    hdr;
+    uint8_t               OwnerID;
+    uint8_t               OwnerLUN;
+    uint8_t               SensorNumber;
+    uint8_t               SensorReading;
+    uint8_t               MaxReading;
+    uint8_t               MinReading;
+    uint8_t               Flags;
+    uint8_t               ComparisonStatus;
+    uint8_t               OptionalStatus;
+    uint8_t               SensorTypeCode;
+    uint8_t               EventTypeCode;
+    uint8_t               Units1;
+    uint8_t               Units2;
+    uint8_t               Units3;
+    uint8_t               Linearization;
+    uint8_t               M_LSB;
+    uint8_t               M_MSB_Tolerance;
+    uint8_t               B_LSB;
+    uint8_t               B_MSB_Accuracy;
+    uint8_t               Accuracy_MSB_Exp;
+    uint8_t               RExp_BExp;
+    uint8_t               LowerNonCritical;
+    uint8_t               LowerCritical;
+    uint8_t               LowerNonRecoverable;
+    uint8_t               UpperNonCritical;
+    uint8_t               UpperCritical;
+    uint8_t               UpperNonRecoverable;
+    uint8_t               AssertionEventByte1;
+    uint8_t               AssertionEventByte2;
+    uint8_t               DeassertionEventByte1;
+    uint8_t               DeassertionEventByte2;
+    char                SensorName[MAX_ID_STR_LEN];
+    uint16_t              Settable_Readable_ThreshMask;    
+
+}SenInfo_T;
+
+typedef struct
+{
+    uint8_t   CompletionCode;
+    SenInfo_T SensorInfo;
+    //uint16_t   Noofentries;
+} StorleadGetSensorInfoRes_T;
+
+// typedef struct
+// {
+//     uint8_t               Used;
+//     uint8_t               TimeOut;
+//     uint8_t               SeqNum;
+//     uint8_t               ChannelNum;
+//     uint8_t               DstSessionHandle;
+//     uint8_t               SrcSessionHandle;
+//     uint32_t              SrcSessionID;
+//     uint8_t               DestQ[PIPE_NAME_LEN];
+//     uint8_t               OriginSrc;
+//     IPMIMsgHdr_T       	  ReqMsgHdr;
+//     IPMIMsgHdr_T          ResMsgHdr;
+// } 	PendingBridgedResTbl_T;
+
+#pragma pack()
+#endif /* __BMC_TYPE_H__ */

+ 565 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMIDefs.h

@@ -0,0 +1,565 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ ******************************************************************
+ *
+ * ipmi_defs.h
+ * IPMI Definitions
+ *
+ *  Author: Govind Kothandapani <govindk@ami.com>
+ *
+ ******************************************************************/
+#ifndef  IPMI_DEFS_H
+#define IPMI_DEFS_H
+
+#ifndef uint8_t
+  #define uint8_t unsigned char
+#endif
+#ifndef uint16_t
+  #define uint16_t unsigned short
+#endif
+#ifndef uint32_t
+  #define uint32_t unsigned long
+#endif
+// #ifndef bool
+// 	#define bool uint8_t
+// #endif
+
+
+#ifndef TRUE
+    #define TRUE 1
+#endif
+
+#ifndef FALSE
+    #define FALSE 0
+#endif    
+
+
+#define MAX_STR_LENGTH          128
+#define SOCKET_PATH_LEN         108
+#define SESSION_TIMEOUT         10
+#define MAX_PYLDS_SUPPORT       2
+#define MAX_SENSOR_NUMBERS      32
+#define DEFAULT_TIMEOUT			10
+#define MAX_USER_NUM			(10)
+#define MAX_SEL_RECORD			(100)
+#define MAX_ID_STR_LEN  		16
+#define MAX_FRU_SDR_STR_SIZE 	40
+#define MAX_SENSOR_INFO_SIZE	(1024)
+
+#define AUTH_FILE_PATH		"/etc/goahead/auth.txt"
+
+// /*------------------------
+//  * Privilege Levels
+//  *------------------------*/
+// #define PRIV_NONE		0x00
+// #define PRIV_CALLBACK	0x01
+// #define PRIV_USER		0x02
+// #define PRIV_OPERATOR	0x03
+// #define PRIV_ADMIN		0x04
+// #define PRIV_OEM		0x05
+// #define PRIV_LOCAL		0x81
+// #define PRIV_SYS_IFC	0x82
+
+/*----------------------------------------------
+ * UDS
+ *----------------------------------------------*/
+#define UDS_SOCKET_PATH "/var/UDS_SOCKET"
+#define UDS_IFC_Q   "/var/UDS_IFC_Q"
+#define UDS_RES_Q   "/var/UDS_RES_Q"
+
+#define UDS_SUCCESS 0
+#define UDS_CMD_FAILURE 1
+#define UDS_FAILURE -1
+#define UDS_PARAM_FAILURE -2
+#define UDS_SOCKET_QUE_LEN  1024
+#define MAX_UDS_BUFFER_SIZE 1024
+#define	MAX_REQUEST_SIZE		1024
+#define	MAX_RESPONSE_SIZE		1024
+
+#define WAIT_NONE       0
+#define WAIT_INFINITE   (-1)
+
+/* ---------------------------------------------
+ * Lan
+ * ---------------------------------------------*/
+#define MAC_ADDR_LEN            6
+#define IP_ADDR_LEN             4
+#define MAX_AUTH_PARAM_SIZE     296
+
+#define LAN_IFC_Q   "/var/LAN_IFC_Q"
+#define LAN_RES_Q   "/var/LAN_RES_Q"
+
+/* ---------------------------------------------
+ * IPMB
+ * ---------------------------------------------*/
+#define PRIMARY_IPMB_IFC_Q   "/var/Primary_IPMB_IFC_Q"
+#define PRIMARY_IPMB_RES_Q   "/var/Primary_IPMB_RES_Q"
+#define SECONDARY_IPMB_IFC_Q   "/var/Secondary_IPMB_IFC_Q"
+#define SECONDARY_IPMB_RES_Q   "/var/Secondary_IPMB_RES_Q"
+#define MIN_IPMB_MSG_LENGTH		7
+
+/* ---------------------------------------------
+ * MsgHndlr
+ * ---------------------------------------------*/
+#define MSG_HNDLR_Q   "/var/MSG_HNDLR_Q"
+
+/* ---------------------------------------------
+ * ChassisTimer
+ * ---------------------------------------------*/
+#define CHASSIS_PWR_HNDLR_Q   "/var/CHASSIS_PWR_HNDLR_Q"
+
+/*----------------------------------------------
+ * Channel
+ *----------------------------------------------*/
+#define PRIMARY_IPMB_CHANNEL		(0)
+#define LAN_RMCP_CHANNEL        	(1)
+#define SECONDARY_IPMB_CHANNEL		(6)
+#define USB_CHANNEL					(0x0B)
+#define UDS_CHANNEL             	(0x0D)
+#define SYS_IFC_CHANNEL				(0x0F)
+
+/*----------------------------------------------
+ * Parameters
+ *----------------------------------------------*/
+
+#define PARAM_IFC               0x01
+#define LAN_SMB_REQUEST         0x01
+#define UDS_SMB_PARAM 			0x01
+
+#define PARAM_REQUEST           0x03
+#define PARAM_CHASSIS           0x07
+#define PARAM_MC                0x09
+
+#define PARAM_NO_RESPONSE       0x10
+#define PARAM_NORMAL_RESPONSE   0x11
+#define PARAM_BRIDGE            0x12
+#define BRIDGING_REQUEST        PARAM_BRIDGE
+
+
+
+
+#define IP4_VERSION     4
+#define IP6_VERSION     6
+#define IP4_ADDR_LEN    4
+#define IP6_ADDR_LEN   16
+
+
+/* Authentication Types */
+#define	AUTHTYPE_NONE									0x00
+#define	AUTHTYPE_MD2									0x01
+#define	AUTHTYPE_MD5									0x02
+#define	AUTHTYPE_RESERVED								0x03
+#define	AUTHTYPE_STRAIGHT_PASSWORD						0x04
+#define	AUTHTYPE_OEM_PROPRIETARY						0x05
+#define	AUTHTYPE_RMCP_PLUS_FORMAT						0x06
+
+/* Privilege levels */
+#define PRIV_LEVEL_NO_ACCESS                            0x0F
+#define PRIV_LEVEL_PROPRIETARY							0x05
+#define PRIV_LEVEL_ADMIN								0x04
+#define PRIV_LEVEL_OPERATOR								0x03
+#define PRIV_LEVEL_USER									0x02
+#define PRIV_LEVEL_CALLBACK								0x01
+#define PRIV_LEVEL_RESERVED								0x00
+
+
+/* Authentication Algorithms */
+#define AUTH_ALG_RAKP_NONE								0x00
+#define AUTH_ALG_RAKP_HMAC_SHA1							0x01
+#define AUTH_ALG_RAKP_HMAC_MD5							0x02
+
+/* Integrity Algorithms */
+#define INTEGRITY_ALG_NONE								0x00
+#define INTEGRITY_ALG_HMAC_SHA1_96						0x01
+#define INTEGRITY_ALG_HMAC_SHA1_128						0x02
+#define INTEGRITY_ALG_MD5_128							0x03
+
+/* Confidentiality Algorithms */
+#define CONFIDENTIALITY_ALG_NONE						0x00
+#define CONFIDENTIALITY_ALG_AES_CBC_128					0x01
+#define CONFIDENTIALITY_ALG_XRC4_128					0x02
+#define CONFIDENTIALITY_ALG_XRC4_40						0x03
+
+/* Payload Types */
+#define PAYLOAD_TYPE_IPMI								0
+#define PAYLOAD_TYPE_SOL								1
+#define PAYLOAD_TYPE_RSSP_OPEN_SES_REQ					0x10
+#define PAYLOAD_TYPE_RSSP_OPEN_SES_RES					0x11
+#define PAYLOAD_TYPE_RAKP_MSG_1							0x12
+#define PAYLOAD_TYPE_RAKP_MSG_2							0x13
+#define PAYLOAD_TYPE_RAKP_MSG_3							0x14
+#define PAYLOAD_TYPE_RAKP_MSG_4							0x15
+
+#define	MAX_KEY1_SIZE									20
+#define	MAX_KEY2_SIZE									20
+#define	MAX_GUID_SIZE									16
+//#define	MAX_USER_NAME_LEN								(16+1) //1 for stroing the null character
+//#define	MAX_USER_PWD_LEN								(20+1) //1 for storing the null character
+#define MAX_RAND_NO_LEN									16
+
+#define THRESHOLD_RESERVED_BIT  0xC0
+#define DISCRETE_RESERVED_BIT   0x80
+
+/* (0x6 << 2) == 0x18 */
+#define DEFAULT_NET_FN_LUN					0x18
+#define NETFNLUN_IPMI_APP					0x18
+#define NETFNLUN_IPMI_SENSOR				0x10
+#define NETFNLUN_IPMI_STORAGE				0x28
+#define NETFNLUN_IPMI_CHASSIS               0x00
+#define NETFNLUN_IPMI_OEM					0xB8
+#define NETFNLUN_IPMI_STORLEAD				0xC8
+
+
+
+
+/*----------------------------------------------
+ * Session type
+ *----------------------------------------------*/
+#define LAN_SESSION_TYPE                1
+#define SERIAL_SESSION_TYPE             2
+#define SERIAL_TERMINAL_SESSION_TYPE    3
+#define KCS_SESSION_TYPE                4
+#define BT_SESSION_TYPE                 5
+#define IPMB_SESSION_TYPE               6
+#define UDS_SESSION_TYPE                7
+#define USB_SESSION_TYPE                8
+
+#define BLADE_CHMC              0
+#define BLADE_IPMC              1
+#define   CH_NOT_USED   0xFF
+
+/*----------------------------------------------
+ * Bit fields
+ *----------------------------------------------*/
+#define BIT0    0x0001
+#define BIT1    0x0002
+#define BIT2    0x0004
+#define BIT3    0x0008
+#define BIT4    0x0010
+#define BIT5    0x0020
+#define BIT6    0x0040
+#define BIT7    0x0080
+#define BIT8    0x0100
+#define BIT9    0x0200
+#define BIT10   0x0400
+#define BIT11   0x0800
+#define BIT12   0x1000
+#define BIT13   0x2000
+#define BIT14   0x4000
+#define BIT15   0x8000
+
+/*------- Net Functions  -------------------*/
+#define NETFN_CHASSIS                     0x00
+#define NETFN_BRIDGE                      0x02
+#define NETFN_SENSOR                      0x04
+#define NETFN_APP                         0x06
+#define NETFN_FIRMWARE                    0x08
+#define NETFN_STORAGE                     0x0A
+#define NETFN_TRANSPORT                   0x0C
+#define NETFN_PICMG                       0x2C
+#define NETFN_STORLEAD                         0x32
+#define NETFN_OEM                         0x2E
+#define NETFN_OPMA1                       0x30
+#define NETFN_OPMA2                       0x3E
+#ifdef  CFG_PROJ_SHMC_TEST_SUPPORT_YES
+#define NETFN_TEST_OEM                    0x34
+#endif
+
+#define NETFN_UNKNOWN                     0xFF
+#define IPMI_CMD_UNKNOWN                  0xFF
+
+#define NETFN_GROUP_EXTN                  0x2C
+#define IPMI_GROUP_EXTN_CODE_DCMI         0xDC
+
+#define MAX_USERNAME_LEN        (16+1)
+#define MAX_PASSWORD_LEN        (20+1)
+
+/**** Command Completion Codes ****/
+#define CC_NORMAL                                       0x00
+#define CC_SUCCESS                                      0x00
+#define CC_NODE_BUSY                                    0xC0
+#define CC_INV_CMD                                      0xC1
+#define CC_INV_CMD_FOR_LUN                              0xC2
+#define CC_TIMEOUT                                      0xC3
+#define CC_OUT_OF_SPACE                                 0xC4
+#define CC_INV_RESERVATION_ID                           0xC5
+#define CC_REQ_TRUNCATED                                0xC6
+#define CC_REQ_INV_LEN                                  0xC7
+#define CC_REQ_FIELD_LEN_EXCEEDED                       0xC8
+#define CC_PARAM_OUT_OF_RANGE                           0xC9
+#define CC_CANNOT_RETURN_REQ_BYTES                      0xCA
+#define CC_SEL_REC_NOT_PRESENT                          0xCB
+#define CC_SDR_REC_NOT_PRESENT                          0xCB
+#define CC_FRU_REC_NOT_PRESENT                          0xCB
+#define CC_INV_DATA_FIELD                               0xCC
+#define CC_ILLEGAL_CMD_FOR_SENSOR_REC                   0xCD
+#define CC_COULD_NOT_PROVIDE_RESP                       0xCE
+#define CC_CANNOT_EXEC_DUPL_REQ                         0xCF
+#define CC_SDR_REP_IN_UPDATE_MODE                       0xD0
+#define CC_DEV_IN_FIRMWARE_UPDATE_MODE                  0xD1
+#define CC_INIT_AGENT_IN_PROGRESS                       0xD2
+#define CC_DEST_UNAVAILABLE                             0xD3
+#define CC_INSUFFIENT_PRIVILEGE                         0xD4
+#define CC_PARAM_NOT_SUP_IN_CUR_STATE                   0xD5
+#define CC_ERR_HANDLING_COMMAND_FAILURE                 0xD6
+#define CC_UNSPECIFIED_ERR                              0xFF
+#define CC_GET_MSG_QUEUE_EMPTY                          0x80
+#define CC_EVT_MSG_QUEUE_EMPTY                          0x80
+#define CC_GET_SESSION_INVALID_USER                     0x81
+#define CC_GET_SESSION_NULL_USER_DISABLED               0x82
+#define CC_ACTIVATE_SESS_NO_SESSION_SLOT_AVAILABLE      0x81
+#define CC_ACTIVATE_SESS_NO_SLOT_AVAILABLE_USER         0x82
+#define CC_ACTIVATE_SESS_REQ_LEVEL_EXCEEDS_LIMIT        0x83
+#define CC_ACTIVATE_SESS_SEQ_OUT_OF_RANGE               0x84
+#define CC_ACTIVATE_SESS_INVALID_SESSION_ID             0x85
+#define CC_ACTIVATE_SESS_MAX_PRIVILEGE_EXCEEDS_LIMIT    0x86
+#define CC_PASSWORD_TEST_FAILED                         0x80
+#define CC_PASSWORD_TEST_FAILED_WRONG_SIZE              0x81
+#define CC_SETPASSWORD_INVALID_USERID                   0x81
+#define CC_SETPASSWORD_CANNOT_DISABLE_USER              0x82
+#define CC_NO_ACK_FROM_SLAVE                            0x83
+#define CC_GET_CH_COMMAND_NOT_SUPPORTED                 0x82
+#define CC_SET_CH_COMMAND_NOT_SUPPORTED                 0x82
+#define CC_SET_CH_ACCES_MODE_NOT_SUPPORTED              0x83
+#define CC_SET_SESS_PREV_REQ_LEVEL_NOT_AVAILABLE        0x80
+#define CC_SET_SESS_PREV_REQ_PRIVILEGE_EXCEEDS_LIMIT    0x81
+#define CC_SET_SESS_PREV_INVALID_SESSION_ID             0x82
+#define CC_ACTIVATE_SESS_NO_SLOT_AVAILABLE_USER         0x82
+#define CC_CLOSE_INVALID_SESSION_ID                     0x87
+#define CC_CLOSE_INVALID_SESSION_ID_HANDLE              0x88
+#define CC_PEF_PARAM_NOT_SUPPORTED                      0x80
+#define CC_PEF_SET_IN_PROGRESS                          0x81
+#define CC_SESSION_IN_PROGRESS                          0x82
+#define CC_PEF_ATTEMPT_TO_SET_READ_ONLY_PARAM           0x82
+#define CC_SET_IN_PROGRESS                              0x81
+#define CC_ATTEMPT_TO_SET_RO_PARAM                      0x82
+#define CC_PARAM_NOT_SUPPORTED                          0x80
+#define CC_BIOS_NOT_READY                               0x82
+#define CC_IFC_NOT_SUPPORTED                            0x81
+#define CC_DISABLE_SM                                   0x81
+#define CC_BIOS_IS_BUSY                                 0x81
+#define CC_CMD_UNSUPPORTED_UNCONFIGURABLE               0x80
+#define CC_NTP_RESTART_ERROR                            0x80
+
+#define CC_CALLBACK_REJ_SESSION_ACTIVE                  0x82
+#define CC_WRITE_ONLY_PARAM                             0x83
+
+#define CC_INST_ALREADY_ACTIVE                          0x80
+#define CC_CANNOT_ACTIVATE_WITH_ENCR                    0x83
+#define CC_PAYLOAD_NOT_ENABLED                          0x81
+#define CC_INST_EXCEEDED                                0x82
+#define CC_INST_ALREADY_INACTIVE                        0x80
+#define CC_PAYLOAD_NOT_AVAILABLE                        0x80
+#define CC_ENCRYPT_NOT_AVAILABLE                        0x82
+#define CC_INST_NOT_ACTIVE                              0x83
+#define CC_KEYS_LOCKED                                  0x80
+#define CC_INSUF_KEY_BYTES                              0x81
+#define CC_TOO_MANY_KEY_BYTES                           0x82
+#define CC_KEY_MISMATCH                                 0x83
+
+#define CC_INVALID_KEY                                  0x80
+
+#define CC_OP_NOT_SUPPORTED                             0x80
+#define CC_OP_NOT_ALLOWED                               0x81
+#define CC_ENC_NOT_AVAILABLE                            0x82
+#define CC_CANNOT_ACTIVATE_WITH_ENCR                    0x83
+#define CC_CANNOT_ACTIVATE_WITHOUT_ENCR                 0x84
+
+#define CC_ATTEMPT_TO_RESET_UNIN_WATCHDOG               0x80
+
+#define CC_ILLEGAL_CONNECTOR_ID                         0x81
+#define CC_SEL_ERASE_IN_PROGRESS                        0x81
+
+#define CC_SAME_PAM_ORDER                               0x90
+#define CC_PAM_ORDER_SEC_DIFERS                         0x91
+#define CC_PAM_ORDER_FILE_DIFERS                        0x92
+
+#define CC_INSUFFICIENT_SLAVE_COUNT                     0x84
+#define CC_IFC_ALREADY_SLAVEDTO_BOND                    0x85
+#define CC_BOND_DISABLED_TOCONF_DNS                     0x86
+#define CC_DNS_CURRENTLY_NOT_SUPPORTED_FOR_IPV6         0x87
+#define CC_INV_DOMAIN_NAME                              0x88
+#define CC_TSIGPRIVATEKEY_VALIDATION_FAILED             0x89
+#define CC_DNS_CURRENTLY_NOT_ENABLED                    0x90
+
+#define CC_NULL_USERID_NOT_SUPPORTED                    0x80
+
+#define CC_DEVICE_NOT_SUPPORTED                         0X80
+#define CC_INCOMPLETE_WRITTEN_BYTES			0x80
+
+/* Completion code for Set system info parameter command */
+#define CC_SYS_INFO_PARAM_NOT_SUPPORTED                 0x80
+#define CC_SYS_INFO_SET_IN_PROGRESS                     0x81
+#define CC_SYS_INFO_READ_ONLY_PARAM                     0x82
+#define IPMI_EVM_REVISION                               0x04
+#define IPMI_SENSOR_TEMP_TYPE                           0x01
+#define IPMI_SENSOR_VOLT_TYPE                           0x02
+#define IPMI_SENSOR_FAN_TYPE                            0x04
+#define IPMI_SENSOR_PHYSICAL_SECURITY_TYPE              0x05
+#define IPMI_SENSOR_POWER_SUPPLY_TYPE                   0x08
+#define IPMI_SENSOR_MEMORY_TYPE                         0x0C
+#define IPMI_SENSOR_DRIVE_TYPE                          0x0D
+#define IPMI_SENSOR_BUTTON_TYPE                         0x14
+#define IPMI_SENSOR_ENTITY_PRESENCE_TYPE                0x25
+#define IPMI_SENSOR_OEM_TYPE                            0xC0
+
+/******************OEM Completion codes*********************/
+#define OEMCC_INVALID_USERNAME                          0x01
+#define OEMCC_PASSWD_MISMATCH                           0x02
+#define OEMCC_INVALID_PASSWD                            0x03
+#define OEMCC_DUPLICATE_USERNAME                        0x04
+#define OEMCC_USER_EXISTS_AT_SLOT                       0x05
+#define OEMCC_NOMEM                                     0x06
+#define OEMCC_FILE_ERR                                  0x07
+#define OEMCC_SSHKEY_UPDATE_FAILURE                     0x08
+#define OEMCC_SENSOR_DISABLED                           0x09
+#define OEMCC_INVALID_SDR_ENTRY                         0x0a
+#define OEMCC_CORRUPT_FLASH_DATA                        0x0b
+#define OEMCC_CORRUPT_DATA_CHKSUM                       0x0c
+#define OEMCC_FLASH_UPGRADE_FAILURE                     0x0d
+#define OEMCC_VERSION_MISMATCH                          0x0e
+#define OEMCC_USER_NOT_EXISTS                           0x0f
+
+#define OEMCC_SAL_INVALID_TARGET                        0x0f //CMM sal completion code
+
+#define OEMCC_EMAIL_NOT_CONFIGURED                      0x10
+#define OEMCC_SMTP_DISABLED                             0x11
+#define OEMCC_UNSUPPORTED_AUTH_TYPE                     0x12
+#define OEMCC_SEND_EMAIL_AUTH_FAILED                    0x13
+#define OEMCC_UNABLE_TO_CONNECT_SMTPSERVER              0x14
+#define OEMCC_SEND_EMAIL_FAILED                         0x15
+#define OEMCC_USER_DISABLED                             0x16
+#define OEMCC_RESERVED_USER_NAME                        0x17
+#define OEMCC_INSUFFIENT_LANIFC_COUNT                   0x80
+#define OEMCC_UNSUPPORTED_BOND_MODE                     0x81
+#define OEMCC_VLAN_ENABLED_ON_SLAVE                     0x82
+#define OEMCC_BOND_ALREADY_DISABLED     0x83
+#define OEMCC_INV_PARAM_ONLY_FOR_NON_BONDING            0x81
+#define OEMCC_INV_IP4_NOT_ENABLED                       0x82
+#define OEMCC_INV_MIN_IFC_COUNT_DISABLED                0x83
+#define OEMCC_BOND_NOT_ENABLED                          0x80
+#define OEMCC_ACTIVE_SLAVE_LINK_DOWN                    0x81
+#define OEMCC_ETH_IFACE_DISABLED                        0x85
+#define OEMCC_SEL_EMPTY_REPOSITORY                      0x86
+#define OEMCC_SEL_CLEARED                               0x85
+#define OEMCC_SENSOR_INFO_EMPTY                         0x87
+
+#define OEMCC_ATTEMPT_TO_GET_WO_PARAM                   0x82
+
+#define CC_POWER_LIMIT_OUT_OF_RANGE                     0x84
+#define CC_CORRECTION_TIME_OUT_OF_RANGE                 0x85
+#define CC_STAT_REPORTING_OUT_OF_RANGE                  0x89
+
+#define CC_THERMAL_LIMIT_OUT_OF_RANGE                   0x84
+#define CC_THERMAL_EXCEPTION_TIME_OUT_OF_RANGE          0x85
+
+#define OEMCC_INV_DATE_TIME                             0x93
+/* HPM related Completion codes */
+#define CC_UPG_NOT_SUPPORTED_OVER_IFC                   0x81
+#define CC_INV_COMPONENT_ID                             0x82
+#define CC_INV_COMPONENT_PROP_SELECTOR                  0x83
+#define CC_INV_COMPONENT                                0x81
+#define CC_IMAGE_LEN_MISMATCH                           0x81
+#define CC_INV_FW_CHECKSUM                              0x82
+#define CC_IMAGE_NOT_MATCH                              0x83
+#define CC_UPG_NOT_ABORTED_AT_THIS_MOMENT               0x80
+#define CC_UPG_ABORTED_FW_NOT_RESUMABLE                 0x81
+#define CC_CMD_INPROGRESS                               0x80
+/* Remote Images Service completion code*/
+#define CC_SERVICE_NOT_ENABLED              0x90
+#define CC_INVALID_MEDIA_TYPE               0x91
+#define CC_INVALID_SHARE_TYPE               0x92
+#define CC_INVALID_IP_ADDR                  0x93
+#define CC_INVALID_COMMAND                  0x94
+#define CC_INVALID_IMAGE_FILE_NAME          0x95
+#define CC_INVALID_DOMAIN                   0x96
+#define CC_INVALID_CONFIGURATION            0x97
+#define CC_INVALID_IMG_PATH                 0x98
+#define CC_INVALID_USR_NAME                 0x99
+#define CC_INVALID_PASSWD                   0x9A
+#define CC_INVALID_BLOCK_SELECTOR              0x9B
+#define CC_INV_PROGRESS_BIT              0x9C
+#define CC_PROGRESS_BIT_NOT_SET              0x9D
+#define CC_PUBLICKEY_VALIDATION_FAILED          0x80
+
+/*Host Lock Feature*/
+#define CC_FEATURE_NOT_ENABLED          0x80
+#define CC_INV_FEATURE_CMD          0x81
+#define CC_INV_LOCK_CMD          0x82
+/*--------------------------------------------
+ * Macro to extract the net function.
+ *--------------------------------------------*/
+#define NET_FN(NetFnLUN)	((uint8_t)((NetFnLUN & 0xFC) >> 2))
+
+#pragma pack( 1 )
+
+/*-------------------------
+ * Disable Message Filter Table
+ *-------------------------*/
+typedef struct
+{
+    uint8_t                   NetFn;
+    uint8_t                   Command;
+}  DisableMsgFilterTbl_T;
+
+typedef struct
+{
+    uint8_t                   NetFn;
+    uint8_t                   Cmd;
+}  FlashModeFilterTbl_T;
+
+
+/*----------------------------------
+ * IPMI Commands Filter List Structure  
+ *----------------------------------*/
+typedef struct
+{
+    uint8_t   NetFn;
+    uint8_t   Cmd;
+}  IPMICmdsFilterTbl_T;
+
+
+/* IPMI Message Header */
+typedef struct
+{
+    uint8_t	ResAddr;
+    uint8_t	NetFnLUN;
+    uint8_t	ChkSum;
+    uint8_t	ReqAddr;
+    uint8_t	RqSeqLUN;
+    uint8_t	Cmd;
+} IPMIMsgHdr_T;
+
+typedef struct
+{
+    uint32_t SessionID;
+    uint8_t Privilege;
+    uint16_t IPMIMsgLen;
+    uint8_t NetFnLUN;
+    uint8_t Cmd;
+    uint8_t ChannelNum;
+    uint8_t AuthFlag;
+    uint8_t UserName[MAX_USERNAME_LEN];
+    uint8_t IPAddr[IP6_ADDR_LEN];
+    uint32_t ProcessID;
+    uint32_t ThreadID;
+}IPMIUDSMsg_T;
+
+#pragma pack( )
+
+
+
+
+#endif	/* IPMI_DEFS_H */

+ 105 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_App.h

@@ -0,0 +1,105 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ *****************************************************************
+ *
+ * IPMI_App.h
+ * Application Command numbers
+ *
+ *****************************************************************/
+#ifndef IPMI_APP_H
+#define IPMI_APP_H
+
+#ifndef uint8_t
+  #define uint8_t unsigned char
+#endif
+#ifndef uint16_t
+  #define uint16_t unsigned short
+#endif
+#ifndef uint32_t
+  #define uint32_t unsigned long
+#endif
+
+/*** Application Commands ***/
+#define CMD_GET_DEV_ID              0x01
+#define CMD_BROADCAST_GET_DEV_ID    0x01
+#define CMD_COLD_RESET              0x02
+#define CMD_WARM_RESET              0x03
+#define CMD_GET_SELF_TEST_RESULTS   0x04
+#define CMD_MFG_TEST_ON             0x05
+#define CMD_SET_ACPI_PWR_STATE      0x06
+#define CMD_GET_ACPI_PWR_STATE      0x07
+#define CMD_GET_DEV_GUID            0x08
+#define CMD_GET_NETFN_SUP           0x09
+#define CMD_GET_CMD_SUP             0x0A
+#define CMD_GET_SUBFN_SUP           0x0B
+#define CMD_GET_CONFIG_CMDS         0x0C
+#define CMD_GET_CONFIG_SUB_FNS      0x0D
+
+
+#define CMD_SET_CMD_ENABLES         0x60
+#define CMD_GET_CMD_ENABLES         0x61
+#define CMD_SET_SUBFN_ENABLES       0x62
+#define CMD_GET_SUBFN_ENABLES       0x63
+#define CMD_GET_OEM_NETFN_IANA_SUPPORT   0x64
+
+
+#define CMD_RESET_WDT               0x22
+#define CMD_SET_WDT                 0x24
+#define CMD_GET_WDT                 0x25
+
+#define CMD_SET_BMC_GBL_ENABLES     0x2E
+#define CMD_GET_BMC_GBL_ENABLES     0x2F
+#define CMD_CLR_MSG_FLAGS           0x30
+#define CMD_GET_MSG_FLAGS           0x31
+#define CMD_ENBL_MSG_CH_RCV         0x32
+#define CMD_GET_MSG                 0x33
+#define CMD_SEND_MSG                0x34
+#define CMD_READ_EVT_MSG_BUFFER     0x35
+#define CMD_GET_BTIFC_CAP           0x36
+#define CMD_GET_SYSTEM_GUID         0x37
+#define CMD_GET_CH_AUTH_CAP         0x38
+#define CMD_GET_SESSION_CHALLENGE   0x39
+#define CMD_ACTIVATE_SESSION        0x3A
+#define CMD_SET_SESSION_PRIV_LEVEL  0x3B
+#define CMD_CLOSE_SESSION           0x3C
+#define CMD_GET_SESSION_INFO        0x3D
+#define CMD_GET_AUTH_CODE           0x3F
+#define CMD_SET_CH_ACCESS           0x40
+#define CMD_GET_CH_ACCESS           0x41
+#define CMD_GET_CH_INFO             0x42
+#define CMD_SET_USER_ACCESS         0x43
+#define CMD_GET_USER_ACCESS         0x44
+#define CMD_SET_USER_NAME           0x45
+#define CMD_GET_USER_NAME           0x46
+#define CMD_SET_USER_PASSWORD       0x47
+#define CMD_MASTER_WRITE_READ       0x52
+
+#define CMD_ACTIVATE_PAYLOAD        0x48
+#define CMD_DEACTIVATE_PAYLOAD      0x49
+#define CMD_GET_PAYLD_ACT_STATUS    0x4A
+#define CMD_GET_PAYLD_INST_INFO     0x4B
+#define CMD_SET_USR_PAYLOAD_ACCESS  0x4C
+#define CMD_GET_USR_PAYLOAD_ACCESS  0x4D
+#define CMD_GET_CH_PAYLOAD_SUPPORT  0x4E
+#define CMD_GET_CH_PAYLOAD_VER      0x4F
+#define CMD_GET_CH_OEM_PAYLOAD_INFO 0x50
+#define CMD_GET_CH_CIPHER_SUITES    0x54
+#define CMD_SUS_RES_PAYLOAD_ENCRYPT 0x55
+#define CMD_SET_CH_SECURITY_KEYS    0x56
+#define CMD_GET_SYS_IFC_CAPS        0x57
+
+#define CMD_SET_SYSTEM_INFO_PARAM   0x58
+#define CMD_GET_SYSTEM_INFO_PARAM   0x59
+#endif  /* IPMI_APP_H */
+

+ 234 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_AppDevice+.h

@@ -0,0 +1,234 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * IPMI_App.h
+ * AppDevice Commands Handler
+ *
+ * Author: Govind Kothandapani <govindk@ami.com>
+ *       : Rama Bisa <ramab@ami.com>
+ *       : Basavaraj Astekar <basavaraja@ami.com>
+ *       : Bakka Ravinder Reddy <bakkar@ami.com>
+ *
+ *****************************************************************/
+#ifndef IPMI_APPDEV_PLUS_H
+#define IPMI_APPDEV_PLUS_H
+
+#include "stdint.h"
+
+#pragma pack( 1 )
+
+/*** Macro Definitions ***/
+#define MAX_PLD_ENABLES     4
+
+/* ActivatePayloadReq_T */
+typedef struct
+{
+    uint8_t   PayldType;
+    uint8_t   PayldInst;
+    uint8_t   AuxData [4];
+
+}    ActivatePayloadReq_T;
+
+/* ActivatePayloadRes_T */
+typedef struct
+{
+
+    uint8_t   CompletionCode;
+    uint8_t   AuxData [4];
+    uint16_t  InboundPayldSize;
+    uint16_t  OutboundPayldSize;
+    uint16_t  UDPPort;
+    uint16_t  VLANNo;
+
+}    ActivatePayloadRes_T;
+
+/* DeactivatePayloadReq_T */
+typedef struct
+{
+    uint8_t   PayldType;
+    uint8_t   PayldInst;
+    uint8_t   AuxData [4];
+
+}    DeactivatePayloadReq_T;
+
+/* GetPayldActStatRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   InstCap;
+    uint16_t  ActivatedInst;
+
+}    GetPayldActStatRes_T;
+
+/* GetPayldInstInfoReq_T */
+typedef struct 
+{
+    uint8_t   PayldType;
+    uint8_t   PayldInst;
+
+}    GetPayldInstInfoReq_T;
+
+/* GetPayldInstInfoRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  SessionID;
+    uint8_t   SpecificInfo [8];
+
+}    GetPayldInstInfoRes_T;
+
+/* SetUsrPayldAccReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   UserId;
+    uint8_t   PayloadEnables [MAX_PLD_ENABLES];
+
+}    SetUsrPayldAccReq_T;
+
+/* SetUsrPayldAccRes_T */
+typedef struct
+{
+    uint8_t CompletionCode;
+
+}    SetUsrPayldAccRes_T;
+
+
+/* GetUsrPayldAccReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   UserId;
+
+}    GetUsrPayldAccReq_T;
+
+/* GetUsrPayldAccRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   PayloadEnables [MAX_PLD_ENABLES];
+
+}    GetUsrPayldAccRes_T;
+
+
+/* GetChPayldSupRes_T */
+typedef struct
+{
+
+    uint8_t   CompletionCode;
+    uint8_t   StdPldtype1;
+    uint8_t   StdPldtype2;
+    uint8_t   SessStpPldtype1;
+    uint8_t   SessStpPldtype2;
+    uint8_t   OemPldtype1;
+    uint8_t   OemPldtype2;
+    uint16_t  Rsvd;
+
+}    GetChPayldSupRes_T;
+
+/* GetChPayldVerReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   PayloadNum;
+
+}    GetChPayldVerReq_T;
+
+/* GetChPayldVerRes_T */
+typedef struct
+{
+
+    uint8_t   CompletionCode;
+    uint8_t   FormatVer;
+
+}    GetChPayldVerRes_T;
+
+/* GetChOemPayldInfoReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   PayloadNum;
+    uint8_t   OemIANA [3];
+    uint8_t   OemPyldId [2];
+
+}    GetChOemPayldInfoReq_T;
+
+/* GetChOemPayldInfoRes_T */
+typedef struct
+{
+
+    uint8_t   CompletionCode;
+    uint8_t   PayloadNum;
+    uint8_t   OemIANA [3];
+    uint8_t   OemPyldId [2];
+    uint8_t   FormatVer;
+
+}    GetChOemPayldInfoRes_T;
+
+/* SusResPayldEncryptReq_T */
+typedef struct
+{
+    uint8_t   PayldType;
+    uint8_t   PayldInst;
+    uint8_t   Operation;
+
+}    SusResPayldEncryptReq_T;
+
+/* SetChSecurityKeysReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   Operation;
+    uint8_t   KeyID;
+
+}    SetChSecurityKeysReq_T;
+
+/* SetChSecurityKeysRes_T */
+typedef struct
+{
+
+    uint8_t   CompletionCode;
+    uint8_t   LockStatus;
+
+}    SetChSecurityKeysRes_T;
+
+/* GetSysIfcCapsRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Rsrvd;
+
+}    GetSysIfcCapsRes_T;
+
+/* GetChCipherSuitesReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   PayloadType;
+    uint8_t   ListIndex;
+
+}    GetChCipherSuitesReq_T;
+
+/* GetChCipherSuitesRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelNum;
+
+}    GetChCipherSuitesRes_T;
+
+#pragma pack( )
+
+#endif /* IPMI_APPDEV_PLUS_H */

+ 617 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_AppDevice.h

@@ -0,0 +1,617 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ *****************************************************************
+ *
+ * IPMI_App.h
+ * AppDevice Commands Handler
+ *
+ * Author: Govind Kothandapani <govindk@ami.com>
+ *       : Rama Bisa <ramab@ami.com>
+ *       : Basavaraj Astekar <basavaraja@ami.com>
+ *       : Bakka Ravinder Reddy <bakkar@ami.com>
+ *
+ *****************************************************************/
+#ifndef IPMI_APPDEV_H
+#define IPMI_APPDEV_H
+
+#include "com_IPMIDefs.h"
+
+/*** Macro definition ***/
+#define CHALLENGE_STR_LEN       16
+#define AUTH_CODE_LEN           16
+#define MAX_APP_CONF_PARAM				4
+#define MIN_SYSINFO_OEM_CONF_PARAM		192
+#define MAX_SYSINFO_OEM_CONF_PARAM		255
+
+/* Added to Support IPMI v2.0/RMCP+ Integrity Algorithm Number */ 
+#define AUTH_CODE_HASH_LEN      20 
+#define HASH_DATA_LEN           16 
+#define  MAX_I2C_BUFFER_SIZE    50
+#define IPMI15_MAX_PASSWORD_LEN 16
+#define SIXTEEN_COUNT_WINDOW_LEN 16
+#define SEQNUM_ROLLOVER 0xFFFFFFFF
+#define RMCPPLUS_SEQLOWLIMIT 16
+#define RMCPPLUS_SEQUPLIMIT 15
+#define EIGHT_COUNT_WINDOW_LEN 8
+#define	MAX_FW_VER_LENGTH  	254
+#define MAX_SYS_NAME_LENGTH	254
+#define MAX_PRIM_OS_NAME_LENGTH 254
+#define MAX_OS_NAME_LENGTH	254
+#define MAX_BLOCK_SIZE			16
+
+#define SYS_INFO_SET_COMPLETE    0x00
+#define SYS_INFO_SET_IN_PROGRESS 0x01
+#define SYS_INFO_COMMIT_WRITE	 0x02
+#define PARAM_PRESENT_REVISION   0x11
+#define PARAM_OLDER_REVISION 	 0x00
+
+#define SET_IN_PROGRESS_PARAM	0x00
+#define SYS_FW_VERSION_PARAM	0x01
+#define SYS_NAME_PARAM			0x02
+#define PRIM_OS_NAME_PARAM		0x03
+#define OS_NAME_PARAM			0x04
+#define MAX_PARAM_SELECTOR		OS_NAME_PARAM +1 /* Last Parameter + 1 */
+
+#define GET_PARAM_REV_ONLY		0x80
+
+
+
+
+#pragma pack( 1 )
+
+/* SetWDTReq_T */
+typedef struct
+{
+    uint8_t   TmrUse;
+    uint8_t   TmrActions;
+    uint8_t   PreTimeOutInterval;
+    uint8_t   ExpirationFlag;
+    uint16_t  InitCountDown;
+
+} SetWDTReq_T;
+
+/* GetWDTRes_T */
+typedef struct
+{
+    uint8_t       CompletionCode;
+    SetWDTReq_T CurrentSettings;
+    uint16_t      PresentCountDown;
+
+}   GetWDTRes_T;
+
+/* GetBMCGblEnblRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   BMCGblEnblByte;
+
+} GetBMCGblEnblRes_T;
+
+/* ClearMsgsFlagReq_T */
+typedef struct
+{
+    uint8_t   Flag;
+}   ClearMsgsFlagReq_T;
+
+/* GetMsgFlagsRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   MsgFlags;
+
+} GetMsgFlagsRes_T;
+
+/* EnblMsgChRcvReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   ChannelState;
+
+}   EnblMsgChRcvReq_T;
+
+/* EnblMsgChRcvRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelNum;
+    uint8_t   ChannelState;
+
+}   EnblMsgChRcvRes_T;
+
+/* GetMsgRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelNum;
+
+}   GetMsgRes_T;
+
+/* SendMsgReq_T */
+typedef struct
+{
+    uint8_t   ChNoTrackReq;
+
+}   SendMsgReq_T;
+
+/* SendMsgRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ResData;
+
+}   SendMsgRes_T;
+
+/* ReadEvtMsgBufRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ResData[16];
+
+}   ReadEvtMsgBufRes_T;
+
+/* GetBTIfcCapRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   NumReqSupported;
+    uint8_t   InputBufSize;
+    uint8_t   OutputBufSize;
+    uint8_t   RespTime;
+    uint8_t   Retries;
+
+}   GetBTIfcCapRes_T;
+
+/* GetSysGUIDRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Node[6];
+    uint16_t  ClockSeq;
+    uint16_t  TimeHigh;
+    uint16_t  TimeMid;
+    uint32_t  TimeLow;
+
+}   GetSysGUIDRes_T;
+
+/* GetChAuthCapReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   PrivLevel;
+
+}   GetChAuthCapReq_T;
+
+/* GetChAuthCapRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelNum;
+    uint8_t   AuthType;
+    uint8_t   PerMsgUserAuthLoginStatus;
+    uint8_t   ExtCap;
+    uint8_t   OEMID[3];
+    uint8_t   OEMAuxData;
+
+}   GetChAuthCapRes_T;
+
+/* GetSesChallengeReq_T */
+typedef struct
+{
+    uint8_t   AuthType;
+    uint8_t   UserName[16];
+
+}   GetSesChallengeReq_T;
+
+/* GetSesChallengeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  TempSessionID;
+    uint8_t   ChallengeString[16];
+
+}   GetSesChallengeRes_T;
+
+/* ActivateSesReq_T */
+typedef struct
+{
+    uint8_t   AuthType;
+    uint8_t   Privilege;
+    uint8_t   ChallengeString[CHALLENGE_STR_LEN];
+    uint32_t  OutboundSeq;
+
+}   ActivateSesReq_T;
+
+/* ActivateSesRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   AuthType;
+    uint32_t  SessionID;
+    uint32_t  InboundSeq;
+    uint8_t   Privilege;
+
+}   ActivateSesRes_T;
+
+/* SetSesPrivLevelReq_T */
+typedef struct
+{
+    uint8_t   Privilege;
+
+}   SetSesPrivLevelReq_T;
+
+/* SetSesPrivLevelRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Privilege;
+
+}   SetSesPrivLevelRes_T;
+
+/* GetSesInfoReq_T */
+typedef struct
+{
+    uint8_t   SessionIndex;
+    uint8_t   SessionHandleOrID [4];
+
+}   GetSesInfoReq_T;
+
+/* LANSesInfoRes_T */
+typedef struct
+{
+    uint8_t    IPAddress[4];
+    uint8_t    MACAddress[6];
+    uint16_t   PortNumber;
+
+}   LANSesInfoRes_T;
+
+/* SerialSesInfoRes_T */
+typedef struct
+{
+    uint8_t    SessionActivityType;
+    uint8_t    DestinationSelector;
+    uint8_t    IPAddress[4];
+    uint16_t   PortNumber;
+
+}   SerialSesInfoRes_T;
+
+/* Union SessionInfoRes_T */
+typedef union
+{
+    LANSesInfoRes_T     LANSesInfo;
+    SerialSesInfoRes_T  SerialSesInfo;
+
+}   SessionInfoRes_T;
+
+/* ActiveSesInfo_T */
+typedef struct
+{
+    uint8_t       UserID;
+    uint8_t       Privilege;
+    uint8_t       ChannelNum;
+
+}   ActiveSesInfo_T;
+
+/* GetSesInfoRes_T */
+typedef struct
+{
+    uint8_t               CompletionCode;
+    uint8_t               SessionHandle;
+    uint8_t               NumPossibleActiveSession;
+    uint8_t               NumActiveSession;
+    ActiveSesInfo_T     ActiveSesinfo;
+    SessionInfoRes_T    SesInfo;
+
+}   GetSesInfoRes_T;
+
+/* LANIPv6SesInfoRes_T */
+typedef struct
+{
+    uint8_t    IPv6Address[16];
+    uint8_t    MACAddress[6];
+    uint16_t   PortNumber;
+
+}   LANIPv6SesInfoRes_T;
+
+/* CloseSesReq_T */
+typedef struct
+{
+    uint32_t  SessionID;
+    uint8_t   SessionHandle;
+
+}   CloseSesReq_T;
+
+/* GetAuthCodeReq_T */
+typedef struct
+{
+    uint8_t   AuthType;
+    uint8_t   ChannelNum;
+    uint8_t   UserID;
+    uint8_t   HashData[HASH_DATA_LEN];
+
+}   GetAuthCodeReq_T;
+
+
+/* GetAuthCodeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   AuthCode[AUTH_CODE_HASH_LEN];
+
+}   GetAuthCodeRes_T;
+
+/* SetChAccessReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   ChannelAccess;
+    uint8_t   Privilege;
+
+}   SetChAccessReq_T;
+
+typedef struct
+{
+	uint8_t		CompletionCode;
+}   SetChAccessRes_T;
+
+/* GetChAccessReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   AccessFlag;
+
+}   GetChAccessReq_T;
+
+/* GetChAccessRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelAccess;
+    uint8_t   Privilege;
+
+}   GetChAccessRes_T;
+
+typedef struct
+{
+	uint8_t ChannelNum;
+}   GetChInfoReq_T;
+
+/* GetChInfoRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ChannelNum;
+    uint8_t   ChannelMedium;
+    uint8_t   ChannelProtocol;
+    uint8_t   SessionActiveSupport;
+    uint8_t   VendorID[3];
+    uint8_t   AuxiliaryInfo[2];
+
+}   GetChInfoRes_T;
+
+/* SetUserAccessReq_T */
+typedef struct
+{
+    uint8_t   ChannelNoUserAccess;
+    uint8_t   UserID;
+    uint8_t   AccessLimit;
+    uint8_t   SessionLimit;
+
+}   SetUserAccessReq_T;
+
+typedef struct
+{
+    uint8_t CompletionCode;
+}   SetUserAccessRes_T;
+
+
+/* GetUserAccessReq_T */
+typedef struct
+{
+    uint8_t   ChannelNum;
+    uint8_t   UserID;
+
+}   GetUserAccessReq_T;
+
+/* GetUserAccessRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   MaxNoUserID;
+    uint8_t   CurrentUserID;
+    uint8_t   FixedUserID;
+    uint8_t   ChannelAccess;
+
+}   GetUserAccessRes_T;
+
+/* SetUserNameReq_T */
+typedef struct
+{
+    uint8_t   UserID;
+    uint8_t   UserName[MAX_USERNAME_LEN];
+
+}   SetUserNameReq_T;
+
+typedef struct
+{
+    uint8_t   CompletionCode;
+}   SetUserNameRes_T;
+
+
+/*GetUserNameReq_T*/
+typedef struct
+{
+    uint8_t   UserID;
+}   GetUserNameReq_T;
+
+
+/* GetUserNameRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   UserName[MAX_USERNAME_LEN];
+
+}   GetUserNameRes_T;
+
+
+
+/* SetUserPswdReq_T */
+typedef struct
+{
+    uint8_t   UserID;
+    uint8_t   Operation;
+    uint8_t   Password[MAX_PASSWORD_LEN];
+
+}   SetUserPswdReq_T;
+
+/* SetUserPswdReq_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+}   SetUserPswdRes_T;
+
+/* MasterWriteReadReq_T */
+typedef struct
+{
+    uint8_t   BusTypeChNo;
+    uint8_t   SlaveAddress;
+    uint8_t   ReadCount;
+    uint8_t   Data[MAX_I2C_BUFFER_SIZE];
+
+}   MasterWriteReadReq_T;
+
+/* MasterWriteReadRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Data[MAX_I2C_BUFFER_SIZE];
+
+}   MasterWriteReadRes_T;
+
+typedef struct 
+{
+    uint8_t       TypeOfEncoding ;
+    uint8_t       StringLength;
+    uint8_t       SysFWVersionName[MAX_FW_VER_LENGTH];
+}  SysFWVersion_T;
+typedef struct
+{
+    uint8_t    TypeOfEncoding_Sys_Name;
+    uint8_t    StringLength_Sys_Name;
+    uint8_t    SystemName[MAX_SYS_NAME_LENGTH];
+}   SysName_T;
+typedef struct 
+{
+    uint8_t    TypeOfEncoding_PrimaryOSName;
+    uint8_t    StringLength_PrimaryOSName;
+    uint8_t    PrimaryOperatingSystemName[MAX_PRIM_OS_NAME_LENGTH];
+}   PrimaryOSName_T;
+typedef struct 
+{
+    uint8_t    TypeOfEncoding_OSName;
+    uint8_t    StringLength_OSName;
+    uint8_t   OSName[MAX_OS_NAME_LENGTH];
+}  OSName_T;
+
+typedef struct 
+{
+    uint8_t   SetSelector;
+    uint8_t   SysFWVersion[MAX_BLOCK_SIZE];
+}   SysVerInfo_T;
+
+typedef struct 
+{
+
+    uint8_t   SetSelector;
+    uint8_t    SysName[MAX_BLOCK_SIZE];
+
+}   SysNameInfo_T;
+
+typedef struct {
+
+    uint8_t    SetSelector;
+    uint8_t    PrimaryOSName[MAX_BLOCK_SIZE];
+
+}   PrimOSInfo_T;
+
+
+typedef struct {
+
+    uint8_t   SetSelector;
+    uint8_t   OperatingSystemName[MAX_BLOCK_SIZE];
+
+}   OSInfo_T;
+
+typedef union {
+
+    uint8_t   SetInProgress;
+    SysVerInfo_T    SysVerInfo;
+    SysNameInfo_T   SysNameInfo;
+    PrimOSInfo_T    PrimOSInfo;
+    OSInfo_T    OSInfo;
+}    SysInfoUN_T	;
+
+
+/* GetSystemInfoParamReq_T */
+typedef struct
+{
+    uint8_t   ParamRev;
+    uint8_t   ParamSelector;
+    uint8_t   SetSelector;
+    uint8_t   BlockSelector;
+
+}   GetSystemInfoParamReq_T;
+
+
+/* GetSystemInfoParamRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   ParamRevision;
+    SysInfoUN_T     SysInfo;
+
+}   GetSystemInfoParamRes_T;
+
+/* GetSystemInfoParamOEMRes_T */
+typedef struct
+{
+    uint8_t           CompletionCode;
+    uint8_t           ParamRevision;
+    /* OEM Info */
+}   GetSystemInfoParamOEMRes_T;
+
+
+/* SetSystemInfoParamReq_T */
+typedef struct
+{
+    uint8_t   		ParamSelector;
+    SysInfoUN_T		SysInfo;
+}   SetSystemInfoParamReq_T;
+
+
+/* SetSystemInfoParamRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+}   SetSystemInfoParamRes_T;
+
+/* SetSystemInfoParamOEMReq_T */
+typedef struct
+{
+    uint8_t   ParamSelector;
+    /* OEM parameter */
+}   SetSystemInfoParamOEMReq_T;
+
+#pragma pack( )
+
+#endif /* IPMI_APPDEV_H */

+ 41 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Chassis.h

@@ -0,0 +1,41 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ ******************************************************************
+ *
+ * IPMI_Chassis.h
+ * Chassis Command numbers
+ *
+ ******************************************************************/
+
+#ifndef IPMI_CHASSIS_H
+#define IPMI_CHASSIS_H
+
+/*** Chassis Commands ***/
+#define CMD_GET_CHASSIS_CAPABILITIES           0x00
+#define CMD_GET_CHASSIS_STATUS                 0x01
+#define CMD_CHASSIS_CONTROL                    0x02
+#define CMD_CHASSIS_RESET                      0x03
+#define CMD_CHASSIS_IDENTIFY                   0x04
+#define CMD_SET_CHASSIS_CAPABILITIES           0x05
+#define CMD_SET_POWER_RESTORE_POLICY           0x06
+#define CMD_GET_SYSTEM_RESTART_CAUSE           0x07
+#define CMD_SET_SYSTEM_BOOT_OPTIONS            0x08
+#define CMD_GET_SYSTEM_BOOT_OPTIONS            0x09
+#define CMD_SET_FP_BTN_ENABLES                 0x0A
+#define CMD_GET_POH_COUNTER                    0x0F
+#define CMD_SET_POWER_CYCLE_INTERVAL		   0x0B
+
+
+#endif /* IPMI_CHASSIS_H	*/

+ 411 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_ChassisDevice.h

@@ -0,0 +1,411 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ * ipmi_chassis.h
+ * IPMI chassis Request and Response structures
+ *
+ *  Author: Rama Bisa <ramab@ami.com>
+ *
+ ******************************************************************/
+#ifndef IPMI_CHASSIS_DEVICE_H
+#define IPMI_CHASSIS_DEVICE_H
+
+
+#ifndef uint8_t
+  #define uint8_t unsigned char
+#endif
+#ifndef uint16_t
+  #define uint16_t unsigned short
+#endif
+#ifndef uint32_t
+  #define uint32_t unsigned long
+#endif
+
+#pragma pack( 1 )
+
+/*** Definitions and Macros ***/
+#define MAX_BOOT_INIT_MAILBOX_BLOCKS      5
+#define MAX_BOOT_INIT_MAILBOX_BLOCK_SIZE  16
+
+#define CHASSIS_IDENTITY_STATE_INFO_SUPPORTED	0x40
+#define CHASSIS_IDENTITY_INDEFINITE_ON 		0x20
+#define CHASSIS_IDENTITY_TIMED_ON  		0x10
+#define CHASSIS_IDENTITY_OFF 			0x00
+
+
+/**
+ * @struct ChassisCapabilities_T
+ * @brief Chassis capabilities
+ **/
+typedef struct
+{
+    uint8_t    CapabilitiesFlags;
+    uint8_t    FRUInfoAddr;
+    uint8_t    SDRDeviceAddr;
+    uint8_t    SELDeviceAddr;
+    uint8_t    SMDeviceAddr;
+    uint8_t    ChassBridgeFn;
+
+}   ChassisCapabilities_T;
+
+/**
+ * @struct ChassisPowerState_T
+ * @brief Chassis Power state
+ **/
+typedef struct
+{
+    uint8_t                   PowerState;
+    uint8_t                   LastPowerEvent;
+    uint8_t                   MiscChassisState;
+    uint8_t                   FPBtnEnables;
+}   ChassisPowerState_T;
+
+/**
+ * @struct AMI_BootOpt_T
+ * @brief AMI specific Boot options
+ **/
+typedef struct
+{
+    uint8_t       Data1;
+    uint8_t       Data2;
+    
+}   AMI_BootOpt_T;
+
+/* GetChassisCapabilitiesRes_T */
+typedef struct
+{
+    uint8_t                   CompletionCode;
+    ChassisCapabilities_T   ChassisCapabilities;
+    
+}   GetChassisCapabilitiesRes_T;
+
+/* GetChassisStatusRes_T */
+typedef struct
+{
+    uint8_t                   CompletionCode;
+    ChassisPowerState_T     ChassisPowerState;
+    
+}   GetChassisStatusRes_T;
+
+/* ChassisControlReq_T */
+typedef struct
+{
+    uint8_t  ChassisControl;
+    
+}   ChassisControlReq_T;
+
+/* ChassisControlRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    
+}   ChassisControlRes_T;
+
+/* ChassisIdentifyReq_T */
+typedef struct
+{
+    uint8_t IdentifyInterval;
+    uint8_t ForceIdentify;
+
+}   ChassisIdentifyReq_T;
+
+/* ChassisIdentifyRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    
+}   ChassisIdentifyRes_T;
+
+/* SetChassisCapabilitiesReq_T */
+typedef struct
+{
+    ChassisCapabilities_T   ChassisCaps;
+    
+}   SetChassisCapabilitiesReq_T;
+
+/* SetChassisCapabilitiesRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    
+}   SetChassisCapabilitiesRes_T;
+
+/* SetPowerRestorePolicyReq_T */
+typedef struct
+{
+    uint8_t   PowerRestorePolicy;
+    
+}   SetPowerRestorePolicyReq_T;
+
+/* SetPowerRestorePolicyRes_T */
+typedef struct
+{
+    uint8_t  CompletionCode;
+    uint8_t  PowerRestorePolicy;
+    
+}   SetPowerRestorePolicyRes_T;
+
+/* GetSystemRestartCauseRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   SysRestartCause;
+    uint8_t   ChannelID;
+    
+}   GetSystemRestartCauseRes_T;
+
+/* GetPOHCounterRes_T */
+typedef struct
+{   
+    uint8_t           CompletionCode;
+    uint8_t           MinutesPerCount;
+    uint32_t          POHCounterReading;
+    
+}   GetPOHCounterRes_T;
+
+/* BootInfoAck_T */
+typedef struct
+{
+    uint8_t WriteMask;
+    uint8_t BootInitiatorAckData;
+    
+}   BootInfoAck_T;
+
+/* BootFlags_T */
+typedef struct
+{
+    uint8_t    BootFlagsValid;
+    uint8_t    Data2;
+    uint8_t    Data3;
+    uint8_t    Data4;
+    uint8_t    Data5;
+    
+}   BootFlags_T;
+
+/* BootInitiatorInfo_T */
+typedef struct
+{
+    uint8_t   BootSource;
+    uint8_t   SessionID [4];
+    uint8_t   BootInfoTimestamp [4];
+    
+}   BootInitiatorInfo_T;
+
+/* BootInitiatorMailbox_T */
+typedef struct 
+{
+    uint8_t BlockData [MAX_BOOT_INIT_MAILBOX_BLOCK_SIZE];
+    
+}   BootInitiatorMailbox_T;
+
+/* BootInitiatorMboxReq_T */
+typedef struct
+{
+    uint8_t   BlockSel;
+    BootInitiatorMailbox_T  BootMBox;
+    
+}   BootInitiatorMboxReq_T;
+
+#define DEFAULT_BOT_DEV_NUM 0x1
+#define DEFAULT_BOT_DEV_INFO_SIZE   60
+#define ANCH_STR_LEN        4
+#define IP_ADDR_LEN         4
+#define CFG_SCR_NAME_LEN    48
+#define CHAS_GUID_LEN       16
+#define SCT_RSV_LEN         28
+
+/* OemParamBlkSizeTbl_T */
+typedef struct
+{
+    uint8_t   AnchorStr[ANCH_STR_LEN]; /* Header */
+    uint8_t   Checksum;
+    uint8_t   MajorRev;
+    uint8_t   MinorRev;
+    uint16_t  Len;
+    uint8_t   Reserved1;
+    uint8_t   SysIfcBlkSize;           /* Data */
+    uint8_t   Reserved2;
+    uint8_t   IPMBIfcBlkSize;
+    uint8_t   Reserved3;
+    uint8_t   LANIfcBlkSize;
+    uint8_t   Reserved4;
+}  OemParamBlkSizeTbl_T;
+
+/* BootOrderTbl_T */
+typedef struct
+{
+    uint8_t   AnchorStr[ANCH_STR_LEN]; /* Header */
+    uint8_t   BOTChecksum;
+    uint8_t   BOTMajorRev;
+    uint8_t   BOTMinorRev;
+    uint16_t  Len;
+    uint8_t   Reserved;
+    uint8_t   UpdFlag;                 /* Data */
+    uint8_t   *BootOrderInfo;
+    uint8_t   OrderType;
+    uint8_t   OrderLen;
+    uint8_t   *DevOrderList;
+    uint8_t   *DevNamePath;
+}  BootOrderTbl_T;
+
+/* BootOrderTblReq_T */
+typedef struct
+{
+    uint8_t          BlockSel;
+    BootOrderTbl_T BootOrderTbl;
+}  BootOrderTblReq_T;
+
+/* SlotConfigTbl_T */
+typedef struct
+{
+    uint8_t   AnchorStr[ANCH_STR_LEN]; /* Header */
+    uint8_t   SCTChecksum;
+    uint8_t   SCTMajorRev;
+    uint8_t   SCTMinorRev;
+    uint16_t  Len;
+    uint8_t   Reserved1;
+    uint8_t   NICIP[IP_ADDR_LEN];      /* Data */
+    uint8_t   NICNetmask[IP_ADDR_LEN];
+    uint8_t   NICGateway[IP_ADDR_LEN];
+    uint16_t  MgmtVLAN;
+    uint8_t   MgmtIP[IP_ADDR_LEN];
+    uint8_t   ConfigScriptName[CFG_SCR_NAME_LEN];
+    uint8_t   ChassisGUID[CHAS_GUID_LEN];
+    uint16_t  ConfigBootType;
+    uint16_t  TFTPPort;
+    uint16_t  SFTPPort;
+    uint16_t  SCPort;
+    uint8_t   Reserved2[SCT_RSV_LEN];
+}  SlotConfigTbl_T;
+
+/* BootOptParams_T */
+typedef union 
+{
+    uint8_t                   SetInProgress;
+    uint8_t                   ServicePartitionSelector; 
+    uint8_t                   ServicePartitionScan;
+    uint8_t                   BootFlagValidBitClearing;
+    BootInfoAck_T           BootInfoAck;
+    BootFlags_T             BootFlags;
+    BootInitiatorInfo_T     BootInitiatorInfo;
+    BootInitiatorMboxReq_T  BootMailBox;
+    AMI_BootOpt_T           Oem;
+    OemParamBlkSizeTbl_T    OemParamBlkSizeTbl;
+    BootOrderTblReq_T       BootOrderTbl;
+    uint8_t                   BootDevSelector;
+    SlotConfigTbl_T         SlotConfigTbl;
+} BootOptParams_T;
+
+/* SetBootOptionsReq_T */
+typedef struct
+{
+    uint8_t               ParamValidCumParam;
+    BootOptParams_T     BootParam;
+    
+}   SetBootOptionsReq_T;
+
+/* SetBootOptionsRes_T */
+typedef struct
+{
+    uint8_t               CompletionCode;
+    
+}   SetBootOptionsRes_T;
+
+/* BootOptions_T */
+typedef struct
+{
+    uint8_t                   ParameterValid;
+	uint8_t          			u8SetInProgress;    			/**< Set in progess variable */
+    uint8_t                   ServicePartitionSelector; 
+    uint8_t                   ServicePartitionScan;
+    uint8_t                   BootFlagValidBitClearing;
+    BootInfoAck_T           BootInfoAck;
+    BootFlags_T             BootFlags;
+    BootInitiatorInfo_T     BootInitiatorInfo;
+    BootInitiatorMailbox_T  BootMailBox[MAX_BOOT_INIT_MAILBOX_BLOCKS];
+    AMI_BootOpt_T           Oem;
+    OemParamBlkSizeTbl_T    OemParamBlkSizeTbl;
+    BootOrderTbl_T          *BootOrderTbl;
+    uint8_t                   BootDevSelector;
+    SlotConfigTbl_T         SlotConfigTbl;
+}   BootOptions_T;
+
+/* GetBootOptionsReq_T */
+typedef struct
+{
+    uint8_t       ParamSel;
+    uint8_t       SetSel;
+    uint8_t       BlockSel;
+    
+}   GetBootOptionsReq_T;
+
+/* GetBootOptParams_T */
+typedef union
+{
+    uint8_t                   SetInProgress;  
+    uint8_t                   ServicePartitionSelector; 
+    uint8_t                   ServicePartitionScan;
+    uint8_t                   BootFlagValidBitClearing;
+    BootInfoAck_T           BootInfoAck;
+    BootFlags_T             BootFlags;
+    BootInitiatorInfo_T     BootInitiatorInfo;
+    BootInitiatorMboxReq_T  BootMailBox;
+    AMI_BootOpt_T           Oem;
+    OemParamBlkSizeTbl_T    OemParamBlkSizeTbl;
+    BootOrderTblReq_T       BootOrderTbl;
+    uint8_t                   BootDevSelector;
+    SlotConfigTbl_T         SlotConfigTbl;
+} GetBootOptParams_T;
+
+/* GetBootOptionsRes_T */
+typedef struct 
+{
+    uint8_t               CompletionCode;
+    uint8_t               ParamVersion;
+    uint8_t               ParameterValid;
+    GetBootOptParams_T  BootParams;
+    
+}   GetBootOptionsRes_T;
+
+/* SetFPBtnEnablesReq_T */
+typedef struct
+{
+    uint8_t   ButtonEnables;
+
+}  SetFPBtnEnablesReq_T;
+
+/* SetFPBtnEnablesRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}  SetFPBtnEnablesRes_T;
+
+/* SetPowerCycleInteval Req */
+typedef struct
+{
+    uint8_t   PowerCycleInterval;
+    
+}   SetPowerCycleIntervalReq_T;
+
+/* SetPowerRestorePolicyRes_T */
+typedef struct
+{
+    uint8_t  CompletionCode;
+    
+}   SetPowerCycleIntervalRes_T;
+
+#pragma pack( )
+
+#endif /* IPMI_CHASSIS_DEVICE*/

+ 301 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_FRU.h

@@ -0,0 +1,301 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ ******************************************************************
+ *
+ * ipmi_fru.h
+ * IPMI fru structures
+ *
+ *  Author: Rama Bisa <govindk@ami.com>
+ *
+ ******************************************************************/
+#ifndef IPMI_FRU_H
+#define IPMI_FRU_H
+
+#include <stdint.h>
+
+#define FRU_COMMON_HEADER           1
+#define FRU_INTERNAL_USE_AREA       2
+#define FRU_CHASSIS_INFO_AREA       3
+#define FRU_BOARD_INFO_AREA         4
+#define FRU_PRODUCT_INFO_AREA       5
+#define FRU_MULTI_RECORD_AREA       6
+#define FRU_MULTI_RECORD_HEADER     FRU_MULTI_RECORD_AREA
+#define FRU_MULTI_RECORD_DATA       7
+
+#define FRU_END_OF_RECORD           0xF
+
+#define FRU_BLOCK_SIZE              8
+
+#pragma pack(1)
+
+/* FRUInventoryAreaInfoReq_T */
+typedef struct
+{
+    uint8_t FRUDeviceID;  /* 0xff is reserved */
+
+}   FRUInventoryAreaInfoReq_T;
+
+
+/* FRUInventoryAreaInfoRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  Size;
+    uint8_t   DeviceAccessMode;
+
+}   FRUInventoryAreaInfoRes_T;
+
+
+/* FRUReadReq_T */
+typedef struct
+{
+    uint8_t   FRUDeviceID;
+    uint16_t  Offset;
+    uint8_t   CountToRead;
+
+}   FRUReadReq_T;
+
+
+/* FRUReadRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   CountReturned;
+
+}   FRUReadRes_T;
+
+
+/* FRUWriteReq_T */
+typedef struct
+{
+    uint8_t   FRUDeviceID;
+    uint16_t  Offset;
+
+}   FRUWriteReq_T;
+
+
+/* FRUWriteRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   CountWritten;
+
+}   FRUWriteRes_T;
+
+/**************************************************************/
+/* FRU Data structures */
+/**************************************************************/
+
+/* Common Header */
+typedef struct
+{
+    uint8_t   CommonHeaderFormatVersion;
+    uint8_t   InternalUseAreaStartOffset; /* In multiple of 8 bytes. 0 means area not present */
+    uint8_t   ChassisInfoAreaStartOffset; /* In multiple of 8 bytes. 0 means area not present */
+    uint8_t   BoardInfoAreaStartOffset; 	/* In multiple of 8 bytes. 0 means area not present */
+    uint8_t   ProductInfoAreaStartOffset; /* In multiple of 8 bytes. 0 means area not present */
+    uint8_t   MultiRecordAreaStartOffset; /* In multiple of 8 bytes. 0 means area not present */
+    uint8_t   PAD;			/* 0x00 */
+    uint8_t   ZeroChecksum;		/* Common Header Zero checksum */
+}   FRUCommonHeader_T;
+
+/* Internal Use Area */
+typedef struct
+{
+    uint8_t   FormatVersion;
+    uint8_t   *Data;
+}   FRUInternalInfo_T;
+
+/* Chassis Info Area */
+typedef enum
+{
+    Other = 0x01,
+    ChassisUnknown,
+    Desktop,
+    LowProfileDesktop,
+    PizzaBox,
+    MiniTower,
+    Tower,
+    Portable,
+    LapTop,
+    Notebook,
+    HandHeld,
+    DockingStation,
+    AllinOne,
+    SubNotebook,
+    SpaceSaving,
+    LunchBox,
+    MainServerChassis,
+    ExpansionChassis,
+    SubChassis,
+    BusExpansionChassis,
+    PeripheralChassis,
+    RAIDChassis,
+    RackMountChassis
+} ChassisType_T;
+
+typedef struct
+{
+    uint8_t		ChassisInfoAreaFormatVersion;
+    uint8_t		ChassisInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		*ChassisType;
+    uint8_t   		ChassisPartNumTypeLength;
+    uint8_t   		*ChassisPartNum;
+    uint8_t   		ChassisSerialNumTypeLength;
+    uint8_t   		*ChassisSerialNum;
+    uint8_t   		**CustomFields;
+    uint8_t           Total_Chassis_CustomField;
+}   FRUChassisInfo_T;
+
+/* Board Info Area */
+typedef enum
+{
+    English = 0
+} LanguageType_T;
+
+typedef struct
+{
+    uint8_t		BoardInfoAreaFormatVersion;
+    uint8_t		BoardInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		Language;
+    uint8_t   		MfgDateTime[3];
+    uint8_t   		BoardMfrTypeLength;
+    uint8_t   		*BoardMfr;
+    uint8_t   		BoardProductNameTypeLength;
+    uint8_t   		*BoardProductName;
+    uint8_t   		BoardSerialNumTypeLength;
+    uint8_t   		*BoardSerialNum;
+    uint8_t   		BoardPartNumTypeLength;
+    uint8_t   		*BoardPartNum;
+    uint8_t   		FRUFileIDTypeLength;
+    uint8_t   		*FRUFileID;
+    uint8_t   		**CustomFields;
+    uint8_t           Total_Board_CustomField;
+
+}   FRUBoardInfo_T;
+
+/* Product Info Area */
+typedef struct
+{
+    uint8_t		ProductInfoAreaFormatVersion;
+    uint8_t		ProductInfoAreaLength;	/* In multiple of 8 bytes. */
+    uint8_t		Language;
+    uint8_t   		MfrNameTypeLength;
+    uint8_t   		*MfrName;
+    uint8_t   		ProductNameTypeLength;
+    uint8_t   		*ProductName;
+    uint8_t   		ProductPartNumTypeLength;
+    uint8_t   		*ProductPartNum;
+    uint8_t   		ProductVersionTypeLength;
+    uint8_t   		*ProductVersion;
+    uint8_t   		ProductSerialNumTypeLength;
+    uint8_t   		*ProductSerialNum;
+    uint8_t   		AssetTagTypeLength;
+    uint8_t   		*AssetTag;
+    uint8_t   		FRUFileIDTypeLength;
+    uint8_t   		*FRUFileID;
+    uint8_t   		**CustomFields;
+    uint8_t           Total_Product_CustomField;
+}   FRUProductInfo_T;
+
+/* MultiRecord Area */
+
+typedef enum
+{
+    PowerSupplyInformation,
+    DCOutput,
+    DCLoad,
+    ManagementAccessRecord,
+    BaseCompatibilityRecord,
+    ExtendedCompatibilityRecord
+} RecordType_T;
+
+typedef struct
+{
+    uint16_t	OverallCapacity;
+    uint16_t	PeakVA;
+    uint8_t	InrushCurrent;
+    uint8_t	InrushIntervalinMSecs;
+    uint16_t	LowEndInVoltageRange1;	/* 10mV */
+    uint16_t	HighEndInVoltageRange1;	/* 10mV */
+    uint16_t	LowEndInVoltageRange2;	/* 10mV. 0 if single range */
+    uint16_t	HighEndInVoltageRange2;	/* 10mV. 0 if single range */
+    uint8_t	LowEndInFreqRange;
+    uint8_t	HighEndInFreqRange;
+    uint8_t	ACDropoutToleranceinMSecs;
+    uint8_t	FlagsPolarity;
+    uint16_t	PeakWattage;
+    uint8_t	CombinedWattage[3];
+    uint8_t	TechMtrLowerThresh;
+}   PowerSupplyInformation_T;
+
+typedef struct
+{
+    uint8_t	OutputInfo;
+    uint16_t	NominalVoltage;		/* 10mV */
+    uint16_t	MaxNegVolDeviation;	/* 10mV */
+    uint16_t	MaxPosVolDeviation;	/* 10mV */
+    uint16_t	RippleNoise;		/* mV */
+    uint16_t	MinCurrentDraw;		/* mA */
+    uint16_t	MaxCurrentDraw;		/* mA */
+}   DCOutput_T;
+
+typedef struct
+{
+    uint8_t	VoltageReqd;
+    uint16_t	NominalVoltage;		/* 10mV */
+    uint16_t	SpecdMinVoltage;	/* 10mV */
+    uint16_t	SpecdMaxVoltage;	/* 10mV */
+    uint16_t	SpecdRippleNoise;	/* mV */
+    uint16_t	MinCurrentLoad;		/* mA */
+    uint16_t	MaxCurrentLoad;		/* mA */
+}   DCLoad_T;
+
+typedef struct
+{
+    uint8_t		RecordTypeID;
+    uint8_t		RecordFormatVersionEOL;
+    uint8_t		RecordLength;
+    uint8_t		RecordChecksum;	/* zero checksum */
+    uint8_t		HeaderChecksum;	/* zero checksum */
+    uint8_t		*RecordData;
+}   MultiRecordHeader_T;
+
+typedef struct
+{
+    MultiRecordHeader_T	RecordHeader;
+    uint8_t		*RecordData;
+}   Record_T;
+
+#define	MAX_MULTIRECORDS	64
+typedef struct
+{
+    Record_T	MultiRecordsData[MAX_MULTIRECORDS];
+}   FRUMultiRecordInfo_T;
+
+/* Complete FRU Data */
+typedef struct
+{
+    FRUCommonHeader_T   	CommonHeader;
+    FRUInternalInfo_T		InternalInfo;
+    FRUChassisInfo_T		ChassisInfo;
+    FRUBoardInfo_T			BoardInfo;
+    FRUProductInfo_T		ProductInfo;
+    FRUMultiRecordInfo_T 	MultiRecordInfo;
+}   FRUData_T;
+
+#pragma pack()
+
+#endif  /* IPMI_FRU_H */

+ 307 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_IPM.h

@@ -0,0 +1,307 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * IPMI_IPM.h
+ * IPMDevice Commands Handler
+ *
+ * Author: Govind Kothandapani <govindk@ami.com>
+ *       : Rama Bisa <ramab@ami.com>
+ *       : Basavaraj Astekar <basavaraja@ami.com>
+ *       : Bakka Ravinder <Reddy bakkar@ami.com>
+ *
+ *****************************************************************/
+#ifndef IPMI_IPMDEV_H
+#define IPMI_IPMDEV_H
+#include <stdint.h>
+
+
+#pragma pack( 1 )
+
+/*** Macro Definitions ***/
+/**
+ * @def DEVICE_ID
+ * @brief Device ID
+ **/
+#define DEVICE_ID                       0x20
+/**
+ * @def SDR_SUPPORT
+ * @brief SDR support bit flag 
+ **/
+#define SDR_SUPPORT                     0x80    
+/**
+ * @def DEV_REVISION                    
+ * @brief Device Revision 
+ **/
+#define DEV_REVISION                    0x01    
+#define IPMI_DEV_REVISION               DEV_REVISION
+/**
+ * @def DEV_AVAILABLE                   
+ * @brief Device availability bit flag
+ **/
+#define DEV_AVAILABLE                   0x80
+/**
+ * @def IPMI_VERSION
+ * @brief IPMI version
+ **/
+#define IPMI_VERSION                    0x02
+/**
+ * @def CHASSIS_DEVICE_SUPPORT          
+ * @brief Chassis Device support bit flag
+ **/
+#define CHASSIS_DEVICE_SUPPORT          ( CHASSIS_DEVICE << 7 )
+/**
+ * @def BRIDGE_COMMAND_SUPPORT          
+ * @brief Bridge Device support bit flag
+ **/
+#define BRIDGE_COMMAND_SUPPORT          ( BRIDGE_DEVICE << 6 )
+/**
+ * @def IPMB_EVENT_GENERATOR_SUPPORT    
+ * @brief IPMB Event generator support bit flag 
+ **/
+#define IPMB_EVENT_GENERATOR_SUPPORT    ( EVENT_GENERATOR << 5 )
+/**
+ * @def IPMB_EVENT_RECEIVER_SUPPORT     
+ * @brief IPMB Event receiver support bit flag 
+ **/
+#define IPMB_EVENT_RECEIVER_SUPPORT     ( EVENT_RECEIVER << 4 )
+/**
+ * @def FRU_INVENTORY_DEVICE_SUPPORT    
+ * @brief FRU Device support bit flag 
+ **/
+#define FRU_INVENTORY_DEVICE_SUPPORT    ( FRU_DEVICE << 3 )
+/**
+ * @def SEL_DEVICE_SUPPORT              
+ * @brief SEL Device support bit flag 
+ **/
+#define SEL_DEVICE_SUPPORT              ( SEL_DEVICE << 2 )
+/**
+ * @def SDR_REPOSITORY_DEVICE_SUPPORT   
+ * @brief SDR Device support bit flag
+ **/
+#define SDR_REPOSITORY_DEVICE_SUPPORT   ( SDR_DEVICE << 1 )
+/**
+ * @def SENSOR_DEVICE_SUPPORT           
+ * @brief Sensor Device support bit flag 
+ **/
+#define SENSOR_DEVICE_SUPPORT           ( SENSOR_DEVICE )
+
+#define DEV_SUPPORT                     CHASSIS_DEVICE_SUPPORT          | BRIDGE_COMMAND_SUPPORT        | \
+                                        IPMB_EVENT_GENERATOR_SUPPORT    | IPMB_EVENT_RECEIVER_SUPPORT   | \
+                                        FRU_INVENTORY_DEVICE_SUPPORT    | SEL_DEVICE_SUPPORT            | \
+                                        SDR_REPOSITORY_DEVICE_SUPPORT   | SENSOR_DEVICE_SUPPORT 
+/**
+ * @def MFG_ID_AMI                      
+ * @brief IANA number for AMI 
+ **/
+#define MFG_ID_AMI                      {0x00,0x00,0x00}    
+/**
+ * @def PROD_ID_AMI_PM                  
+ * @brief AMI Product ID {'E','M'} 
+ **/
+#define PROD_ID_AMI_PM                  0x0000
+
+/**
+ * @def DEV_GUID_NODE                   
+ * @brief node - Mac Address 
+ **/
+#define DEV_GUID_NODE                   {0x45,0xDF,0x44,0xAC,0x25,0xD4} 
+/**
+ * @def DEV_GUID_CLOCK_SEQ              
+ * @brief GUID Clolck Sequenbce
+ **/
+#define DEV_GUID_CLOCK_SEQ              0xB24A  
+/**
+ * @def DEV_GUID_TIME_HIGH
+ * @brief GUID Time High 
+ **/
+#define DEV_GUID_TIME_HIGH              0x48F3  
+/**
+ * @def DEV_GUID_TIME_MID               
+ * @brief GUID Time Mid 
+ **/
+#define DEV_GUID_TIME_MID               0x4F46  
+/**
+ * @def DEV_GUID_TIME_LOW               
+ * @brief GUID Time Low 
+ **/
+#define DEV_GUID_TIME_LOW               0xBD2C300A 
+
+/**
+ * @def GST_NO_ERROR
+ * @brief Error Code for Get Self Test Results
+ **/
+#define GST_NO_ERROR                    0x55 
+/**
+ * @def GST_CORRUPTED_DEVICES           
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_CORRUPTED_DEVICES           0x57 
+/**
+ * @def GST_CANNOT_ACCESS_SEL           
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_CANNOT_ACCESS_SEL           0x80 
+/**
+ * @def GST_CANNOT_ACCESS_SDR           
+ * @brief Error code for Get Self Test Results
+ **/
+#define GST_CANNOT_ACCESS_SDR           0x40
+/**
+ * @def GST_CANNOT_ACCESS_FRU           
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_CANNOT_ACCESS_FRU           0x20 
+/**
+ * @def GST_IPMB_DO_NOT_RESPOND         
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_IPMB_DO_NOT_RESPOND         0x10 
+/**
+ * @def GST_SDR_EMPTY
+ * @brief Error code for Get Self Test Results
+ **/
+#define GST_SDR_EMPTY                   0x08 
+/**
+ * @def GST_FRU_CORRUPTED               
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_FRU_CORRUPTED               0x04 
+/**
+ * @def GST_BBLK_CORRUPTED              
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_BBLK_CORRUPTED              0x02 
+/**
+ * @def GST_FIRMWARE_CORRUPTED          
+ * @brief Error code for Get Self Test Results 
+ **/
+#define GST_FIRMWARE_CORRUPTED          0x01 
+
+/**
+ * @def IPMI_ACPI_S0                    
+ * @brief ACPI State
+ **/
+#define IPMI_ACPI_S0                    0x00    
+/**
+ * @def IPMI_ACPI_S1                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_S1                    0x01    
+/**
+ * @def IPMI_ACPI_S2
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_S2                    0x02    
+/**
+ * @def IPMI_ACPI_S3                    
+ * @brief ACPI State
+ **/
+#define IPMI_ACPI_S3                    0x03    
+/**
+ * @def IPMI_ACPI_S4                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_S4                    0x04
+/**
+ * @def IPMI_ACPI_S5                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_S5                    0x05    
+/**
+ * @def IPMI_ACPI_S4_S5                 
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_S4_S5                 0x06    
+/**
+ * @def IPMI_ACPI_G3                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_G3                    0x07
+/**
+ * @def IPMI_ACPI_LEGACY_ON
+ * @brief ACPI State
+ **/
+#define IPMI_ACPI_LEGACY_ON             0x20
+
+/**
+ * @def IPMI_ACPI_LEGACY_OFF
+ * @brief ACPI State
+ **/
+#define IPMI_ACPI_LEGACY_OFF            0x21
+
+/**
+ * @def IPMI_ACPI_SLEEPING_S1_S3                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_SLEEPING_S1_S3        0x08
+/**
+ * @def IPMI_ACPI_G1_SLEPPING_S1_S4                    
+ * @brief ACPI State 
+ **/
+#define IPMI_ACPI_G1_SLEPPING_S1_S4     0x09
+
+/**
+ * @def IPMI_S5_OVERRIDE
+ * @brief ACPI State 
+ **/
+#define IPMI_S5_OVERRIDE                0x0A
+
+/* GetDevIDRes_T */
+typedef struct {
+    uint8_t   CompletionCode;
+    uint8_t   DeviceID;
+    uint8_t   DevRevision;
+    uint8_t   FirmwareRevision1;
+    uint8_t   FirmwareRevision2;
+    uint8_t   IPMIVersion;
+    uint8_t   DevSupport;
+    uint8_t   MfgID[3];
+    uint16_t  ProdID;
+    uint32_t  AuxFirmwareRevision;
+}  GetDevIDRes_T;
+
+/* GetSelfTestRes_T */
+typedef struct {
+    uint8_t   CompletionCode;
+    uint8_t   TestResultByte1;
+    uint8_t   TestResultByte2;
+}  GetSelfTestRes_T;
+
+/* SetACPIPwrStateReq_T */
+typedef struct {
+    uint8_t   ACPISysPwrState;
+    uint8_t   ACPIDevPwrState;
+}  SetACPIPwrStateReq_T;
+
+/* getACPIPwrStateRes_T */
+typedef struct {
+    uint8_t   CompletionCode;
+    uint8_t   ACPISysPwrState;
+    uint8_t   ACPIDevPwrState;
+}  GetACPIPwrStateRes_T;
+
+/* GetDevGUIDRes_T */
+typedef struct {
+    uint8_t   CompletionCode;
+    uint8_t   Node[6];
+    uint16_t  ClockSeq;
+    uint16_t  TimeHigh;
+    uint16_t  TimeMid;
+    uint32_t  TimeLow;
+}  GetDevGUIDRes_T;
+
+#pragma pack( )
+
+#endif /* IPMI_IPMDEV_H */

+ 68 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_IPMB.h

@@ -0,0 +1,68 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * IPMI_IPMB.H
+ * IPMB IPMI related structures
+ *
+ * Author: Rama Bisa <ramab@ami.com>
+ *
+ *
+ *****************************************************************/
+#ifndef IPMI_IPMB_H
+#define IPMI_IPMB_H
+#include <stdint.h>
+#include <com_IPMIDefs.h>
+#pragma pack( 1 )
+
+/**
+ * @struct IPMIEvtMsgHdr_T
+ * @brief IPMI Event Message Header. 
+**/
+typedef struct
+{
+    IPMIMsgHdr_T    IPMIMsgHdr;
+    uint8_t   EvMRev;
+    uint8_t   SensorType;
+    uint8_t   SensorNum;
+    uint8_t   Ev_Type_Dir;
+    uint8_t   EventData1;
+    uint8_t   EventData2;
+    uint8_t   EventData3;
+    uint8_t   ChkSum;
+}    IPMIEvtMsgHdr_T;
+
+
+/**
+ * @struct EvtRecord_T
+ * @brief Event Record structure.
+**/
+typedef struct 
+{
+    uint8_t	GeneratorID;
+    uint8_t	EvMRev;			/**< Event Message format version. */
+    uint8_t	SensorType;		/**< Sensor Type Code. */
+    uint8_t	SensorNum;		/**< Number of sensor that generated the event.	*/
+    uint8_t	Ev_Type_Dir;	/**< [7]   - 0b = Assertion event	
+    						 		   - 1b = Deassertion event.
+    						     [6:0] - Event Type Code.   */
+    uint8_t	EventData1;		/**< Event Data Field Contents.	*/
+    uint8_t	EventData2;		/**< Event Data Field Contents.	*/
+    uint8_t	EventData3;		/**< Event Data Field Contents.	*/
+
+}    EvtRecord_T;
+
+#pragma pack( )
+
+#endif /* IPMI_IPMB_H */

+ 187 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_PEF.h

@@ -0,0 +1,187 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ ***    (C)Copyright 2005-2006, American Megatrends Inc.       **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ *****************************************************************
+ *
+ * ipmi_PEF.h
+ * AppDevice Commands Handler
+ *
+ * Author: Govind Kothandapani <govindk@ami.com>
+ *       : Rama Bisa <ramab@ami.com>
+ *       : Basavaraj Astekar <basavaraja@ami.com>
+ *       : Bakka Ravinder Reddy bakkar@ami.com>
+ *
+ *****************************************************************/
+#ifndef IPMI_PEFDEV_H
+#define IPMI_PEFDEV_H
+
+#include <stdint.h>
+#pragma pack( 1 )
+
+#define ALERT_STR_MAX_BLOCKS                0x3
+#define ALERT_STR_BLOCK_SIZE                0x10
+#define MAX_ALERT_ENTRIES		127
+#define MAX_PEF_ENTRIES			127
+#define MAX_ALERT_STRING_LENGTH  48
+#define MAX_PEF_CONF_PARAM 					0x0F
+#define MIN_PEF_OEM_CONF_PARAM				96
+#define MAX_PEF_OEM_CONF_PARAM				127
+
+/**
+ * @struct EvtFilterTblEntry_T
+ * @brief Event Filter table entry format.
+**/
+typedef struct
+{
+    uint8_t   FilterConfig;           /**< Filter configuration. */
+    uint8_t   EvtFilterAction;        /**< Filter Action. */
+    uint8_t   AlertPolicyNum;         /**< Alert Policy Number. */
+    uint8_t   EventSeverity;          /**< Event Severity. */
+    uint8_t   GenIDByte1;             /**< Event Gen ID Byte 1. */
+    uint8_t   GenIDByte2;             /**< Channel Number/LUN. */
+    uint8_t   SensorType;             /**< Sensor Type. */
+    uint8_t   SensorNum;              /**< Sensor Number. */
+    uint8_t   EventTrigger;           /**< Event Trigger Reading, 0xff - match any. */
+    uint16_t  EventData1OffsetMask;   /**< Event Data1 offset Mask. */
+    uint8_t   EventData1ANDMask;      /**< Event Data1 offset AND Mask. */
+    uint8_t   EventData1Cmp1;         /**< Event Data1 Compare 1 Mask. */
+    uint8_t   EventData1Cmp2;         /**< Event Data1 Compare 2 Mask. */
+    uint8_t   EventData2ANDMask;      /**< Event Data1 offset AND Mask. */
+    uint8_t   EventData2Cmp1;         /**< Event Data1 Compare 1 Mask. */
+    uint8_t   EventData2Cmp2;         /**< Event Data1 Compare 2 Mask. */
+    uint8_t   EventData3ANDMask;      /**< Event Data1 offset AND Mask. */
+    uint8_t   EventData3Cmp1;         /**< Event Data1 Compare 1 Mask. */
+    uint8_t   EventData3Cmp2;         /**< Event Data1 Compare 2 Mask. */
+
+}   EvtFilterTblEntry_T;
+
+
+/**
+ * @struct AlertPolicyTblEntry_T
+ * @brief Alert Policy Entry structure
+**/
+typedef struct
+{
+    uint8_t   AlertNum;           /**< Alert policy no. */
+    uint8_t   ChannelDestSel;     /**< Destination selector. */
+    uint8_t   AlertStingkey;      /**< Alert String key. */
+
+}   AlertPolicyTblEntry_T;
+
+
+/**
+ * @struct AlertStringTbl_T
+ * Alert String Table
+**/
+typedef struct
+{
+    uint8_t   EventFilterSel;
+    uint8_t   AlertStringSet;
+    uint8_t   AlertString [ALERT_STR_MAX_BLOCKS] [ALERT_STR_BLOCK_SIZE];
+
+}   AlertStringTbl_T;
+
+
+/* GetPEFCapRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   PEFVersion;
+    uint8_t   ActionSupport;
+    uint8_t   TotalEntries;
+
+}   GetPEFCapRes_T;
+
+/* ArmPEFTmrRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   PresentTmrVal;
+
+}   ArmPEFTmrRes_T;
+
+/* GetPEFConfigReq_T */
+typedef struct
+{
+    uint8_t   ParamSel;
+    uint8_t   SetSel;
+    uint8_t   BlockSel;
+
+}   GetPEFConfigReq_T;
+
+/* GetPEFConfigRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   PEFVersion;
+}   GetPEFConfigRes_T;
+
+/* SetLastEvtIDReq_T */
+typedef struct 
+{
+    uint8_t   SetRecIDType;
+    uint16_t  RecordID;
+
+}   SetLastEvtIDReq_T;
+
+/* GetLastEvtIDRes_T */
+typedef struct 
+{
+    uint8_t   CompletionCode;     
+    uint32_t  RecentTimestamp;    
+    uint16_t  LastSELRecord;      
+    uint16_t  LastSWProcessedID;  
+    uint16_t  LastBMCProcessedID; 
+
+}   GetLastEvtIDRes_T;
+
+/* AlertImmReq_T */
+typedef struct 
+{
+    uint8_t   ChannelNo;      
+    uint8_t   DestSel;        
+    uint8_t   AlertStrSel;    
+    uint8_t   GenID ;
+    uint8_t   EvMRev;
+    uint8_t   SensorType;
+    uint8_t   SensorNum;
+    uint8_t   EvtDirType;
+    uint8_t   EvtData1;
+    uint8_t   EvtData2;
+    uint8_t   EvtData3;
+
+}   AlertImmReq_T;
+
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Status;
+
+}   AlertImmRes_T;
+
+/* PETAckReq_T */
+typedef struct 
+{
+    uint16_t  SequenceNum;    
+    uint32_t  Timestamp;      
+    uint8_t   EventSrcType;
+    uint8_t   SensorDevice;   
+    uint8_t   SensorNum;      
+    uint8_t   EventData1;     
+    uint8_t   EventData2;     
+    uint8_t   EventData3; 
+}   PETAckReq_T;
+
+#pragma pack( )
+
+#endif /* IPMI_PEFDEV_H */

+ 183 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SDR.h

@@ -0,0 +1,183 @@
+/*****************************************************************
+ *****************************************************************
+ ***                                                            **
+ ***    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ ***                                                            **
+ ***            All Rights Reserved.                            **
+ ***                                                            **
+ ***        6145-F, Northbelt Parkway, Norcross,                **
+ ***                                                            **
+ ***        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ ***                                                            **
+ *****************************************************************
+ *****************************************************************
+ ******************************************************************
+ *
+ * ipmi_sdr.c
+ * IPMI SDR Record
+ *
+ *  Author: Govind Kothandapani <govindk@ami.com>
+ *
+ ******************************************************************/
+#ifndef IPMI_SDR_H
+#define IPMI_SDR_H
+
+//#include "main.h"
+
+
+/*** External Definitions ***/
+#define INVALID_RECORD_ID                   0x00
+#define OVERFLOW_FLAG                       0x80
+
+#pragma pack( 1 )
+
+
+
+
+
+
+
+/* ReserveSDRRepositoryRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  ReservationID;
+
+}   ReserveSDRRepositoryRes_T;
+
+
+/* GetSDRReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    uint8_t   Offset;
+    uint8_t   Size;
+
+}   GetSDRReq_T;
+
+
+/* GetSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  NextRecID;
+
+}   GetSDRRes_T;
+
+
+/* AddSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+
+}   AddSDRRes_T;
+
+
+/* PartialAddSDRReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    uint8_t   Offset;
+    uint8_t   Progress;
+
+}   PartialAddSDRReq_T;
+
+/* PartialAddSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+
+}   PartialAddSDRRes_T;
+
+/* DeleteSDRReq_T */
+typedef struct 
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    
+}   DeleteSDRReq_T;
+
+
+/* DeleteSDRRes_T */
+typedef struct 
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+    
+}   DeleteSDRRes_T;
+
+
+/* ClearSDRReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint8_t   CLR [3];
+    uint8_t   InitOrStatus;
+
+}   ClearSDRReq_T;
+
+
+/* ClearSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   EraseProgress;
+
+}   ClearSDRRes_T;
+
+
+/* GetSDRRepositoryTimeRes_T  */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  Time;
+
+}   GetSDRRepositoryTimeRes_T;
+
+
+/* SetSDRRepositoryTimeReq_T */
+typedef struct
+{
+    uint32_t  Time;
+
+}   SetSDRRepositoryTimeReq_T;
+
+
+/* EnterSDRUpdateModeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   EnterSDRUpdateModeRes_T;
+
+
+/* ExitSDRUpdateModeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   ExitSDRUpdateModeRes_T;
+
+
+/* RunInitAgentReq_T */
+typedef struct
+{
+    uint8_t   RunStatus;
+
+}   RunInitAgentReq_T;
+
+
+/* RunInitAgentRes_T  */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Status;
+
+}   RunInitAgentRes_T;
+
+#pragma pack()
+#endif  /* IPMI_SDR_H */

+ 447 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SDRRecord.h

@@ -0,0 +1,447 @@
+/*****************************************************************
+ *****************************************************************
+ ***                                                            **
+ ***    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ ***                                                            **
+ ***            All Rights Reserved.                            **
+ ***                                                            **
+ ***        6145-F, Northbelt Parkway, Norcross,                **
+ ***                                                            **
+ ***        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ ***                                                            **
+ *****************************************************************
+ *****************************************************************
+ *****************************************************************
+ ******************************************************************
+ *
+ * SDRRecord.h
+ * SDR record structures.
+ *
+ *  Author: Govind Kothandapani <govindk@ami.com>
+ *
+ ******************************************************************/
+#ifndef IPMI_SDR_RECORD_H
+#define IPMI_SDR_RECORD_H
+
+#include "com_IPMIDefs.h"
+
+#ifndef uint8_t
+  #define uint8_t unsigned char
+#endif
+#ifndef uint16_t
+  #define uint16_t unsigned short
+#endif
+#ifndef uint32_t
+  #define uint32_t unsigned long
+#endif
+
+#ifndef int8_t
+  #define int8_t signed char
+#endif
+#ifndef int16_t
+  #define int16_t signed short
+#endif
+#ifndef int32_t
+  #define int32_t signed long
+#endif
+
+#pragma pack( 1 )
+
+/**
+ * @brief SDR Type
+**/
+#define FULL_SDR_REC                    0x01
+#define COMPACT_SDR_REC                 0x02
+#define EVENT_ONLY_SDR_REC              0x03
+#define ENTITY_ASSOCIATION_SDR_REC      0x08
+#define DEV_REL_ENTITY_ASSOCIATION_SDR_REC 0x09
+#define GENERIC_DEVICE_LOCATOR_SDR_REC  0x10
+#define FRU_DEVICE_LOCATOR_SDR_REC      0x11
+#define MGMT_CTRL_DEV_LOCATOR_SDR_REC   0x12
+#define MGMT_CTRL_CONFIRMATION_SDR_REC  0x13
+#define BMC_MSG_CHANNEL_INFO_REC        0x14  
+#define OEM_SDRFRU_REC                  0xD0
+#define OEM_SDRNM_REC                   0xC0
+
+/**
+ * @struct SDRRecHdr_T
+ * @brief SDR Record Header
+**/
+typedef struct
+{
+    uint16_t  ID;
+    uint8_t   Version;
+    uint8_t   Type;
+    uint8_t   Len;
+
+} SDRRecHdr_T;
+
+
+/**
+ * @struct FullSensorRec_T
+ * @brief Full Sensor Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           OwnerID;
+    uint8_t           OwnerLUN;
+    uint8_t           SensorNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           SensorInit;
+    uint8_t           SensorCaps;
+    uint8_t           SensorType;
+    uint8_t           EventTypeCode;
+    uint16_t          AssertionEventMask;
+    uint16_t          DeAssertionEventMask;
+    uint16_t          DiscreteReadingMask;
+    uint8_t           Units1;
+    uint8_t           Units2;
+    uint8_t           Units3;
+    uint8_t           Linearization;
+    uint8_t           M;
+    uint8_t           M_Tolerance;
+    uint8_t           B;
+    uint8_t           B_Accuracy;
+    uint8_t           Accuracy;
+    uint8_t           R_B_Exp;
+    uint8_t           Flags;
+    uint8_t           NominalReading;
+    uint8_t           NormalMax;
+    uint8_t           NormalMin;
+    uint8_t           MaxReading;
+    uint8_t           MinReading;
+    uint8_t           UpperNonRecoverable;
+    uint8_t           UpperCritical;
+    uint8_t           UpperNonCritical;
+    uint8_t           LowerNonRecoverable;
+    uint8_t           LowerCritical;
+    uint8_t           LowerNonCritical;
+    uint8_t           PositiveHysterisis;
+    uint8_t           NegativeHysterisis;
+    uint8_t           Reserved1;
+    uint8_t           Reserved2;
+    uint8_t           OEMField;
+    uint8_t           IDStrTypeLen;
+    int8_t           IDStr [MAX_ID_STR_LEN];
+
+}    FullSensorRec_T;
+
+/**
+ * @struct CompactSensorRec_T
+ * @brief Compact Sensor Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           OwnerID;
+    uint8_t           OwnerLUN;
+    uint8_t           SensorNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           SensorInit;
+    uint8_t           SensorCaps;
+    uint8_t           SensorType;
+    uint8_t           EventTypeCode;
+    uint16_t          AssertionEventMask;
+    uint16_t          DeAssertionEventMask;
+    uint16_t          DiscreteReadingMask;
+    uint8_t           Units1;
+    uint8_t           Units2;
+    uint8_t           Units3;
+    uint16_t          RecordSharing;
+    uint8_t           PositiveHysteris;
+    uint8_t           NegativeHysterisis;
+    uint8_t           Reserved1;
+    uint8_t           Reserved2;
+    uint8_t           Reserved3;
+    uint8_t           OEMField;
+    uint8_t           IDStrTypeLen;
+    int8_t           IDStr [MAX_ID_STR_LEN];
+
+}    CompactSensorRec_T;
+
+/**
+ * @struct
+ * @brief Common structure for both Full and Compact sensor Record.
+ */
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           OwnerID;
+    uint8_t           OwnerLUN;
+    uint8_t           SensorNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           SensorInit;
+    uint8_t           SensorCaps;
+    uint8_t           SensorType;
+    uint8_t           EventTypeCode;
+    uint16_t          AssertionEventMask;
+    uint16_t          DeAssertionEventMask;
+    uint16_t          DiscreteReadingMask;
+    uint8_t           Units1;
+    uint8_t           Units2;
+    uint8_t           Units3;
+}   CommonSensorRec_T;
+
+/**
+ * @struct EvtOnlySensorRec_T
+ * @brief Event only Sensor Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           OwnerID;
+    uint8_t           OwnerLUN;
+    uint8_t           SensorNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           SensorType;
+    uint8_t           EventTypeCode;
+    uint16_t          RecordSharing;
+    uint8_t           Reserved1;
+    uint8_t           OEMField;
+    uint8_t           IDStrTypeLen;
+    char            IDStr [MAX_ID_STR_LEN];
+}    EvtOnlySensorRec_T;
+
+/**
+ * @struct MgmtCtrlrConfirmRec_T
+ * @brief Management Controller Confirmation Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           DevSlaveAddr;
+    uint8_t           DevID;
+    uint8_t           ChannelNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           FirmwareRev1;
+    uint8_t           FirmwareRev2;
+    uint8_t           IPMIVer;
+    uint8_t           MftrID [3];
+    uint8_t           ProdID [2];
+    uint8_t           DevGUID [MAX_ID_STR_LEN];
+
+}    MgmtCtrlrConfirmRec_T;
+
+
+/**
+ * @struct MgmtCtrlrDevLocator_T
+ * @brief Management Controller Device Locator Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           DevSlaveAddr;
+    uint8_t           ChannelNum;
+
+    /* RECORD BODY BYTES */
+    uint8_t           PowerStateNotification;
+    uint8_t           DeviceCaps;
+    uint8_t           reserved [3];
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           OEMField;
+    uint8_t           IDStrLen;
+    int8_t           DevIdStr [MAX_ID_STR_LEN];
+
+}    MgmtCtrlrDevLocator_T;
+
+
+/**
+ * @struct GnrcDevLocatorRec_T
+ * @brief Generic Device Locator Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           DevAccessAddr;
+    uint8_t           DevSlaveAddr;
+    uint8_t           LUNBusID;
+
+    /* RECORD BODY BYTES */
+    uint8_t           AddrSpan;
+    uint8_t           Reserved;
+    uint8_t           DevType;
+    uint8_t           DevTypeModifier;
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           OEMField;
+    uint8_t           IDStrLen;
+    int8_t           DevIdStr [MAX_ID_STR_LEN];
+
+}    GnrcDevLocatorRec_T;
+
+/**
+ * @struct FRUcDevLocatorRec_T
+ * @brief FRU Device Locator Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD KEY BYTES */
+    uint8_t           DevAccessAddr;
+    uint8_t           FRUIDSlaveAddr;
+    uint8_t           AccessLUNBusID;
+    uint8_t           ChannelNumber;
+
+    /* RECORD BODY BYTES */
+    uint8_t           Reserved;
+    uint8_t           DevType;
+    uint8_t           DevTypeModifier;
+    uint8_t           EntityID;
+    uint8_t           EntityIns;
+    uint8_t           OEMField;
+    uint8_t           IDStrLen;
+    int8_t           DevIdStr [MAX_ID_STR_LEN];
+
+}    FRUDevLocatorRec_T;
+
+/**
+ * @struct OEM_FRURec_T
+ * @brief OEM FRU Record Info
+**/
+typedef struct
+{
+    /*SENSOR RECORD HEADER*/
+    SDRRecHdr_T   hdr;
+
+    /*RECORD BODY BYTES*/
+    uint8_t        Mfg_ID1;
+    uint8_t        Mfg_ID2;
+    uint8_t        Mfg_ID3;
+    uint8_t        OEM_Fru;
+    uint8_t        DeviceID;
+    uint16_t       Size;
+    uint8_t        AccessType;
+    uint8_t        EntityID;
+    uint8_t        EntityIns;
+    uint8_t        IDStrLen;
+    int8_t        FilePath[MAX_FRU_SDR_STR_SIZE];
+
+}   OEM_FRURec_T;
+
+/**
+ * @struct OEM_NMRec_T
+ * @brief OEM NM Record Info
+**/
+typedef struct
+{
+
+  /*SENSOR RECORD HEADER */
+  SDRRecHdr_T hdr;
+
+  /*RECORD BODY BYTES*/
+  uint8_t  Mfg_ID1;
+  uint8_t  Mfg_ID2;
+  uint8_t  Mfg_ID3;
+  uint8_t  RecordSubType;
+  uint8_t  VersionNo;
+  uint8_t  NMDevSlaveAddress;
+  uint8_t  ChannelNumber;
+  uint8_t  NMHealthEvtSensor;
+  uint8_t  NMExceptionEvtSensor;
+  uint8_t  NMOpCapSensor;
+  uint8_t  NMAlertThresExSensor;
+
+}  OEM_NMRec_T;
+
+
+/**
+ * @struct BMCMsgChannelInfoRec_T
+ * @brief BMC Mesage Channel info Record
+**/
+typedef struct
+{
+    /* SENSOR RECORD HEADER */
+    SDRRecHdr_T     hdr;
+
+    /* RECORD BODY BYTES */
+    uint8_t           MsgChannel0Info;
+    uint8_t           MsgChannel1Info;
+    uint8_t           MsgChannel2Info;
+    uint8_t           MsgChannel3Info;
+    uint8_t           MsgChannel4Info;
+    uint8_t           MsgChannel5Info;
+    uint8_t           MsgChannel6Info;
+    uint8_t           MsgChannel7Info;
+    uint8_t           MessagingINTType;
+    uint8_t           EvtMsgBufINTType;
+    uint8_t           Reserved;
+
+}    BMCMsgChannelInfoRec_T;
+
+
+/**
+ * @struct SDRRec_T
+ * @brief Complete unionized record structure with unions for
+ *        easy reference to different types
+**/
+typedef union {
+		SDRRecHdr_T					hdr;
+        FullSensorRec_T 			full_sensor_rec;
+        CompactSensorRec_T 			compact_sensor_rec;
+        MgmtCtrlrConfirmRec_T 		mc_confim_rec;
+        MgmtCtrlrDevLocator_T 		mc_dev_locator_rec;
+        GnrcDevLocatorRec_T  		gen_dev_locator_rec;
+        FRUDevLocatorRec_T  		fru_dev_locator_rec;
+        BMCMsgChannelInfoRec_T 		bmc_msg_chnl_info_rec;
+} SDRRec_T;
+
+//typedef struct
+//{
+//    SDRRecHdr_T     hdr;
+//    union
+//    {
+//        FullSensorRec_T full_sensor_rec;
+//        CompactSensorRec_T compact_sensor_rec;
+//        MgmtCtrlrConfirmRec_T mc_confim_rec;
+//        MgmtCtrlrDevLocator_T mc_dev_locator_rec;
+//        GnrcDevLocatorRec_T  gen_dev_locator_rec;
+//        FRUDevLocatorRec_T  fru_dev_locator_rec;
+//        BMCMsgChannelInfoRec_T bmc_msg_chnl_info_rec;
+
+//    }
+//    type;
+//} SDRRec_T;
+
+#pragma pack( )
+
+
+
+#endif  /* IPMI_SDR_RECORD_H */

+ 323 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SEL.h

@@ -0,0 +1,323 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ *****************************************************************
+ *
+ * ipmi_sel.h
+ * Sel device exports
+ *
+ * Author: Bakka Ravinder Reddy <bakkar@ami.com>
+ *
+ *****************************************************************/
+#ifndef IPMI_SEL_H
+#define IPMI_SEL_H
+
+
+/*** External Definitions ***/
+#define SEL_VERSION     0x51
+#define UNSPECIFIED_UTC_OFFSET 0x07FF
+#define SEL_UTC_MIN_RANGE   -1440
+#define SEL_UTC_MAX_RANGE   1440
+#define SEL_RECORD_SIZE             16
+
+/**
+ * @struct SELRecHdr_T
+ * @brief SEL Record Header
+**/
+#pragma pack(1)
+typedef struct
+{
+    uint16_t  ID;
+    uint8_t   Type;
+    uint32_t  TimeStamp;
+
+}   SELRecHdr_T;
+
+/**
+ * @struct SELEventRecord_T
+ * @brief SEL Event Record
+**/
+typedef struct
+{
+    /* SEL ENTRY RECORD HEADER */
+    SELRecHdr_T hdr;
+
+    /* RECORD BODY BYTES */
+    uint8_t   GenID [2];
+    uint8_t   EvMRev;
+    uint8_t   SensorType;
+    uint8_t   SensorNum;
+    uint8_t   EvtDirType;
+    uint8_t   EvtData1;
+    uint8_t   EvtData2;
+    uint8_t   EvtData3;
+
+}   SELEventRecord_T;
+
+/**
+ * @struct SELRec_T
+ * @brief SEL Record
+**/
+typedef struct
+{
+    uint8_t               Valid;
+    uint8_t               Len;
+    SELEventRecord_T    EvtRecord;
+}   SELRec_T;
+
+/**
+ * @struct SELOEM1Record_T
+ * @brief SEL OEM1 Record
+**/
+typedef struct
+{
+    /* SEL ENTRY RECORD HEADER */
+    uint16_t  ID;
+    uint8_t   Type;
+	
+    /* RECORD BODY BYTES */
+    uint32_t  TimeStamp;
+    uint8_t   MftrID [3];
+    uint8_t   OEMData [6];
+
+}   SELOEM1Record_T;
+
+
+/**
+ * @struct SELOEM2Record_T
+ * @brief SEL OEM2 Record
+**/
+typedef struct
+{
+    /* SEL ENTRY RECORD HEADER */
+	//    SELRecHdr_T hdr;
+    uint16_t  ID;
+    uint8_t   Type;
+
+    /* RECORD BODY BYTES */
+    uint8_t   OEMData [13];
+
+}   SELOEM2Record_T;
+
+
+
+
+/* SELInfo_T */
+typedef struct
+{
+    uint8_t   CompletionCode;     /* Completion Code */
+    uint8_t   Version;            /* Version of the SEL 0x51 */
+
+    uint16_t  RecCt;              /* Record Count */
+
+    uint16_t  FreeSpace;          /* Free space LSB first */
+
+    uint32_t  AddTimeStamp;       /* Most recent addition timestamp */
+    uint32_t  EraseTimeStamp;     /* Most recent erase timestamp */
+
+    uint8_t   OpSupport;          /* Operation Support */
+
+}   SELInfo_T;
+
+
+/* SELAllocInfo_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  NumAllocUnits;      /* Number of possible allocation units */
+    uint16_t  AllocUnitSize;      /* Allocation unit size in bytes */
+    uint16_t  NumFreeAllocUnits;  /* Number of free allocation units */
+    uint16_t  LargestFreeBlock;   /* Largest free block in allocation units */
+    uint8_t   MaxRecSize;         /* Maximimum record size in allocation units */
+
+}   SELAllocInfo_T;
+
+
+/* ReserveSELRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  ReservationID;
+
+}   ReserveSELRes_T;
+
+
+/* GetSELReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    uint8_t   Offset;
+    uint8_t   Size;
+
+}   GetSELReq_T;
+
+
+/* GetSELRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  NextRecID;
+
+}   GetSELRes_T;
+
+
+/* AddSELRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+
+}   AddSELRes_T;
+
+
+/* PartialAddSELReq_T */
+typedef struct
+{
+    uint8_t      LSBReservationID;
+	uint8_t		MSBReservationID;
+	uint8_t		LSBRecordID;
+	uint8_t		MSBRecordID;
+    uint8_t   Offset;
+    uint8_t   Progress;
+	//Added to support PartialAddselEntry Cmd ../
+    uint8_t	  RecordData[SEL_RECORD_SIZE];
+
+}   PartialAddSELReq_T;
+
+
+/* PartialAddSELRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+
+}   PartialAddSELRes_T;
+
+
+/* DeleteSELReq_T */
+typedef struct 
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    
+}   DeleteSELReq_T;
+
+
+/* DeleteSELRes_T */
+typedef struct 
+{
+    uint8_t   CompletionCode;
+    uint16_t  RecID;
+    
+}   DeleteSELRes_T;
+
+
+/* ClearSELReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint8_t   CLR [3];
+    uint8_t   InitOrStatus;
+
+}   ClearSELReq_T;
+
+
+/* ClearSELRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   EraseProgress;
+}   ClearSELRes_T;
+
+
+/* GetSELTimeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  Time;
+
+}   GetSELTimeRes_T;
+
+
+/* SetSELTimeReq_T */
+typedef struct
+{
+    uint32_t  Time;
+
+}   SetSELTimeReq_T;
+
+
+/* GetSELAuxiliaryMCALogStatusRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  Time;
+    uint32_t  NumEntries;
+
+}   GetSELAuxiliaryMCALogStatusRes_T;
+
+
+/* GetSELAuxiliaryOEMLogStatusRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint32_t  Time;
+    uint8_t   OEMId[3];
+    uint8_t   LogStatusBytes[8];
+
+}   GetSELAuxiliaryOEMLogStatusRes_T;
+
+
+/* SetSELAuxiliaryMCALogStatusReq_T */
+typedef struct
+{
+    uint8_t   LogType;
+    uint32_t  Time;
+    uint32_t  NumEntries;
+
+}   SetSELAuxiliaryMCALogStatusReq_T;
+
+
+/* SetSELAuxiliaryOEMLogStatusReq_T */
+typedef struct
+{
+    uint8_t   LogType;
+    uint32_t  Time;
+    uint8_t   OEMId[3];
+    uint8_t   LogStatusBytes[8];
+
+}   SetSELAuxiliaryOEMLogStatusReq_T;
+
+/* GetSELTimeUTCoffsetRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    int16_t  UTCOffset;
+}   GetSELTimeUTCOffsetRes_T;
+
+
+/* SetSELTimeUTCOffsetReq_T*/
+typedef struct
+{
+    int16_t UTCOffset;
+}   SetSELTimeUTCOffsetReq_T;
+
+/* SetSELTimeUTCOffsetRes_T*/
+typedef struct
+{
+    uint8_t   CompletionCode;
+}   SetSELTimeUTCOffsetRes_T;
+
+#pragma pack()
+#endif  /* IPMI_SEL_H */

+ 383 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Sensor.h

@@ -0,0 +1,383 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * ipmi_sensor.h
+ * IPMI Sensor Requests and Responses.
+ *
+ *  Author: Govind Kothandapani <govindk@ami.com>
+ *
+ ******************************************************************/
+#ifndef IPMI_SENSOR_H
+#define IPMI_SENSOR_H
+
+/*** External Definitions ***/
+#define SENSOR_TYPE_TEMP                0x01
+#define SENSOR_TYPE_SECUIRTY_VIOLATION  0x06
+#define SENSOR_TYPE_EVT_LOGGING         0x10
+#define SENSOR_TYPE_SYSTEM_EVENT        0x12
+#define SENSOR_TYPE_CRITICAL_INTERRUPT  0x13
+#define SENSOR_TYPE_MODULE_BOARD        0x15
+#define SENSOR_TYPE_WATCHDOG2           0x23
+#define SENSOR_TYPE_OS_CRITICAL_STOP    0x20
+
+#define SENSOR_TYPE_FRU_STATE           0x2C
+#define SENSOR_TYPE_SERV_STATE          0xF0
+
+#define FP_NMI_OFFSET                                  0x00
+#define PW_VIOLATION_OFFSET                       0x05
+
+#define WDT_SENSOR_NUMBER                             0xFE
+#define SECUIRTY_VIOLATION_SENSOR_NUMBER    0xFD
+#define NMI_SENSOR_NUMBER                              0xFC
+#define SENSOR_SPECIFIC_READ_TYPE                  0x6F
+#define SENSOR_SPECIFIC_OFFSET_MASK                0x0F
+#define PEF_ACTION_SEN_SPECIFIC_OFFSET 0xC4
+#define OS_RUNTIME_CRITICAL_STOP 0x01
+
+#define HOT_SWAP_SENSOR_START_NUM       0xD0
+
+#define SENSOR_TYPE_FRUSDR_COLLECTION   0xD0
+#define FRUSDR_COLLECTION_SENSOR_NUMBER 0xFD
+
+// 0 = Communication lost during FRU collection
+// 1 = FRU Invalid checksum
+// 2 = Communication lost during SDR collection
+#define FRU_COLLECTION_COMMUNICATION_LOST   0
+#define FRU_COLLECTION_INV_CHECKSUM         1
+#define SDR_COLLECTION_COMMUNICATION_LOST   2
+#define SDR_COLLECTION_INV_CC               3
+#define INVALID_PICMG_VERSION               4
+
+#pragma pack( 1 )
+
+/* GetSDRInfoRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   NumSensor;
+    uint8_t   Flags;
+    uint32_t  TimeStamp;
+
+}   GetSDRInfoRes_T;
+
+
+/* GetDevSDRReq_T */
+typedef struct
+{
+    uint16_t  ReservationID;
+    uint16_t  RecID;
+    uint8_t   Offset;
+    uint8_t   Size;
+
+}   GetDevSDRReq_T;
+
+
+/* GetDevSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  NextRecID;
+
+}   GetDevSDRRes_T;
+
+
+/* ReserveDevSDRRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint16_t  ReservationID;
+
+}   ReserveDevSDRRes_T;
+
+
+/* GetSensorReadingFactorReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   ReadingByte;
+
+}   GetSensorReadingFactorReq_T;
+
+
+/* GetSensorReadingFactorRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   NextReading;
+    uint8_t   M_LSB;
+    uint8_t   M_MSB_Tolerance;
+    uint8_t   B_LSB;
+    uint8_t   B_MSB_Accuracy;
+    uint8_t   Accuracy_MSB_Exp;
+    uint8_t   RExp_BExp;
+
+}   GetSensorReadingFactorRes_T;
+
+
+/* SetSensorHysterisisReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   Reserved;
+    uint8_t   PositiveHysterisis;
+    uint8_t   NegativeHysterisis;
+
+}   SetSensorHysterisisReq_T;
+
+
+/* SetSensorHysterisisRes_T */
+typedef struct 
+{
+    uint8_t   CompletionCode;
+
+}   SetSensorHysterisisRes_T;
+
+
+/* GetSensorHysterisisReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   Reserved;
+
+}   GetSensorHysterisisReq_T;
+
+
+/* GetSensorHysterisisRes_T */
+typedef struct 
+{
+    uint8_t   CompletionCode;
+    uint8_t   PositiveHysterisis;
+    uint8_t   NegativeHysterisis;
+
+}   GetSensorHysterisisRes_T;
+
+
+/* SetSensorThresholdReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   SetFlags;
+    uint8_t   LowerNonCritical;
+    uint8_t   LowerCritical;
+    uint8_t   LowerNonRecoverable;
+    uint8_t   UpperNonCritical;
+    uint8_t   UpperCritical;
+    uint8_t   UpperNonRecoverable;
+
+}   SetSensorThresholdReq_T;
+
+
+typedef struct
+{
+    uint8_t   CompletionCode;
+	uint8_t   records[480];
+}   SensorhistoryData_T;
+
+
+
+
+/* SetSensorThresholdRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   SetSensorThresholdRes_T;
+
+
+/* GetSensorThresholdReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+
+}   GetSensorThresholdReq_T;
+
+
+/* GetSensorThresholdRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   GetFlags;
+    uint8_t   LowerNonCritical;
+    uint8_t   LowerCritical;
+    uint8_t   LowerNonRecoverable;
+    uint8_t   UpperNonCritical;
+    uint8_t   UpperCritical;
+    uint8_t   UpperNonRecoverable;
+
+}   GetSensorThresholdRes_T;
+
+
+/* SetSensorEventEnableReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   Flags;
+    uint16_t  AssertionMask;
+    uint16_t  DeAssertionMask;
+
+}   SetSensorEventEnableReq_T;
+
+
+/* SetSensorEventEnableRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   SetSensorEventEnableRes_T;
+
+
+/* GetSensorEventEnableReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+
+}   GetSensorEventEnableReq_T;
+
+
+/* GetSensorEventEnableRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Flags;
+    uint16_t  AssertionMask;
+    uint16_t  DeAssertionMask;
+
+}   GetSensorEventEnableRes_T;
+
+
+/* GetSensorReadingReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+
+}   GetSensorReadingReq_T;
+
+
+/* GetSensorReadingRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   SensorReading;
+    uint8_t   Flags;
+    uint8_t   ComparisonStatus;
+    uint8_t   OptionalStatus;
+
+}   GetSensorReadingRes_T;
+
+
+/* SetSensorTypeReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   SensorType;
+    uint8_t   EventTypeCode;
+
+}   SetSensorTypeReq_T;
+
+
+/* SetSensorTypeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   SetSensorTypeRes_T;
+
+
+/* GetSensorTypeReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+
+}   GetSensorTypeReq_T;
+
+
+/* GetSensorTypeRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   SensorType;
+    uint8_t   EventTypeCode;
+
+}   GetSensorTypeRes_T;
+
+/* ReArmSensorReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   ReArmAllEvents;
+    uint8_t   ReArmAssertionEvents1;
+    uint8_t   ReArmAssertionEvents2;
+    uint8_t   ReArmDeassertionEvents1;
+    uint8_t   ReArmDeassertionEvents2;
+
+}  ReArmSensorReq_T;
+
+/* ReArmSensorRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}  ReArmSensorRes_T;
+
+/* GetSensorEventStatusReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+
+}  GetSensorEventStatusReq_T;
+
+/* GetSensorEventStatusRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+    uint8_t   Flags;
+    uint8_t   AssertionEvents1;
+    uint8_t   AssertionEvents2;
+    uint8_t   DeassertionEvents1;
+    uint8_t   DeassertionEvents2;
+
+}  GetSensorEventStatusRes_T;
+
+/* SetSensorReadingReq_T */
+typedef struct
+{
+    uint8_t   SensorNum;
+    uint8_t   Operation;
+    uint8_t   SensorReading;
+    uint8_t   AssertionEventOccuredByte1;
+    uint8_t   AssertionEventOccuredByte2;
+    uint8_t   DeAssertionEventOccuredByte1;
+    uint8_t   DeAssertionEventOccuredByte2;
+    uint8_t   EvtData1;
+    uint8_t   EvtData2;
+    uint8_t   EvtData3;
+
+}   SetSensorReadingReq_T;
+
+
+/* SetSensorReadingRes_T */
+typedef struct
+{
+    uint8_t   CompletionCode;
+
+}   SetSensorReadingRes_T;
+
+
+
+#pragma pack( )
+
+#endif /* IPMI_SENSOR_H */
+

+ 55 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_SensorEvent.h

@@ -0,0 +1,55 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * Sensor.h
+ * Sensor Command numbers
+ *
+ *****************************************************************/
+#ifndef IPMI_SENSOR_EVENT_H
+#define IPMI_SENSOR_EVENT_H
+
+/*** Sensor Event Commands ***/
+#define CMD_SET_EVENT_RECEIVER          0x00
+#define CMD_GET_EVENT_RECEIVER          0x01
+#define CMD_PLATFORM_EVENT              0x02
+
+#define CMD_GET_PEF_CAPABILITIES        0x10
+#define CMD_ARM_PEF_POSTPONE_TIMER      0x11
+#define CMD_SET_PEF_CONFIG_PARAMS       0x12
+#define CMD_GET_PEF_CONFIG_PARAMS       0x13
+#define CMD_SET_LAST_PROCESSED_EVENT_ID 0x14
+#define CMD_GET_LAST_PROCESSED_EVENT_ID 0x15
+#define CMD_ALERT_IMMEDIATE             0x16
+#define CMD_PET_ACKNOWLEDGE             0x17
+
+#define CMD_GET_DEV_SDR_INFO            0x20
+#define CMD_GET_DEV_SDR                 0x21
+#define CMD_RESERVE_DEV_SDR_REPOSITORY  0x22
+#define CMD_GET_SENSOR_READING_FACTORS  0x23
+#define CMD_SET_SENSOR_HYSTERISIS       0x24
+#define CMD_GET_SENSOR_HYSTERISIS       0x25
+#define CMD_SET_SENSOR_THRESHOLDS       0x26
+#define CMD_GET_SENSOR_THRESHOLDS       0x27
+#define CMD_SET_SENSOR_EVENT_ENABLE     0x28
+#define CMD_GET_SENSOR_EVENT_ENABLE     0x29
+#define CMD_REARM_SENSOR_EVENTS         0x2A
+#define CMD_GET_SENSOR_EVENT_STATUS     0x2B
+#define CMD_GET_SENSOR_READING          0x2D
+#define CMD_SET_SENSOR_TYPE             0x2E
+#define CMD_GET_SENSOR_TYPE             0x2F
+#define CMD_SET_SENSOR_READING          0x30
+
+
+#endif  /* IPMI_SENSOREVENT_H */

+ 64 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Storage.h

@@ -0,0 +1,64 @@
+/****************************************************************
+ ****************************************************************
+ **                                                            **
+ **    (C)Copyright 2005-2006, American Megatrends Inc.        **
+ **                                                            **
+ **            All Rights Reserved.                            **
+ **                                                            **
+ **        6145-F, Northbelt Parkway, Norcross,                **
+ **                                                            **
+ **        Georgia - 30071, USA. Phone-(770)-246-8600.         **
+ **                                                            **
+ ****************************************************************
+ ****************************************************************
+ ****************************************************************
+ *
+ * Storage.h
+ * Storage Command numbers
+ *
+ *****************************************************************/
+#ifndef IPMI_STORAGE_H
+#define IPMI_STORAGE_H
+
+
+
+/*** FRU Information commands ***/
+#define CMD_FRU_INVENTORY_AREA_INFO                 0x10
+#define CMD_READ_FRU_DATA                           0x11
+#define CMD_WRITE_FRU_DATA                          0x12
+
+/*** SDR Repository commands ***/
+#define CMD_GET_SDR_REPOSITORY_INFO                 0x20
+#define CMD_GET_SDR_REPOSITORY_ALLOCATION_INFO      0x21
+#define CMD_RESERVE_SDR_REPOSITORY                  0x22
+#define CMD_GET_SDR                                 0x23
+#define CMD_ADD_SDR                                 0x24
+#define CMD_PARTIAL_ADD_SDR                         0x25
+#define CMD_DELETE_SDR                              0x26
+#define CMD_CLEAR_SDR_REPOSITORY                    0x27
+#define CMD_GET_SDR_REPOSITORY_TIME                 0x28
+#define CMD_SET_SDR_REPOSITORY_TIME                 0x29
+#define CMD_ENTER_SDR_REPOSITORY_UPDATE_MODE        0x2A
+#define CMD_EXIT_SDR_REPOSITORY_UPDATE_MODE         0x2B
+#define CMD_RUN_INITIALIZATION_AGENT                0x2C
+
+/*** SEL commands ***/
+#define CMD_GET_SEL_INFO                            0x40
+#define CMD_GET_SEL_ALLOCATION_INFO                 0x41
+#define CMD_RESERVE_SEL                             0x42
+#define CMD_GET_SEL_ENTRY                           0x43
+#define CMD_ADD_SEL_ENTRY                           0x44
+#define CMD_PARTIAL_ADD_SEL_ENTRY                   0x45
+#define CMD_DELETE_SEL_ENTRY                        0x46
+#define CMD_CLEAR_SEL                               0x47
+#define CMD_GET_SEL_TIME                            0x48
+#define CMD_SET_SEL_TIME                            0x49
+#define CMD_GET_AUXILIARY_LOG_STATUS                0x5A
+#define CMD_SET_AUXILIARY_LOG_STATUS                0x5B
+#define CMD_GET_SEL_TIME_UTC_OFFSET                 0x5C
+#define CMD_SET_SEL_TIME_UTC_OFFSET                 0x5D
+
+
+
+
+#endif  /* IPMI_STORAGE_H */

+ 7 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/com_IPMI_Storlead.h

@@ -0,0 +1,7 @@
+#ifndef __COM_IPMI_STORLEAD_H__
+#define __COM_IPMI_STORLEAD_H__
+
+#define CMD_GET_SYS_INFO   		0x0
+#define CMD_GET_SENSOR_INFO   	0x1
+
+#endif /* __COM_IPMI_STORLEAD_H__ */

+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/config.h → app/goahead-3.6.5/build/linux-arm-static/inc/config.h


+ 3 - 0
app/goahead-5.1.0/src/web_interface/inc/dashboard.h → app/goahead-3.6.5/build/linux-arm-static/inc/dashboard.h

@@ -9,6 +9,9 @@ void getSysInfo(Webs *wp);
 /*获取刀片信息*/
 void getCardInfo(Webs *wp);
 void getSensorInfo(Webs *wp);
+void actionTest(Webs *wp);
+void buy(Webs *wp);
+
 
 
 #endif /* __DASHBOARD_H__ */

+ 2 - 0
app/goahead-5.1.0/src/mbedtls/embedtls.h → app/goahead-3.6.5/build/linux-arm-static/inc/embedtls.h

@@ -87,12 +87,14 @@
     #define MBEDTLS_CIPHER_MODE_CBC
 #elif defined(ME_MBEDTLS_CBC) && ME_MBEDTLS_CBC == 0
     #undef MBEDTLS_CIPHER_MODE_CBC
+mob mob
 #endif
 
 #if ME_MBEDTLS_CCM
     #define MBEDTLS_CCM_C
 #elif defined(ME_MBEDTLS_CCM) && ME_MBEDTLS_CCM == 0
     #undef MBEDTLS_CCM_C
+mob mob
 #endif
 
 #if ME_MBEDTLS_DES

+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/fan.h → app/goahead-3.6.5/build/linux-arm-static/inc/fan.h


+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/fru.h → app/goahead-3.6.5/build/linux-arm-static/inc/fru.h


+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/fw_update.h → app/goahead-3.6.5/build/linux-arm-static/inc/fw_update.h


File diff suppressed because it is too large
+ 118 - 133
app/goahead-3.6.5/build/linux-arm-static/inc/goahead.h


+ 16 - 16
app/goahead-5.1.0/src/js.h → app/goahead-3.6.5/build/linux-arm-static/inc/js.h

@@ -166,7 +166,7 @@ typedef int (*JsProc)(int jid, void *handle, int argc, char **argv);
     @return Count of the arguments parsed
     @ingroup Js
  */
-PUBLIC int jsArgs(int argc, char **argv, cchar *fmt, ...);
+PUBLIC int jsArgs(int argc, char **argv, char *fmt, ...);
 
 /**
     Close a javascript engine
@@ -181,7 +181,7 @@ PUBLIC void jsCloseEngine(int jid);
     @param fmt Error message format string
     @ingroup Js
  */
-PUBLIC void jsError(Js *js, cchar *fmt, ...);
+PUBLIC void jsError(Js *js, char *fmt, ...);
 
 /**
     Parse and evaluate a script. Return the last function return value.
@@ -191,7 +191,7 @@ PUBLIC void jsError(Js *js, cchar *fmt, ...);
     @param str String value to use as the result. Set to null for errors.
     @ingroup Js
  */
-PUBLIC char *jsEval(int jid, cchar *script, char **emsg);
+PUBLIC char *jsEval(int jid, char *script, char **emsg);
 
 /**
     Get the function result value
@@ -199,7 +199,7 @@ PUBLIC char *jsEval(int jid, cchar *script, char **emsg);
     @return Function return value string. Caller must not free.
     @ingroup Js
  */
-PUBLIC cchar *jsGetResult(int jid);
+PUBLIC char *jsGetResult(int jid);
 
 /**
     Get a variable value
@@ -210,7 +210,7 @@ PUBLIC cchar *jsGetResult(int jid);
         and > 0 for local variables.
     @ingroup Js
  */
-PUBLIC int jsGetVar(int jid, cchar *var, cchar **value);
+PUBLIC int jsGetVar(int jid, char *var, char **value);
 
 /**
     Open a new javascript engine
@@ -227,7 +227,7 @@ PUBLIC int jsOpenEngine(WebsHash variables, WebsHash functions);
     @param value Value to use
     @ingroup Js
  */
-PUBLIC void jsSetLocalVar(int jid, cchar *var, cchar *value);
+PUBLIC void jsSetLocalVar(int jid, char *var, char *value);
 
 /**
     Set a global variable
@@ -236,7 +236,7 @@ PUBLIC void jsSetLocalVar(int jid, cchar *var, cchar *value);
     @param value value to use
     @ingroup Js
  */
-PUBLIC void jsSetGlobalVar(int jid, cchar *var, cchar *value);
+PUBLIC void jsSetGlobalVar(int jid, char *var, char *value);
 
 /**
     Set the function return result
@@ -244,7 +244,7 @@ PUBLIC void jsSetGlobalVar(int jid, cchar *var, cchar *value);
     @param str String value to use as the result
     @ingroup Js
  */
-PUBLIC void jsSetResult(int jid, cchar *str);
+PUBLIC void jsSetResult(int jid, char *str);
 
 /**
     Set a variable value in the top most variable frame
@@ -253,7 +253,7 @@ PUBLIC void jsSetResult(int jid, cchar *str);
     @param value Value to set
     @ingroup Js
  */
-PUBLIC void jsSetVar(int jid, cchar *var, cchar *value);
+PUBLIC void jsSetVar(int jid, char *var, char *value);
 
 /**
     Set a global function
@@ -262,30 +262,30 @@ PUBLIC void jsSetVar(int jid, cchar *var, cchar *value);
     @param fn C function providing the implementation.
     @ingroup Js
  */
-PUBLIC int jsSetGlobalFunction(int jid, cchar *name, JsProc fn);
+PUBLIC int jsSetGlobalFunction(int jid, char *name, JsProc fn);
 
 /*
     Internal API
  */
 PUBLIC int      jsCloseBlock(int jid, int vid);
-PUBLIC char     *jsEvalBlock(int jid, cchar *script, char **emsg);
+PUBLIC char     *jsEvalBlock(int jid, char *script, char **emsg);
 PUBLIC WebsHash jsGetFunctionTable(int jid);
-PUBLIC void     *jsGetGlobalFunction(int jid, cchar *name);
+PUBLIC void     *jsGetGlobalFunction(int jid, char *name);
 PUBLIC int      jsGetLineNumber(int jid);
 PUBLIC void     *jsGetUserHandle(int jid);
 PUBLIC WebsHash jsGetVariableTable(int jid);
 PUBLIC int      jsLexOpen(Js *ep);
 PUBLIC void     jsLexClose(Js *ep);
-PUBLIC int      jsLexOpenScript(Js *ep, cchar *script);
+PUBLIC int      jsLexOpenScript(Js *ep, char *script);
 PUBLIC void     jsLexCloseScript(Js *ep);
 PUBLIC void     jsLexSaveInputState(Js *ep, JsInput *state);
 PUBLIC void     jsLexFreeInputState(Js *ep, JsInput *state);
 PUBLIC void     jsLexRestoreInputState(Js *ep, JsInput *state);
 PUBLIC int      jsLexGetToken(Js *ep, int state);
-PUBLIC void     jsLexPutbackToken(Js *ep, int tid, cchar *string);
+PUBLIC void     jsLexPutbackToken(Js *ep, int tid, char *string);
 PUBLIC int      jsOpenBlock(int jid);
-PUBLIC int      jsRemoveGlobalFunction(int jid, cchar *name);
-PUBLIC int      jsSetGlobalFunctionDirect(WebsHash functions, cchar *name, JsProc fn);
+PUBLIC int      jsRemoveGlobalFunction(int jid, char *name);
+PUBLIC int      jsSetGlobalFunctionDirect(WebsHash functions, char *name, JsProc fn);
 PUBLIC void     jsSetUserHandle(int jid, void *handle);
 
 #if ME_GOAHEAD_LEGACY

+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_AppDevice.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_AppDevice.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_ChassisDevice.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_ChassisDevice.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_IPM.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_IPM.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_PEF.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_PEF.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_StorDevice.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_StorDevice.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_errorcodes.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_errorcodes.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_fru.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_fru.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_rmcp.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_rmcp.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_sdr.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_sdr.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_sensor.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_sensor.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_session.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_session.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_storlead_OEM.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_storlead_OEM.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_struct.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_struct.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libipmi_usermgmt.h → app/goahead-3.6.5/build/linux-arm-static/inc/libipmi_usermgmt.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/libsensor.h → app/goahead-3.6.5/build/linux-arm-static/inc/libsensor.h


File diff suppressed because it is too large
+ 71 - 489
app/goahead-3.6.5/build/linux-arm-static/inc/mbedtls.h


+ 393 - 0
app/goahead-3.6.5/build/linux-arm-static/inc/me.h

@@ -0,0 +1,393 @@
+/*
+    me.h -- MakeMe Configure Header for linux-x86-static
+
+    This header is created by Me during configuration. To change settings, re-run
+    configure or define variables in your Makefile to override these default values.
+ */
+
+/* Settings */
+#ifndef ME_AUTHOR
+    #define ME_AUTHOR "Embedthis Software"
+#endif
+#ifndef ME_CERTS_BITS
+    #define ME_CERTS_BITS 2048
+#endif
+#ifndef ME_CERTS_DAYS
+    #define ME_CERTS_DAYS 3650
+#endif
+#ifndef ME_CERTS_GENDH
+    #define ME_CERTS_GENDH 1
+#endif
+#ifndef ME_COMPANY
+    #define ME_COMPANY "embedthis"
+#endif
+#ifndef ME_COMPATIBLE
+    #define ME_COMPATIBLE "3.6"
+#endif
+#ifndef ME_COMPILER_FORTIFY
+    #define ME_COMPILER_FORTIFY 1
+#endif
+#ifndef ME_COMPILER_HAS_ATOMIC
+    #define ME_COMPILER_HAS_ATOMIC 0
+#endif
+#ifndef ME_COMPILER_HAS_ATOMIC64
+    #define ME_COMPILER_HAS_ATOMIC64 0
+#endif
+#ifndef ME_COMPILER_HAS_DOUBLE_BRACES
+    #define ME_COMPILER_HAS_DOUBLE_BRACES 0
+#endif
+#ifndef ME_COMPILER_HAS_DYN_LOAD
+    #define ME_COMPILER_HAS_DYN_LOAD 1
+#endif
+#ifndef ME_COMPILER_HAS_LIB_EDIT
+    #define ME_COMPILER_HAS_LIB_EDIT 0
+#endif
+#ifndef ME_COMPILER_HAS_LIB_RT
+    #define ME_COMPILER_HAS_LIB_RT 1
+#endif
+#ifndef ME_COMPILER_HAS_MMU
+    #define ME_COMPILER_HAS_MMU 0   //1
+#endif
+#ifndef ME_COMPILER_HAS_MTUNE
+    #define ME_COMPILER_HAS_MTUNE 0     //1
+#endif
+#ifndef ME_COMPILER_HAS_PAM
+    #define ME_COMPILER_HAS_PAM 0
+#endif
+#ifndef ME_COMPILER_HAS_STACK_PROTECTOR
+    #define ME_COMPILER_HAS_STACK_PROTECTOR 1
+#endif
+#ifndef ME_COMPILER_HAS_SYNC
+    #define ME_COMPILER_HAS_SYNC 1
+#endif
+#ifndef ME_COMPILER_HAS_SYNC64
+    #define ME_COMPILER_HAS_SYNC64 1
+#endif
+#ifndef ME_COMPILER_HAS_SYNC_CAS
+    #define ME_COMPILER_HAS_SYNC_CAS 0
+#endif
+#ifndef ME_COMPILER_HAS_UNNAMED_UNIONS
+    #define ME_COMPILER_HAS_UNNAMED_UNIONS 1
+#endif
+#ifndef ME_COMPILER_WARN64TO32
+    #define ME_COMPILER_WARN64TO32 0
+#endif
+#ifndef ME_COMPILER_WARN_UNUSED
+    #define ME_COMPILER_WARN_UNUSED 1
+#endif
+#ifndef ME_DEBUG
+    #define ME_DEBUG 1
+#endif
+#ifndef ME_DEPTH
+    #define ME_DEPTH 1
+#endif
+#ifndef ME_DESCRIPTION
+    #define ME_DESCRIPTION "Embedthis GoAhead Embedded Web Server"
+#endif
+#ifndef ME_GOAHEAD_ACCESS_LOG
+    #define ME_GOAHEAD_ACCESS_LOG 0
+#endif
+#ifndef ME_GOAHEAD_AUTH
+    #define ME_GOAHEAD_AUTH 1
+#endif
+#ifndef ME_GOAHEAD_AUTH_STORE
+    #define ME_GOAHEAD_AUTH_STORE "file"
+#endif
+#ifndef ME_GOAHEAD_AUTO_LOGIN
+    #define ME_GOAHEAD_AUTO_LOGIN 0
+#endif
+#ifndef ME_GOAHEAD_CGI
+    #define ME_GOAHEAD_CGI 0    //1
+#endif
+#ifndef ME_GOAHEAD_CGI_VAR_PREFIX
+    #define ME_GOAHEAD_CGI_VAR_PREFIX "CGI_"
+#endif
+#ifndef ME_GOAHEAD_CLIENT_CACHE
+    #define ME_GOAHEAD_CLIENT_CACHE "css,gif,ico,jpg,js,png"
+#endif
+#ifndef ME_GOAHEAD_CLIENT_CACHE_LIFESPAN
+    #define ME_GOAHEAD_CLIENT_CACHE_LIFESPAN 86400
+#endif
+#ifndef ME_GOAHEAD_DIGEST
+    #define ME_GOAHEAD_DIGEST 1
+#endif
+#ifndef ME_GOAHEAD_DOCUMENTS
+    #define ME_GOAHEAD_DOCUMENTS "web"
+#endif
+#ifndef ME_GOAHEAD_JAVASCRIPT
+    #define ME_GOAHEAD_JAVASCRIPT 1
+#endif
+#ifndef ME_GOAHEAD_LEGACY
+    #define ME_GOAHEAD_LEGACY 0
+#endif
+#ifndef ME_GOAHEAD_LIMIT_BUFFER
+    #define ME_GOAHEAD_LIMIT_BUFFER 1024
+#endif
+#ifndef ME_GOAHEAD_LIMIT_FILENAME
+    #define ME_GOAHEAD_LIMIT_FILENAME 256
+#endif
+#ifndef ME_GOAHEAD_LIMIT_FILES
+    #define ME_GOAHEAD_LIMIT_FILES 0x100000   //0
+#endif
+#ifndef ME_GOAHEAD_LIMIT_HEADER
+    #define ME_GOAHEAD_LIMIT_HEADER 2048
+#endif
+#ifndef ME_GOAHEAD_LIMIT_HEADERS
+    #define ME_GOAHEAD_LIMIT_HEADERS 4096
+#endif
+#ifndef ME_GOAHEAD_LIMIT_NUM_HEADERS
+    #define ME_GOAHEAD_LIMIT_NUM_HEADERS 64
+#endif
+#ifndef ME_GOAHEAD_LIMIT_PARSE_TIMEOUT
+    #define ME_GOAHEAD_LIMIT_PARSE_TIMEOUT 5
+#endif
+#ifndef ME_GOAHEAD_LIMIT_PASSWORD
+    #define ME_GOAHEAD_LIMIT_PASSWORD 32
+#endif
+#ifndef ME_GOAHEAD_LIMIT_POST
+    #define ME_GOAHEAD_LIMIT_POST 16384
+#endif
+#ifndef ME_GOAHEAD_LIMIT_PUT
+    #define ME_GOAHEAD_LIMIT_PUT 2048000    //204800000
+#endif
+#ifndef ME_GOAHEAD_LIMIT_SESSION_COUNT
+    #define ME_GOAHEAD_LIMIT_SESSION_COUNT 512
+#endif
+#ifndef ME_GOAHEAD_LIMIT_SESSION_LIFE
+    #define ME_GOAHEAD_LIMIT_SESSION_LIFE 1800
+#endif
+#ifndef ME_GOAHEAD_LIMIT_STRING
+    #define ME_GOAHEAD_LIMIT_STRING 256
+#endif
+#ifndef ME_GOAHEAD_LIMIT_TIMEOUT
+    #define ME_GOAHEAD_LIMIT_TIMEOUT 60
+#endif
+#ifndef ME_GOAHEAD_LIMIT_UPLOAD
+    #define ME_GOAHEAD_LIMIT_UPLOAD 2048000     //204800000
+#endif
+#ifndef ME_GOAHEAD_LIMIT_URI
+    #define ME_GOAHEAD_LIMIT_URI 2048
+#endif
+#ifndef ME_GOAHEAD_LISTEN
+    #define ME_GOAHEAD_LISTEN "http://*:80,https://*:443"
+#endif
+#ifndef ME_GOAHEAD_LOGFILE
+    #define ME_GOAHEAD_LOGFILE "stderr:0"
+#endif
+#ifndef ME_GOAHEAD_LOGGING
+    #define ME_GOAHEAD_LOGGING 1
+#endif
+#ifndef ME_GOAHEAD_PUT_DIR
+    #define ME_GOAHEAD_PUT_DIR "."
+#endif
+#ifndef ME_GOAHEAD_REALM
+    #define ME_GOAHEAD_REALM "example.com"
+#endif
+#ifndef ME_GOAHEAD_REPLACE_MALLOC
+    #define ME_GOAHEAD_REPLACE_MALLOC 0
+#endif
+#ifndef ME_GOAHEAD_SSL_AUTHORITY
+    #define ME_GOAHEAD_SSL_AUTHORITY ""
+#endif
+#ifndef ME_GOAHEAD_SSL_CACHE
+    #define ME_GOAHEAD_SSL_CACHE 512
+#endif
+#ifndef ME_GOAHEAD_SSL_CERTIFICATE
+    #define ME_GOAHEAD_SSL_CERTIFICATE "self.crt"
+#endif
+#ifndef ME_GOAHEAD_SSL_CIPHERS
+    #define ME_GOAHEAD_SSL_CIPHERS ""
+#endif
+#ifndef ME_GOAHEAD_SSL_HANDSHAKES
+    #define ME_GOAHEAD_SSL_HANDSHAKES 1
+#endif
+#ifndef ME_GOAHEAD_SSL_KEY
+    #define ME_GOAHEAD_SSL_KEY "self.key"
+#endif
+#ifndef ME_GOAHEAD_SSL_LOG_LEVEL
+    #define ME_GOAHEAD_SSL_LOG_LEVEL 5
+#endif
+#ifndef ME_GOAHEAD_SSL_REVOKE
+    #define ME_GOAHEAD_SSL_REVOKE ""
+#endif
+#ifndef ME_GOAHEAD_SSL_TICKET
+    #define ME_GOAHEAD_SSL_TICKET 1
+#endif
+#ifndef ME_GOAHEAD_SSL_TIMEOUT
+    #define ME_GOAHEAD_SSL_TIMEOUT 86400
+#endif
+#ifndef ME_GOAHEAD_SSL_VERIFY_ISSUER
+    #define ME_GOAHEAD_SSL_VERIFY_ISSUER 0
+#endif
+#ifndef ME_GOAHEAD_SSL_VERIFY_PEER
+    #define ME_GOAHEAD_SSL_VERIFY_PEER 0
+#endif
+#ifndef ME_GOAHEAD_STEALTH
+    #define ME_GOAHEAD_STEALTH 1
+#endif
+#ifndef ME_GOAHEAD_TRACING
+    #define ME_GOAHEAD_TRACING 1
+#endif
+#ifndef ME_GOAHEAD_UPLOAD
+    #define ME_GOAHEAD_UPLOAD 1
+#endif
+#ifndef ME_GOAHEAD_UPLOAD_DIR
+    #define ME_GOAHEAD_UPLOAD_DIR "tmp"
+#endif
+#ifndef ME_GOAHEAD_XFRAME_HEADER
+    #define ME_GOAHEAD_XFRAME_HEADER "SAMEORIGIN"
+#endif
+#ifndef ME_INTEGRATE
+    #define ME_INTEGRATE 1
+#endif
+#ifndef ME_MANIFEST
+    #define ME_MANIFEST "installs/manifest.me"
+#endif
+#ifndef ME_MBEDTLS_COMPACT
+    #define ME_MBEDTLS_COMPACT 1
+#endif
+#ifndef ME_NAME
+    #define ME_NAME "goahead"
+#endif
+#ifndef ME_PREFIXES
+    #define ME_PREFIXES "install-prefixes"
+#endif
+#ifndef ME_ROM
+    #define ME_ROM 0
+#endif
+#ifndef ME_STATIC
+    #define ME_STATIC 1
+#endif
+#ifndef ME_TITLE
+    #define ME_TITLE "Embedthis GoAhead"
+#endif
+#ifndef ME_VERSION
+    #define ME_VERSION "3.6.5"
+#endif
+
+/* Prefixes */
+#ifndef ME_ROOT_PREFIX
+    #define ME_ROOT_PREFIX "/"
+#endif
+#ifndef ME_BASE_PREFIX
+    #define ME_BASE_PREFIX "/usr/local"
+#endif
+#ifndef ME_DATA_PREFIX
+    #define ME_DATA_PREFIX "/"
+#endif
+#ifndef ME_STATE_PREFIX
+    #define ME_STATE_PREFIX "/var"
+#endif
+#ifndef ME_APP_PREFIX
+    #define ME_APP_PREFIX "/usr/local/lib/goahead"
+#endif
+#ifndef ME_VAPP_PREFIX
+    #define ME_VAPP_PREFIX "/usr/local/lib/goahead/3.6.5"
+#endif
+#ifndef ME_BIN_PREFIX
+    #define ME_BIN_PREFIX "/usr/local/bin"
+#endif
+#ifndef ME_INC_PREFIX
+    #define ME_INC_PREFIX "/usr/local/include"
+#endif
+#ifndef ME_LIB_PREFIX
+    #define ME_LIB_PREFIX "/usr/local/lib"
+#endif
+#ifndef ME_MAN_PREFIX
+    #define ME_MAN_PREFIX "/usr/local/share/man"
+#endif
+#ifndef ME_SBIN_PREFIX
+    #define ME_SBIN_PREFIX "/usr/local/sbin"
+#endif
+#ifndef ME_ETC_PREFIX
+    #define ME_ETC_PREFIX "/etc/goahead"
+#endif
+#ifndef ME_WEB_PREFIX
+    #define ME_WEB_PREFIX "/var/www/goahead"
+#endif
+#ifndef ME_LOG_PREFIX
+    #define ME_LOG_PREFIX "/var/log/goahead"
+#endif
+#ifndef ME_SPOOL_PREFIX
+    #define ME_SPOOL_PREFIX "/var/spool/goahead"
+#endif
+#ifndef ME_CACHE_PREFIX
+    #define ME_CACHE_PREFIX "/var/spool/goahead/cache"
+#endif
+#ifndef ME_SRC_PREFIX
+    #define ME_SRC_PREFIX "goahead-3.6.5"
+#endif
+
+/* Suffixes */
+#ifndef ME_EXE
+    #define ME_EXE ""
+#endif
+#ifndef ME_SHLIB
+    #define ME_SHLIB ".so"
+#endif
+#ifndef ME_SHOBJ
+    #define ME_SHOBJ ".so"
+#endif
+#ifndef ME_LIB
+    #define ME_LIB ".a"
+#endif
+#ifndef ME_OBJ
+    #define ME_OBJ ".o"
+#endif
+
+/* Profile */
+#ifndef ME_CONFIG_CMD
+    #define ME_CONFIG_CMD "me -d -q -platform linux-x86-static -static -configure . -gen make"
+#endif
+#ifndef ME_GOAHEAD_PRODUCT
+    #define ME_GOAHEAD_PRODUCT 1
+#endif
+#ifndef ME_PROFILE
+    #define ME_PROFILE "static"
+#endif
+#ifndef ME_TUNE_SIZE
+    #define ME_TUNE_SIZE 1
+#endif
+
+/* Miscellaneous */
+#ifndef ME_MAJOR_VERSION
+    #define ME_MAJOR_VERSION 3
+#endif
+#ifndef ME_MINOR_VERSION
+    #define ME_MINOR_VERSION 6
+#endif
+#ifndef ME_PATCH_VERSION
+    #define ME_PATCH_VERSION 5
+#endif
+#ifndef ME_VNUM
+    #define ME_VNUM 300060005
+#endif
+
+/* Components */
+#ifndef ME_COM_CC
+    #define ME_COM_CC 1
+#endif
+#ifndef ME_COM_LIB
+    #define ME_COM_LIB 1
+#endif
+#ifndef ME_COM_MATRIXSSL
+    #define ME_COM_MATRIXSSL 0
+#endif
+#ifndef ME_COM_MBEDTLS
+    #define ME_COM_MBEDTLS 1
+#endif
+#ifndef ME_COM_NANOSSL
+    #define ME_COM_NANOSSL 0
+#endif
+#ifndef ME_COM_OPENSSL
+    #define ME_COM_OPENSSL 0
+#endif
+#ifndef ME_COM_OSDEP
+    #define ME_COM_OSDEP 1
+#endif
+#ifndef ME_COM_SSL
+    #define ME_COM_SSL 1
+#endif
+#ifndef ME_COM_VXWORKS
+    #define ME_COM_VXWORKS 0
+#endif

+ 47 - 62
app/goahead-5.1.0/paks/osdep/dist/osdep.h → app/goahead-3.6.5/build/linux-arm-static/inc/osdep.h

@@ -1,5 +1,5 @@
 /**
-    osdep.h -- O/S abstraction for products using MakeMe.
+    osdep.h -- O/S abstraction for products using MakeMe. 
  */
 
 #ifndef _h_OSDEP
@@ -48,7 +48,7 @@
 #define ME_BIG_ENDIAN      2           /**< Big endian byte ordering */
 
 /*
-    Use compiler definitions to determine the CPU type.
+    Use compiler definitions to determine the CPU type. 
     The default endianness can be overridden by configure --endian big|little.
  */
 #if defined(__alpha__)
@@ -61,11 +61,6 @@
     #define ME_CPU_ARCH ME_CPU_ARM
     #define CPU_ENDIAN ME_LITTLE_ENDIAN
 
-#elif defined(__arm64__) || defined(__aarch64__)
-    #define ME_CPU "arm"
-    #define ME_CPU_ARCH ME_CPU_ARM
-    #define CPU_ENDIAN ME_LITTLE_ENDIAN
-
 #elif defined(__x86_64__) || defined(_M_AMD64)
     #define ME_CPU "x64"
     #define ME_CPU_ARCH ME_CPU_X64
@@ -119,8 +114,8 @@
 #endif
 
 /*
-    Operating system defines. Use compiler standard defintions to sleuth. Works for all except VxWorks which does not
-    define any special symbol. NOTE: Support for SCOV Unix, LynxOS and UnixWare is deprecated.
+    Operating system defines. Use compiler standard defintions to sleuth.  Works for all except VxWorks which does not
+    define any special symbol.  NOTE: Support for SCOV Unix, LynxOS and UnixWare is deprecated. 
  */
 #if defined(__APPLE__)
     #define ME_OS "macosx"
@@ -135,7 +130,11 @@
     #define ME_OS "linux"
     #define LINUX 1
     #define ME_UNIX_LIKE 1
-    #define ME_WIN_LIKE 0
+    #define ME_WIN_LIKE 0   
+    /*** jimbo add ***/
+    #define HAS_USHORT 1
+    #define HAS_UINT 1
+    #define HAS_ULONG 1
 
 #elif defined(__FreeBSD__)
     #define ME_OS "freebsd"
@@ -143,8 +142,6 @@
     #define ME_UNIX_LIKE 1
     #define ME_WIN_LIKE 0
     #define ME_BSD_LIKE 1
-    #define HAS_USHORT 1
-    #define HAS_UINT 1
 
 #elif defined(__OpenBSD__)
     #define ME_OS "freebsd"
@@ -234,7 +231,7 @@
     #define ME_UNIX_LIKE 0
     #define ME_WIN_LIKE 0
 
-#elif defined(TIDSP)
+#elif defined(TIDSP) 
     #define ME_OS "tidsp"
     #define ME_UNIX_LIKE 0
     #define ME_WIN_LIKE 0
@@ -242,7 +239,7 @@
 
 #endif
 
-#if __WORDSIZE == 64 || __amd64 || __x86_64 || __x86_64__ || _WIN64 || __mips64 || __arch64__ || __arm64__
+#if __WORDSIZE == 64 || __amd64 || __x86_64 || __x86_64__ || _WIN64 || __mips64
     #define ME_64 1
     #define ME_WORDSIZE 64
 #else
@@ -285,8 +282,8 @@
         /* Target Windows 7 by default */
         #define _WIN32_WINNT 0x601
     #endif
-    /*
-        Work-around to allow the windows 7.* SDK to be used with VS 2012
+    /* 
+        Work-around to allow the windows 7.* SDK to be used with VS 2012 
         MSC_VER 1800 2013
         MSC_VER 1900 2015
      */
@@ -330,9 +327,6 @@
     #include    <process.h>
     #include    <windows.h>
     #include    <shlobj.h>
-    #if _MSC_VER >= 1800
-        #include    <stdbool.h>
-    #endif
     #if ME_DEBUG
         #include <crtdbg.h>
     #endif
@@ -358,7 +352,7 @@
     #include    <math.h>
 #endif
 #if ME_UNIX_LIKE
-    #include    <grp.h>
+    #include    <grp.h> 
 #endif
 #if ME_WIN_LIKE
     #include    <io.h>
@@ -377,15 +371,14 @@
     #include    <netinet/ip.h>
 #endif
 #if ME_UNIX_LIKE
-    #include    <pthread.h>
-    #include    <pwd.h>
+    #include    <pthread.h> 
+    #include    <pwd.h> 
 #if !CYGWIN
     #include    <resolv.h>
 #endif
 #endif
 #if ME_BSD_LIKE
     #include    <readpassphrase.h>
-    #include    <sys/sysctl.h>
 #endif
     #include    <setjmp.h>
     #include    <signal.h>
@@ -406,6 +399,7 @@
 #if ME_UNIX_LIKE
     #include    <sys/ioctl.h>
     #include    <sys/mman.h>
+    #include    <sys/poll.h>
     #include    <sys/resource.h>
     #include    <sys/select.h>
     #include    <sys/time.h>
@@ -413,7 +407,6 @@
     #include    <sys/utsname.h>
     #include    <sys/uio.h>
     #include    <sys/wait.h>
-    #include    <poll.h>
     #include    <unistd.h>
 #endif
     #include    <time.h>
@@ -454,6 +447,7 @@
     #include    <mach/mach_init.h>
     #include    <mach/mach_time.h>
     #include    <mach/task.h>
+    #include    <sys/sysctl.h>
     #include    <libkern/OSAtomic.h>
 #endif
 #if VXWORKS
@@ -500,8 +494,7 @@
             /**
                 Boolean data type.
              */
-            #if !WINDOWS || ((_MSC_VER < 1800) && !defined(bool))
-                /* Bool introduced via stdbool in VS 2015 */
+            #if _MSC_VER <= 1800
                 typedef char bool;
             #endif
         #endif
@@ -540,11 +533,6 @@
     typedef const unsigned char cuchar;
 #endif
 
-/***** jimbo modify ****/
-#define HAS_USHORT
-#define HAS_UINT
-#define HAS_ULONG
-
 #ifndef HAS_USHORT
     #define HAS_USHORT 1
     /**
@@ -851,7 +839,7 @@ typedef int64 Ticks;
 
 #if ME_WIN_LIKE
     /*
-        Use PUBLIC on function declarations and definitions (*.c and *.h).
+        Use PUBLIC on function declarations and definitions (*.c and *.h). 
      */
     #define PUBLIC      __declspec(dllexport)
     #define PUBLIC_DATA __declspec(dllexport)
@@ -862,18 +850,18 @@ typedef int64 Ticks;
     #define PRIVATE     static
 #endif
 
-/* Undefines for Qt - Ugh */
-#undef max
-#undef min
-
-#define max(a,b)  (((a) > (b)) ? (a) : (b))
-#define min(a,b)  (((a) < (b)) ? (a) : (b))
+#ifndef max
+    #define max(a,b)  (((a) > (b)) ? (a) : (b))
+#endif
+#ifndef min
+    #define min(a,b)  (((a) < (b)) ? (a) : (b))
+#endif
 
 #ifndef PRINTF_ATTRIBUTE
     #if ((__GNUC__ >= 3) && !DOXYGEN) || MACOSX
-        /**
-            Use gcc attribute to check printf fns.  a1 is the 1-based index of the parameter containing the format,
-            and a2 the index of the first argument. Note that some gcc 2.x versions don't handle this properly
+        /** 
+            Use gcc attribute to check printf fns.  a1 is the 1-based index of the parameter containing the format, 
+            and a2 the index of the first argument. Note that some gcc 2.x versions don't handle this properly 
          */
         #define PRINTF_ATTRIBUTE(a1, a2) __attribute__ ((format (__printf__, a1, a2)))
     #else
@@ -943,10 +931,10 @@ typedef int64 Ticks;
 /*
     Deprecated API warnings
  */
-#if ((__GNUC__ >= 3) || MACOSX) && !VXWORKS && ME_DEPRECATED_WARNINGS
+#if ((__GNUC__ >= 3) || MACOSX) && !VXWORKS
     #define ME_DEPRECATED(MSG) __attribute__ ((deprecated(MSG)))
 #else
-    #define ME_DEPRECATED(MSG)
+    #define ME_DEPRECATED(MSG) 
 #endif
 
 /********************************** Tunables *********************************/
@@ -963,13 +951,15 @@ typedef int64 Ticks;
 #ifndef ME_MAX_PATH
     #define ME_MAX_PATH         1024        /**< Reasonable filename size */
 #endif
+#if DEPRECATE || 1
+/* This is not a maximum, but a default size */
+#ifndef ME_MAX_BUFFER
+    #define ME_MAX_BUFFER       4096        /**< Reasonable size for buffers */
+#endif
+#endif
 #ifndef ME_BUFSIZE
     #define ME_BUFSIZE          4096        /**< Reasonable size for buffers */
 #endif
-#ifndef ME_MAX_BUFFER
-    #define ME_MAX_BUFFER       ME_BUFSIZE  /* DEPRECATE */
-#endif
-
 #ifndef ME_MAX_ARGC
     #define ME_MAX_ARGC         32          /**< Maximum number of command line args if using MAIN()*/
 #endif
@@ -1024,12 +1014,11 @@ typedef int64 Ticks;
 
 #if ME_UNIX_LIKE
     #define closesocket(x)  close(x)
-    #if !defined(PTHREAD_MUTEX_RECURSIVE_NP) || FREEBSD
+    #ifndef PTHREAD_MUTEX_RECURSIVE_NP
         #define PTHREAD_MUTEX_RECURSIVE_NP PTHREAD_MUTEX_RECURSIVE
-    #else
-        #ifndef PTHREAD_MUTEX_RECURSIVE
-            #define PTHREAD_MUTEX_RECURSIVE PTHREAD_MUTEX_RECURSIVE_NP
-        #endif
+    #endif
+    #ifndef PTHREAD_MUTEX_RECURSIVE
+        #define PTHREAD_MUTEX_RECURSIVE PTHREAD_MUTEX_RECURSIVE_NP
     #endif
 #endif
 
@@ -1049,7 +1038,7 @@ typedef int64 Ticks;
     #endif
 #endif
 
-#if ME_BSD_LIKE
+#if MACOSX
     /*
         Fix for MAC OS X - getenv
      */
@@ -1106,7 +1095,7 @@ typedef int64 Ticks;
     #define FILE_TEXT       "t"
 
     /*
-        Error codes
+        Error codes 
      */
     #define EPERM           1
     #define ENOENT          2
@@ -1220,7 +1209,7 @@ typedef int64 Ticks;
     /*
         stat flags
      */
-    #define S_IFMT          0170000
+    #define S_IFMT          0170000 
     #define S_IFDIR         0040000
     #define S_IFCHR         0020000         /* character special */
     #define S_IFIFO         0010000
@@ -1239,7 +1228,7 @@ typedef int64 Ticks;
     #define STARTF_USESHOWWINDOW 0
     #define STARTF_USESTDHANDLES 0
 
-    #define BUFSIZ   ME_BUFSIZE
+    #define BUFSIZ   ME_MAX_BUFFER
     #define PATHSIZE ME_MAX_PATH
     #define gethostbyname2(a,b) gethostbyname(a)
     #pragma comment( lib, "ws2.lib" )
@@ -1258,10 +1247,6 @@ typedef int64 Ticks;
     struct sockaddr_storage { char pad[1024]; };
 #endif /* TIDSP */
 
-#ifndef NBBY
-    #define NBBY 8
-#endif
-
 /*********************************** Externs **********************************/
 
 #ifdef __cplusplus
@@ -1269,8 +1254,8 @@ extern "C" {
 #endif
 
 #if LINUX
-    extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict __attr, int *__restrict __kind);
-    extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind);
+    extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict __attr, int *__restrict __kind) __THROW;
+    extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind) __THROW;
     extern char **environ;
 #endif
 

+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/remote_control.h → app/goahead-3.6.5/build/linux-arm-static/inc/remote_control.h


+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/sel.h → app/goahead-3.6.5/build/linux-arm-static/inc/sel.h


+ 0 - 0
app/goahead-5.1.0/src/libipmi/inc/sensor_helpers.h → app/goahead-3.6.5/build/linux-arm-static/inc/sensor_helpers.h


+ 0 - 0
app/goahead-5.1.0/src/web_interface/inc/server_health.h → app/goahead-3.6.5/build/linux-arm-static/inc/server_health.h


+ 0 - 0
app/goahead-5.1.0/configure → app/goahead-3.6.5/configure


+ 0 - 0
app/goahead-5.1.0/doc/api/api.css → app/goahead-3.6.5/doc/api/api.css


File diff suppressed because it is too large
+ 210 - 210
app/goahead-3.6.5/doc/api/goahead.dtags


File diff suppressed because it is too large
+ 237 - 245
app/goahead-3.6.5/doc/api/goahead.html


File diff suppressed because it is too large
+ 0 - 0
app/goahead-3.6.5/doc/api/goahead.tags


+ 1 - 1
app/goahead-5.1.0/doc/contents/README.TXT → app/goahead-3.6.5/doc/contents/README.TXT

@@ -84,6 +84,6 @@ Embedthis is a trademark of Embedthis Software LLC. Embedthis, GoAhead and Ejscr
 Embedthis Software, LLC.
 4616 25th Ave NE, #733
 Seattle, WA 98105.
-+1 (408) 905-7017
++1 (425) 329-3490
 embedthis.com
 info@embedthis.com

+ 0 - 0
app/goahead-5.1.0/doc/contents/css/all.css.less → app/goahead-3.6.5/doc/contents/css/all.css.less


+ 0 - 0
app/goahead-5.1.0/doc/contents/css/api.css → app/goahead-3.6.5/doc/contents/css/api.css


+ 0 - 0
app/goahead-5.1.0/doc/contents/css/app.less → app/goahead-3.6.5/doc/contents/css/app.less


+ 0 - 0
app/goahead-5.1.0/doc/contents/css/override.less → app/goahead-3.6.5/doc/contents/css/override.less


+ 0 - 0
app/goahead-5.1.0/doc/contents/css/theme.less → app/goahead-3.6.5/doc/contents/css/theme.less


+ 0 - 0
app/goahead-5.1.0/doc/contents/developers/authstore.html → app/goahead-3.6.5/doc/contents/developers/authstore.html


+ 0 - 0
app/goahead-5.1.0/doc/contents/developers/embedding.html → app/goahead-3.6.5/doc/contents/developers/embedding.html


Some files were not shown because too many files changed in this diff