Quellcode durchsuchen

2019-10-17 / Folus Wen

Actions:
1. uboot autoboot function stop string modify to double SPACE key.
2. uboot autoboot function delay time modify to 1 second.

Files:
1. As follow commit history.
FolusWen vor 5 Jahren
Ursprung
Commit
f842d9a76f
56 geänderte Dateien mit 10949 neuen und 1485 gelöschten Zeilen
  1. 1204 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/C.includecache
  2. 162 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/depend.internal
  3. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/test-server/test-client.c.o
  4. 1238 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/C.includecache
  5. 164 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/depend.internal
  6. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/test-server/fuzxy.c.o
  7. 1246 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/C.includecache
  8. 169 0
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/depend.internal
  9. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/test-server/test-ping.c.o
  10. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/websockets_shared.dir/lib/extension-permessage-deflate.c.o
  11. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-client
  12. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-fuzxy
  13. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-ping
  14. 28 0
      EVSE/GPL/libwebsockets-v2.1-stable/install_manifest.txt
  15. 1 0
      EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.so
  16. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.so.9
  17. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-client
  18. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-echo
  19. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fraggle
  20. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fuzxy
  21. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-ping
  22. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server
  23. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-extpoll
  24. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-pthreads
  25. 4214 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/include/libwebsockets.h
  26. 117 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/include/lws_config.h
  27. 17 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfig.cmake
  28. 11 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfigVersion.cmake
  29. 31 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets-debug.cmake
  30. 93 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets.cmake
  31. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.a
  32. 1 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so
  33. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so.9
  34. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/favicon.ico
  35. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/leaf.jpg
  36. 16 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.key.pem
  37. 18 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.pem
  38. BIN
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets.org-logo.png
  39. 118 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/lws-common.js
  40. 781 0
      EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/test.html
  41. BIN
      EVSE/Projects/AW-Regular/Images/MLO
  42. BIN
      EVSE/Projects/AW-Regular/Images/ramdisk.gz
  43. BIN
      EVSE/Projects/AW-Regular/Images/u-boot.img
  44. BIN
      EVSE/Projects/AW-Regular/Images/zImage
  45. 296 296
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_System.map
  46. 290 290
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_kallsyms1.S
  47. 290 290
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_kallsyms2.S
  48. BIN
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_vmlinux1
  49. BIN
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_vmlinux2
  50. 1 1
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.version
  51. 157 243
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/arch/arm/boot/dts/.am335x-evm.dtb.dts.tmp
  52. 219 289
      board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/arch/arm/boot/dts/am335x-evm.dts
  53. 7 2
      board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/.config
  54. 12 9
      board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/.config.old
  55. 24 45
      board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/arch/arm/dts/.am335x-evm.dtb.dts.tmp
  56. 24 20
      board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/arch/arm/dts/am335x-evm.dts

+ 1204 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/C.includecache

@@ -0,0 +1,1204 @@
+#IncludeRegexLine: ^[ 	]*[#%][ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+cstddef
+-
+cstdarg
+-
+mbed-drivers/mbed.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/mbed-drivers/mbed.h
+sal-iface-eth/EthernetInterface.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-iface-eth/EthernetInterface.h
+sockets/TCPListener.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sockets/TCPListener.h
+sal-stack-lwip/lwipv4_init.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-stack-lwip/lwipv4_init.h
+stdarg.h
+-
+lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/lws_config.h
+winsock2.h
+-
+ws2tcpip.h
+-
+stddef.h
+-
+basetsd.h
+-
+fcntl.h
+-
+unistd.h
+-
+netinet/in.h
+-
+poll.h
+-
+netdb.h
+-
+unistd.h
+-
+ev.h
+-
+uv.h
+-
+uv-version.h
+-
+sys/time.h
+-
+unistd.h
+-
+cyassl/openssl/ssl.h
+-
+cyassl/error-ssl.h
+-
+wolfssl/openssl/ssl.h
+-
+wolfssl/error-ssl.h
+-
+polarssl/ssl.h
+-
+mbedtls/ssl.h
+-
+openssl/ssl.h
+-
+openssl/err.h
+-
+stddef.h
+-
+user_interface.h
+-
+espconn.h
+-
+os_type.h
+-
+osapi.h
+-
+ets_sys.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/ets_sys.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/test-client.c
+lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/lws_config.h
+stdio.h
+-
+stdlib.h
+-
+getopt.h
+-
+string.h
+-
+signal.h
+-
+gettimeofday.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/gettimeofday.h
+syslog.h
+-
+sys/time.h
+-
+unistd.h
+-
+../lib/libwebsockets.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+bits/types.h
+-
+stddef.h
+-
+wchar.h
+-
+gconv.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+asm-generic/errno-base.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+asm/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+asm-generic/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+asm-generic/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+asm-generic/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+features.h
+-
+bits/types.h
+-
+bits/byteswap-16.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+linux/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+bits/fcntl-linux.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+bits/fcntl-linux.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+linux/limits.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+bits/local_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+asm/sigcontext.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+stddef.h
+-
+sys/types.h
+-
+bits/socket_type.h
+-
+bits/sockaddr.h
+-
+asm/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+endian.h
+-
+bits/types.h
+-
+stdlib.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-path.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+bits/types.h
+-
+bits/types.h
+-
+bits/timex.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+bits/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+features.h
+-
+bits/wordsize.h
+-
+bits/typesizes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+bits/stdio_lim.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+features.h
+-
+bits/types.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+features.h
+-
+bits/endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+features.h
+-
+bits/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+features.h
+-
+bits/types.h
+-
+bits/fcntl.h
+-
+time.h
+-
+bits/stat.h
+-
+bits/fcntl2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+stdc-predef.h
+-
+sys/cdefs.h
+-
+gnu/stubs.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+features.h
+-
+wchar.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ctype.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+gnu/stubs-soft.h
+-
+gnu/stubs-hard.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+features.h
+-
+stdint.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+_G_config.h
+-
+stdarg.h
+-
+sys/cdefs.h
+-
+shlib-compat.h
+-
+bits/libio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+features.h
+-
+bits/wordsize.h
+-
+bits/posix1_lim.h
+-
+bits/posix2_lim.h
+-
+bits/xopen_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+asm/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+features.h
+-
+netinet/in.h
+-
+stdint.h
+-
+rpc/netdb.h
+-
+bits/siginfo.h
+-
+time.h
+-
+bits/netdb.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+features.h
+-
+stdint.h
+-
+sys/socket.h
+-
+bits/types.h
+-
+bits/in.h
+-
+endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+time.h
+-
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdarg.h
+-
+openssl/crypto.h
+-
+stdint.h
+-
+inttypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+limits.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/ossl_typ.h
+-
+openssl/crypto.h
+-
+assert.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+openssl/ossl_typ.h
+-
+stddef.h
+-
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+openssl/crypto.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+stdlib.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/opensslv.h
+-
+openssl/ossl_typ.h
+-
+openssl/ebcdic.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+openssl/dh.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+openssl/buffer.h
+-
+openssl/pqueue.h
+-
+resource.h
+-
+sys/timeb.h
+-
+winsock.h
+-
+sys/timeval.h
+-
+sys/times.h
+-
+sys/time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+openssl/opensslconf.h
+-
+sys/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+openssl/opensslconf.h
+-
+openssl/asn1.h
+-
+openssl/symhacks.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdlib.h
+-
+openssl/ossl_typ.h
+-
+openssl/bio.h
+-
+openssl/lhash.h
+-
+errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+openssl/opensslconf.h
+-
+openssl/opensslconf.h
+-
+openssl/ossl_typ.h
+-
+openssl/symhacks.h
+-
+openssl/bio.h
+-
+openssl/objects.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+openssl/opensslconf.h
+-
+openssl/evp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+openssl/opensslconf.h
+-
+stdio.h
+-
+ctype.h
+-
+krb5.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/bio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+openssl/obj_mac.h
+-
+openssl/bio.h
+-
+openssl/asn1.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/evp.h
+-
+openssl/x509.h
+-
+openssl/pem2.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+stdio.h
+-
+stdlib.h
+-
+string.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+openssl/stack.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+openssl/e_os2.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+openssl/e_os2.h
+-
+openssl/comp.h
+-
+openssl/bio.h
+-
+openssl/x509.h
+-
+openssl/crypto.h
+-
+openssl/lhash.h
+-
+openssl/buffer.h
+-
+openssl/pem.h
+-
+openssl/hmac.h
+-
+openssl/kssl.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ssl2.h
+-
+openssl/ssl3.h
+-
+openssl/tls1.h
+-
+openssl/dtls1.h
+-
+openssl/ssl23.h
+-
+openssl/srtp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+openssl/comp.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+openssl/buffer.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/asn1.h
+-
+openssl/safestack.h
+-
+openssl/ec.h
+-
+openssl/ecdsa.h
+-
+openssl/ecdh.h
+-
+openssl/rsa.h
+-
+openssl/dsa.h
+-
+openssl/dh.h
+-
+openssl/sha.h
+-
+openssl/ossl_typ.h
+-
+openssl/x509_vfy.h
+-
+openssl/pkcs7.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+openssl/x509.h
+-
+openssl/opensslconf.h
+-
+openssl/lhash.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+sys/poll.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+features.h
+-
+bits/sigset.h
+-
+bits/types.h
+-
+bits/signum.h
+-
+time.h
+-
+bits/siginfo.h
+-
+bits/sigaction.h
+-
+bits/sigcontext.h
+-
+stddef.h
+-
+bits/sigstack.h
+-
+sys/ucontext.h
+-
+bits/pthreadtypes.h
+-
+bits/sigthread.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+features.h
+-
+bits/wchar.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+features.h
+-
+stddef.h
+-
+bits/types.h
+-
+libio.h
+-
+stdarg.h
+-
+bits/stdio_lim.h
+-
+bits/sys_errlist.h
+-
+getopt.h
+-
+bits/stdio.h
+-
+bits/stdio2.h
+-
+bits/stdio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+features.h
+-
+stddef.h
+-
+bits/waitflags.h
+-
+bits/waitstatus.h
+-
+xlocale.h
+-
+sys/types.h
+-
+alloca.h
+-
+bits/stdlib-bsearch.h
+-
+bits/stdlib-float.h
+-
+bits/stdlib.h
+-
+bits/stdlib-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+features.h
+-
+stddef.h
+-
+xlocale.h
+-
+bits/string.h
+-
+bits/string2.h
+-
+bits/string3.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+features.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+features.h
+-
+bits/poll.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/poll2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+features.h
+-
+bits/types.h
+-
+bits/select.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/time.h
+-
+bits/select2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+features.h
+-
+sys/uio.h
+-
+stddef.h
+-
+bits/sigset.h
+-
+bits/socket.h
+-
+bits/socket2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/syslog.h
+features.h
+-
+stdarg.h
+-
+bits/syslog-path.h
+-
+bits/syslog.h
+-
+bits/syslog-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+bits/time.h
+-
+sys/select.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+stddef.h
+-
+endian.h
+-
+sys/select.h
+-
+sys/sysmacros.h
+-
+bits/pthreadtypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+features.h
+-
+signal.h
+-
+bits/sigcontext.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+features.h
+-
+sys/types.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/syslog.h
+sys/syslog.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+features.h
+-
+stddef.h
+-
+bits/time.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+features.h
+-
+bits/posix_opt.h
+-
+bits/environments.h
+-
+bits/types.h
+-
+stddef.h
+-
+bits/confname.h
+-
+getopt.h
+-
+bits/unistd.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+features.h
+-
+stdio.h
+-
+stdarg.h
+-
+bits/wchar.h
+-
+stddef.h
+-
+wctype.h
+-
+xlocale.h
+-
+xlocale.h
+-
+xlocale.h
+-
+wctype.h
+-
+bits/wchar2.h
+-
+bits/wchar-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+features.h
+-
+bits/types.h
+-
+wchar.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+
+lws_config.h
+

+ 162 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/depend.internal

@@ -0,0 +1,162 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.10
+
+CMakeFiles/test-client.dir/test-server/test-client.c.o
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/test-client.c
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-path.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+ lws_config.h

BIN
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-client.dir/test-server/test-client.c.o


+ 1238 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/C.includecache

@@ -0,0 +1,1238 @@
+#IncludeRegexLine: ^[ 	]*[#%][ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+cstddef
+-
+cstdarg
+-
+mbed-drivers/mbed.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/mbed-drivers/mbed.h
+sal-iface-eth/EthernetInterface.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-iface-eth/EthernetInterface.h
+sockets/TCPListener.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sockets/TCPListener.h
+sal-stack-lwip/lwipv4_init.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-stack-lwip/lwipv4_init.h
+stdarg.h
+-
+lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/lws_config.h
+winsock2.h
+-
+ws2tcpip.h
+-
+stddef.h
+-
+basetsd.h
+-
+fcntl.h
+-
+unistd.h
+-
+netinet/in.h
+-
+poll.h
+-
+netdb.h
+-
+unistd.h
+-
+ev.h
+-
+uv.h
+-
+uv-version.h
+-
+sys/time.h
+-
+unistd.h
+-
+cyassl/openssl/ssl.h
+-
+cyassl/error-ssl.h
+-
+wolfssl/openssl/ssl.h
+-
+wolfssl/error-ssl.h
+-
+polarssl/ssl.h
+-
+mbedtls/ssl.h
+-
+openssl/ssl.h
+-
+openssl/err.h
+-
+stddef.h
+-
+user_interface.h
+-
+espconn.h
+-
+os_type.h
+-
+osapi.h
+-
+ets_sys.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/ets_sys.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/fuzxy.c
+lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/lws_config.h
+stdio.h
+-
+stdlib.h
+-
+getopt.h
+-
+signal.h
+-
+string.h
+-
+sys/stat.h
+-
+fcntl.h
+-
+assert.h
+-
+errno.h
+-
+../lib/libwebsockets.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+io.h
+-
+gettimeofday.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/gettimeofday.h
+syslog.h
+-
+sys/time.h
+-
+unistd.h
+-
+sys/socket.h
+-
+netinet/in.h
+-
+strings.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+bits/types.h
+-
+stddef.h
+-
+wchar.h
+-
+gconv.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+asm-generic/errno-base.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+asm/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+asm-generic/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+asm-generic/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+asm-generic/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+features.h
+-
+bits/types.h
+-
+bits/byteswap-16.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+linux/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+bits/fcntl-linux.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+bits/fcntl-linux.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+linux/limits.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+bits/local_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+asm/sigcontext.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+stddef.h
+-
+sys/types.h
+-
+bits/socket_type.h
+-
+bits/sockaddr.h
+-
+asm/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+endian.h
+-
+bits/types.h
+-
+stdlib.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-path.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+bits/types.h
+-
+bits/types.h
+-
+bits/timex.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+bits/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+features.h
+-
+bits/wordsize.h
+-
+bits/typesizes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+bits/stdio_lim.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+features.h
+-
+bits/types.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+features.h
+-
+bits/endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+features.h
+-
+bits/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+features.h
+-
+bits/types.h
+-
+bits/fcntl.h
+-
+time.h
+-
+bits/stat.h
+-
+bits/fcntl2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+stdc-predef.h
+-
+sys/cdefs.h
+-
+gnu/stubs.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+features.h
+-
+wchar.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ctype.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+gnu/stubs-soft.h
+-
+gnu/stubs-hard.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+features.h
+-
+stdint.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+_G_config.h
+-
+stdarg.h
+-
+sys/cdefs.h
+-
+shlib-compat.h
+-
+bits/libio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+features.h
+-
+bits/wordsize.h
+-
+bits/posix1_lim.h
+-
+bits/posix2_lim.h
+-
+bits/xopen_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+asm/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+features.h
+-
+netinet/in.h
+-
+stdint.h
+-
+rpc/netdb.h
+-
+bits/siginfo.h
+-
+time.h
+-
+bits/netdb.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+features.h
+-
+stdint.h
+-
+sys/socket.h
+-
+bits/types.h
+-
+bits/in.h
+-
+endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+time.h
+-
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdarg.h
+-
+openssl/crypto.h
+-
+stdint.h
+-
+inttypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+limits.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/ossl_typ.h
+-
+openssl/crypto.h
+-
+assert.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+openssl/ossl_typ.h
+-
+stddef.h
+-
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+openssl/crypto.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+stdlib.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/opensslv.h
+-
+openssl/ossl_typ.h
+-
+openssl/ebcdic.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+openssl/dh.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+openssl/buffer.h
+-
+openssl/pqueue.h
+-
+resource.h
+-
+sys/timeb.h
+-
+winsock.h
+-
+sys/timeval.h
+-
+sys/times.h
+-
+sys/time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+openssl/opensslconf.h
+-
+sys/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+openssl/opensslconf.h
+-
+openssl/asn1.h
+-
+openssl/symhacks.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdlib.h
+-
+openssl/ossl_typ.h
+-
+openssl/bio.h
+-
+openssl/lhash.h
+-
+errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+openssl/opensslconf.h
+-
+openssl/opensslconf.h
+-
+openssl/ossl_typ.h
+-
+openssl/symhacks.h
+-
+openssl/bio.h
+-
+openssl/objects.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+openssl/opensslconf.h
+-
+openssl/evp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+openssl/opensslconf.h
+-
+stdio.h
+-
+ctype.h
+-
+krb5.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/bio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+openssl/obj_mac.h
+-
+openssl/bio.h
+-
+openssl/asn1.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/evp.h
+-
+openssl/x509.h
+-
+openssl/pem2.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+stdio.h
+-
+stdlib.h
+-
+string.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+openssl/stack.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+openssl/e_os2.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+openssl/e_os2.h
+-
+openssl/comp.h
+-
+openssl/bio.h
+-
+openssl/x509.h
+-
+openssl/crypto.h
+-
+openssl/lhash.h
+-
+openssl/buffer.h
+-
+openssl/pem.h
+-
+openssl/hmac.h
+-
+openssl/kssl.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ssl2.h
+-
+openssl/ssl3.h
+-
+openssl/tls1.h
+-
+openssl/dtls1.h
+-
+openssl/ssl23.h
+-
+openssl/srtp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+openssl/comp.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+openssl/buffer.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/asn1.h
+-
+openssl/safestack.h
+-
+openssl/ec.h
+-
+openssl/ecdsa.h
+-
+openssl/ecdh.h
+-
+openssl/rsa.h
+-
+openssl/dsa.h
+-
+openssl/dh.h
+-
+openssl/sha.h
+-
+openssl/ossl_typ.h
+-
+openssl/x509_vfy.h
+-
+openssl/pkcs7.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+openssl/x509.h
+-
+openssl/opensslconf.h
+-
+openssl/lhash.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+sys/poll.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+features.h
+-
+bits/sigset.h
+-
+bits/types.h
+-
+bits/signum.h
+-
+time.h
+-
+bits/siginfo.h
+-
+bits/sigaction.h
+-
+bits/sigcontext.h
+-
+stddef.h
+-
+bits/sigstack.h
+-
+sys/ucontext.h
+-
+bits/pthreadtypes.h
+-
+bits/sigthread.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+features.h
+-
+bits/wchar.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+features.h
+-
+stddef.h
+-
+bits/types.h
+-
+libio.h
+-
+stdarg.h
+-
+bits/stdio_lim.h
+-
+bits/sys_errlist.h
+-
+getopt.h
+-
+bits/stdio.h
+-
+bits/stdio2.h
+-
+bits/stdio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+features.h
+-
+stddef.h
+-
+bits/waitflags.h
+-
+bits/waitstatus.h
+-
+xlocale.h
+-
+sys/types.h
+-
+alloca.h
+-
+bits/stdlib-bsearch.h
+-
+bits/stdlib-float.h
+-
+bits/stdlib.h
+-
+bits/stdlib-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+features.h
+-
+stddef.h
+-
+xlocale.h
+-
+bits/string.h
+-
+bits/string2.h
+-
+bits/string3.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/strings.h
+features.h
+-
+stddef.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+features.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+features.h
+-
+bits/poll.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/poll2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+features.h
+-
+bits/types.h
+-
+bits/select.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/time.h
+-
+bits/select2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+features.h
+-
+sys/uio.h
+-
+stddef.h
+-
+bits/sigset.h
+-
+bits/socket.h
+-
+bits/socket2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/stat.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+bits/stat.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/syslog.h
+features.h
+-
+stdarg.h
+-
+bits/syslog-path.h
+-
+bits/syslog.h
+-
+bits/syslog-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+bits/time.h
+-
+sys/select.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+stddef.h
+-
+endian.h
+-
+sys/select.h
+-
+sys/sysmacros.h
+-
+bits/pthreadtypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+features.h
+-
+signal.h
+-
+bits/sigcontext.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+features.h
+-
+sys/types.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/syslog.h
+sys/syslog.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+features.h
+-
+stddef.h
+-
+bits/time.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+features.h
+-
+bits/posix_opt.h
+-
+bits/environments.h
+-
+bits/types.h
+-
+stddef.h
+-
+bits/confname.h
+-
+getopt.h
+-
+bits/unistd.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+features.h
+-
+stdio.h
+-
+stdarg.h
+-
+bits/wchar.h
+-
+stddef.h
+-
+wctype.h
+-
+xlocale.h
+-
+xlocale.h
+-
+xlocale.h
+-
+wctype.h
+-
+bits/wchar2.h
+-
+bits/wchar-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+features.h
+-
+bits/types.h
+-
+wchar.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+
+lws_config.h
+

+ 164 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/depend.internal

@@ -0,0 +1,164 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.10
+
+CMakeFiles/test-fuzxy.dir/test-server/fuzxy.c.o
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/fuzxy.c
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog-path.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/strings.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/stat.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/syslog.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+ lws_config.h

BIN
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-fuzxy.dir/test-server/fuzxy.c.o


+ 1246 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/C.includecache

@@ -0,0 +1,1246 @@
+#IncludeRegexLine: ^[ 	]*[#%][ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+cstddef
+-
+cstdarg
+-
+mbed-drivers/mbed.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/mbed-drivers/mbed.h
+sal-iface-eth/EthernetInterface.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-iface-eth/EthernetInterface.h
+sockets/TCPListener.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sockets/TCPListener.h
+sal-stack-lwip/lwipv4_init.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/sal-stack-lwip/lwipv4_init.h
+stdarg.h
+-
+lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/lws_config.h
+winsock2.h
+-
+ws2tcpip.h
+-
+stddef.h
+-
+basetsd.h
+-
+fcntl.h
+-
+unistd.h
+-
+netinet/in.h
+-
+poll.h
+-
+netdb.h
+-
+unistd.h
+-
+ev.h
+-
+uv.h
+-
+uv-version.h
+-
+sys/time.h
+-
+unistd.h
+-
+cyassl/openssl/ssl.h
+-
+cyassl/error-ssl.h
+-
+wolfssl/openssl/ssl.h
+-
+wolfssl/error-ssl.h
+-
+polarssl/ssl.h
+-
+mbedtls/ssl.h
+-
+openssl/ssl.h
+-
+openssl/err.h
+-
+stddef.h
+-
+user_interface.h
+-
+espconn.h
+-
+os_type.h
+-
+osapi.h
+-
+ets_sys.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/ets_sys.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/test-ping.c
+stdio.h
+-
+stdlib.h
+-
+getopt.h
+-
+string.h
+-
+signal.h
+-
+sys/types.h
+-
+../lib/libwebsockets.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+netdb.h
+-
+sys/socket.h
+-
+sys/time.h
+-
+sys/ioctl.h
+-
+poll.h
+-
+unistd.h
+-
+gettimeofday.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/gettimeofday.h
+termiosh
+-
+sys/termios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+bits/types.h
+-
+stddef.h
+-
+wchar.h
+-
+gconv.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+asm-generic/errno-base.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/ioctl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/ioctls.h
+linux/ioctl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+asm/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+asm-generic/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/ioctl.h
+asm-generic/ioctl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/ioctls.h
+asm-generic/ioctls.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+asm-generic/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+asm-generic/sockios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+features.h
+-
+bits/types.h
+-
+bits/byteswap-16.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+linux/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+bits/fcntl-linux.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+bits/fcntl-linux.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/ioctl-types.h
+asm/ioctls.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/ioctls.h
+asm/ioctls.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+linux/limits.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+bits/local_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+asm/sigcontext.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+stddef.h
+-
+sys/types.h
+-
+bits/socket_type.h
+-
+bits/sockaddr.h
+-
+asm/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+endian.h
+-
+bits/types.h
+-
+stdlib.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/termios.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+bits/types.h
+-
+bits/types.h
+-
+bits/timex.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+bits/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+features.h
+-
+bits/wordsize.h
+-
+bits/typesizes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+endian.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+bits/stdio_lim.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+features.h
+-
+bits/types.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+features.h
+-
+bits/endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+features.h
+-
+bits/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+features.h
+-
+bits/types.h
+-
+bits/fcntl.h
+-
+time.h
+-
+bits/stat.h
+-
+bits/fcntl2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+stdc-predef.h
+-
+sys/cdefs.h
+-
+gnu/stubs.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+features.h
+-
+wchar.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ctype.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+gnu/stubs-soft.h
+-
+gnu/stubs-hard.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+features.h
+-
+stdint.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+_G_config.h
+-
+stdarg.h
+-
+sys/cdefs.h
+-
+shlib-compat.h
+-
+bits/libio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+features.h
+-
+bits/wordsize.h
+-
+bits/posix1_lim.h
+-
+bits/posix2_lim.h
+-
+bits/xopen_lim.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+asm/errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/ioctl.h
+asm/ioctl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+features.h
+-
+netinet/in.h
+-
+stdint.h
+-
+rpc/netdb.h
+-
+bits/siginfo.h
+-
+time.h
+-
+bits/netdb.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+features.h
+-
+stdint.h
+-
+sys/socket.h
+-
+bits/types.h
+-
+bits/in.h
+-
+endian.h
+-
+bits/byteswap.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+time.h
+-
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdarg.h
+-
+openssl/crypto.h
+-
+stdint.h
+-
+inttypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+limits.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/ossl_typ.h
+-
+openssl/crypto.h
+-
+assert.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+openssl/ossl_typ.h
+-
+stddef.h
+-
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+openssl/crypto.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+stdlib.h
+-
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/stack.h
+-
+openssl/safestack.h
+-
+openssl/opensslv.h
+-
+openssl/ossl_typ.h
+-
+openssl/ebcdic.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+openssl/dh.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+openssl/buffer.h
+-
+openssl/pqueue.h
+-
+resource.h
+-
+sys/timeb.h
+-
+winsock.h
+-
+sys/timeval.h
+-
+sys/times.h
+-
+sys/time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+openssl/opensslconf.h
+-
+sys/socket.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+sys/types.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+openssl/opensslconf.h
+-
+openssl/asn1.h
+-
+openssl/symhacks.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+openssl/opensslconf.h
+-
+openssl/ec.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+openssl/e_os2.h
+-
+stdio.h
+-
+stdlib.h
+-
+openssl/ossl_typ.h
+-
+openssl/bio.h
+-
+openssl/lhash.h
+-
+errno.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+openssl/opensslconf.h
+-
+openssl/opensslconf.h
+-
+openssl/ossl_typ.h
+-
+openssl/symhacks.h
+-
+openssl/bio.h
+-
+openssl/objects.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+openssl/opensslconf.h
+-
+openssl/evp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+openssl/opensslconf.h
+-
+stdio.h
+-
+ctype.h
+-
+krb5.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+openssl/e_os2.h
+-
+stdio.h
+-
+openssl/bio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+openssl/obj_mac.h
+-
+openssl/bio.h
+-
+openssl/asn1.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+openssl/e_os2.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/evp.h
+-
+openssl/x509.h
+-
+openssl/pem2.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/ossl_typ.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+stdio.h
+-
+stdlib.h
+-
+string.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+openssl/asn1.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/ossl_typ.h
+-
+openssl/bn.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+openssl/stack.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+openssl/e_os2.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+openssl/e_os2.h
+-
+openssl/comp.h
+-
+openssl/bio.h
+-
+openssl/x509.h
+-
+openssl/crypto.h
+-
+openssl/lhash.h
+-
+openssl/buffer.h
+-
+openssl/pem.h
+-
+openssl/hmac.h
+-
+openssl/kssl.h
+-
+openssl/safestack.h
+-
+openssl/symhacks.h
+-
+openssl/ssl2.h
+-
+openssl/ssl3.h
+-
+openssl/tls1.h
+-
+openssl/dtls1.h
+-
+openssl/ssl23.h
+-
+openssl/srtp.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+openssl/comp.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/ssl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+openssl/e_os2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+openssl/buffer.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+openssl/e_os2.h
+-
+openssl/symhacks.h
+-
+openssl/buffer.h
+-
+openssl/evp.h
+-
+openssl/bio.h
+-
+openssl/stack.h
+-
+openssl/asn1.h
+-
+openssl/safestack.h
+-
+openssl/ec.h
+-
+openssl/ecdsa.h
+-
+openssl/ecdh.h
+-
+openssl/rsa.h
+-
+openssl/dsa.h
+-
+openssl/dh.h
+-
+openssl/sha.h
+-
+openssl/ossl_typ.h
+-
+openssl/x509_vfy.h
+-
+openssl/pkcs7.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+openssl/x509.h
+-
+openssl/opensslconf.h
+-
+openssl/lhash.h
+-
+openssl/bio.h
+-
+openssl/crypto.h
+-
+openssl/symhacks.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+sys/poll.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+features.h
+-
+stddef.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+features.h
+-
+bits/sigset.h
+-
+bits/types.h
+-
+bits/signum.h
+-
+time.h
+-
+bits/siginfo.h
+-
+bits/sigaction.h
+-
+bits/sigcontext.h
+-
+stddef.h
+-
+bits/sigstack.h
+-
+sys/ucontext.h
+-
+bits/pthreadtypes.h
+-
+bits/sigthread.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+features.h
+-
+bits/wchar.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+features.h
+-
+stddef.h
+-
+bits/types.h
+-
+libio.h
+-
+stdarg.h
+-
+bits/stdio_lim.h
+-
+bits/sys_errlist.h
+-
+getopt.h
+-
+bits/stdio.h
+-
+bits/stdio2.h
+-
+bits/stdio-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+features.h
+-
+stddef.h
+-
+bits/waitflags.h
+-
+bits/waitstatus.h
+-
+xlocale.h
+-
+sys/types.h
+-
+alloca.h
+-
+bits/stdlib-bsearch.h
+-
+bits/stdlib-float.h
+-
+bits/stdlib.h
+-
+bits/stdlib-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+features.h
+-
+stddef.h
+-
+xlocale.h
+-
+bits/string.h
+-
+bits/string2.h
+-
+bits/string3.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+features.h
+-
+bits/wordsize.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ioctl.h
+features.h
+-
+bits/ioctls.h
+-
+bits/ioctl-types.h
+-
+sys/ttydefaults.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+features.h
+-
+bits/poll.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/poll2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+features.h
+-
+bits/types.h
+-
+bits/select.h
+-
+bits/sigset.h
+-
+time.h
+-
+bits/time.h
+-
+bits/select2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+features.h
+-
+sys/uio.h
+-
+stddef.h
+-
+bits/sigset.h
+-
+bits/socket.h
+-
+bits/socket2.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+features.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/termios.h
+termios.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+bits/time.h
+-
+sys/select.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+features.h
+-
+time.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ttydefaults.h
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+features.h
+-
+bits/types.h
+-
+time.h
+-
+stddef.h
+-
+endian.h
+-
+sys/select.h
+-
+sys/sysmacros.h
+-
+bits/pthreadtypes.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+features.h
+-
+signal.h
+-
+bits/sigcontext.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+features.h
+-
+sys/types.h
+-
+bits/uio.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/termios.h
+features.h
+-
+bits/types.h
+-
+bits/termios.h
+-
+sys/ttydefaults.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+features.h
+-
+stddef.h
+-
+bits/time.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+bits/types.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+features.h
+-
+bits/posix_opt.h
+-
+bits/environments.h
+-
+bits/types.h
+-
+stddef.h
+-
+bits/confname.h
+-
+getopt.h
+-
+bits/unistd.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+features.h
+-
+stdio.h
+-
+stdarg.h
+-
+bits/wchar.h
+-
+stddef.h
+-
+wctype.h
+-
+xlocale.h
+-
+xlocale.h
+-
+xlocale.h
+-
+wctype.h
+-
+bits/wchar2.h
+-
+bits/wchar-ldbl.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+features.h
+-
+bits/types.h
+-
+wchar.h
+-
+endian.h
+-
+xlocale.h
+-
+
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+
+lws_config.h
+

+ 169 - 0
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/depend.internal

@@ -0,0 +1,169 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.10
+
+CMakeFiles/test-ping.dir/test-server/test-ping.c.o
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/test-server/test-ping.c
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/_G_config.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/alloca.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno-base.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/ioctl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/ioctls.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm-generic/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/ioctl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/ioctls.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/asm/sockios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/assert.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap-16.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/byteswap.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/confname.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/environments.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl-linux.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/fcntl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/ioctl-types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/ioctls.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/libio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/local_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/poll2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix1_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix2_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/posix_opt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/pthreadtypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/select2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigaction.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigcontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/siginfo.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/signum.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigset.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigstack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sigthread.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sockaddr.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/socket_type.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stat.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdio_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-bsearch.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-float.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/string3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/sys_errlist.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/termios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/timex.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/typesizes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitflags.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/waitstatus.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar-ldbl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wchar2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/wordsize.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/bits/xopen_lim.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/ctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/endian.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/fcntl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/features.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gconv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/getopt.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs-hard.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/gnu/stubs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/inttypes.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/libio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/errno.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/ioctl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/linux/limits.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/netinet/in.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/asn1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/bn.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/buffer.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/comp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/crypto.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/dtls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/e_os2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ebcdic.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ec.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdh.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ecdsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/err.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/evp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/hmac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/kssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/lhash.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/obj_mac.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/objects.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslconf.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/opensslv.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ossl_typ.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pem2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pkcs7.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/pqueue.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/rsa.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/safestack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/sha.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/srtp.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl2.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl23.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/ssl3.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/stack.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/symhacks.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/tls1.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/openssl/x509_vfy.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/rpc/netdb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/signal.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdc-predef.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdint.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/stdlib.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/string.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/cdefs.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ioctl.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/poll.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/select.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/socket.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/sysmacros.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/termios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/timeb.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/times.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ttydefaults.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/types.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/ucontext.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/sys/uio.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/termios.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/time.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/unistd.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wchar.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/wctype.h
+ /opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/include/xlocale.h
+ lws_config.h

BIN
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/test-ping.dir/test-server/test-ping.c.o


BIN
EVSE/GPL/libwebsockets-v2.1-stable/CMakeFiles/websockets_shared.dir/lib/extension-permessage-deflate.c.o


BIN
EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-client


BIN
EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-fuzxy


BIN
EVSE/GPL/libwebsockets-v2.1-stable/bin/libwebsockets-test-ping


+ 28 - 0
EVSE/GPL/libwebsockets-v2.1-stable/install_manifest.txt

@@ -0,0 +1,28 @@
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/pkgconfig/libwebsockets.pc
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.a
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/include/libwebsockets.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/include/lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so.9
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/include/libwebsockets.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/include/lws_config.h
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-client
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fuzxy
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-pthreads
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-extpoll
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-client
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fraggle
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-ping
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-echo
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/favicon.ico
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/leaf.jpg
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets.org-logo.png
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/lws-common.js
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/test.html
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.key.pem
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.pem
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfig.cmake
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfigVersion.cmake
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets.cmake
+/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets-debug.cmake

+ 1 - 0
EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.so

@@ -0,0 +1 @@
+libwebsockets.so.9

BIN
EVSE/GPL/libwebsockets-v2.1-stable/lib/libwebsockets.so.9


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-client


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-echo


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fraggle


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-fuzxy


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-ping


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-extpoll


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/bin/libwebsockets-test-server-pthreads


+ 4214 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/include/libwebsockets.h

@@ -0,0 +1,4214 @@
+/*
+ * libwebsockets - small server side websockets and web server implementation
+ *
+ * Copyright (C) 2010-2016 Andy Green <andy@warmcat.com>
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser General Public
+ *  License as published by the Free Software Foundation:
+ *  version 2.1 of the License.
+ *
+ *  This library is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ *  MA  02110-1301  USA
+ */
+
+/** @file */
+
+#ifndef LIBWEBSOCKET_H_3060898B846849FF9F88F5DB59B5950C
+#define LIBWEBSOCKET_H_3060898B846849FF9F88F5DB59B5950C
+
+#ifdef __cplusplus
+#include <cstddef>
+#include <cstdarg>
+#ifdef MBED_OPERATORS
+#include "mbed-drivers/mbed.h"
+#include "sal-iface-eth/EthernetInterface.h"
+#include "sockets/TCPListener.h"
+#include "sal-stack-lwip/lwipv4_init.h"
+
+namespace {
+}
+using namespace mbed::Sockets::v0;
+
+
+struct sockaddr_in;
+struct lws;
+
+class lws_conn {
+	public:
+	lws_conn():
+		ts(NULL),
+		wsi(NULL),
+		writeable(1),
+		awaiting_on_writeable(0)
+	{
+	}
+
+public:
+	void set_wsi(struct lws *_wsi) { wsi = _wsi; }
+	int actual_onRX(Socket *s);
+	void onRX(Socket *s);
+	void onError(Socket *s, socket_error_t err);
+	void onDisconnect(TCPStream *s);
+	void onSent(Socket *s, uint16_t len);
+	void serialized_writeable(struct lws *wsi);
+
+public:
+	TCPStream *ts;
+
+public:
+	struct lws *wsi;
+	char writeable;
+	char awaiting_on_writeable;
+};
+
+class lws_conn_listener : lws_conn {
+public:
+	lws_conn_listener():
+		srv(SOCKET_STACK_LWIP_IPV4)
+	{
+		srv.setOnError(TCPStream::ErrorHandler_t(this,
+				&lws_conn_listener::onError));
+	}
+
+	void start(const uint16_t port); /**< start listening */
+
+protected:
+	void onRX(Socket *s); /**< incoming data ready */
+	void onError(Socket *s, socket_error_t err); /**< if error occurs */
+	void onIncoming(TCPListener *s, void *impl); /**< new connection */
+	void onDisconnect(TCPStream *s); /**< disconnection */
+
+public:
+	TCPListener srv;
+};
+
+#endif
+
+extern "C" {
+#else
+#include <stdarg.h>
+#endif
+
+#if defined(MBED_OPERATORS) || defined(LWS_WITH_ESP8266)
+struct sockaddr_in;
+#define LWS_POSIX 0
+#else
+#define LWS_POSIX 1
+#endif
+
+#include "lws_config.h"
+
+#if defined(WIN32) || defined(_WIN32)
+#ifndef WIN32_LEAN_AND_MEAN
+#define WIN32_LEAN_AND_MEAN
+#endif
+
+#include <winsock2.h>
+#include <ws2tcpip.h>
+#include <stddef.h>
+#include <basetsd.h>
+#ifndef _WIN32_WCE
+#include <fcntl.h>
+#else
+#define _O_RDONLY	0x0000
+#define O_RDONLY	_O_RDONLY
+#endif
+
+// Visual studio older than 2015 and WIN_CE has only _stricmp
+#if (defined(_MSC_VER) && _MSC_VER < 1900) || defined(_WIN32_WCE)
+#define strcasecmp _stricmp
+#else
+#define strcasecmp stricmp
+#endif
+#define getdtablesize() 30000
+
+#define LWS_INLINE __inline
+#define LWS_VISIBLE
+#define LWS_WARN_UNUSED_RESULT
+#define LWS_WARN_DEPRECATED
+
+#ifdef LWS_DLL
+#ifdef LWS_INTERNAL
+#define LWS_EXTERN extern __declspec(dllexport)
+#else
+#define LWS_EXTERN extern __declspec(dllimport)
+#endif
+#else
+#define LWS_EXTERN
+#endif
+
+#define LWS_INVALID_FILE INVALID_HANDLE_VALUE
+#define LWS_O_RDONLY _O_RDONLY
+
+#if !defined(_MSC_VER) || _MSC_VER < 1900 /* Visual Studio 2015 already defines this in <stdio.h> */
+#define lws_snprintf _snprintf
+#endif
+
+#ifndef __func__
+#define __func__ __FUNCTION__
+#endif
+
+#else /* NOT WIN32 */
+#include <unistd.h>
+
+#if defined(__NetBSD__) || defined(__FreeBSD__)
+#include <netinet/in.h>
+#endif
+
+#define LWS_INLINE inline
+#define LWS_O_RDONLY O_RDONLY
+
+#if !defined(MBED_OPERATORS) && !defined(LWS_WITH_ESP8266)
+#include <poll.h>
+#include <netdb.h>
+#define LWS_INVALID_FILE -1
+#else
+#define getdtablesize() (20)
+#define LWS_INVALID_FILE NULL
+#endif
+
+#if defined(__GNUC__)
+
+/* warn_unused_result attribute only supported by GCC 3.4 or later */
+#if __GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
+#define LWS_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
+#else
+#define LWS_WARN_UNUSED_RESULT
+#endif
+
+#define LWS_VISIBLE __attribute__((visibility("default")))
+#define LWS_WARN_DEPRECATED __attribute__ ((deprecated))
+#else
+#define LWS_VISIBLE
+#define LWS_WARN_UNUSED_RESULT
+#define LWS_WARN_DEPRECATED
+#endif
+
+#if defined(__ANDROID__)
+#include <unistd.h>
+#define getdtablesize() sysconf(_SC_OPEN_MAX)
+#endif
+
+#endif
+
+#ifdef LWS_USE_LIBEV
+#include <ev.h>
+#endif /* LWS_USE_LIBEV */
+#ifdef LWS_USE_LIBUV
+#include <uv.h>
+#ifdef LWS_HAVE_UV_VERSION_H
+#include <uv-version.h>
+#endif
+#endif /* LWS_USE_LIBUV */
+
+#ifndef LWS_EXTERN
+#define LWS_EXTERN extern
+#endif
+
+#ifdef _WIN32
+#define random rand
+#else
+#include <sys/time.h>
+#include <unistd.h>
+#endif
+
+#ifdef LWS_OPENSSL_SUPPORT
+
+#ifdef USE_WOLFSSL
+#ifdef USE_OLD_CYASSL
+#include <cyassl/openssl/ssl.h>
+#include <cyassl/error-ssl.h>
+#else
+#include <wolfssl/openssl/ssl.h>
+#include <wolfssl/error-ssl.h>
+#endif /* not USE_OLD_CYASSL */
+#else
+#if defined(LWS_USE_POLARSSL)
+#include <polarssl/ssl.h>
+struct lws_polarssl_context {
+	x509_crt ca; /**< ca */
+	x509_crt certificate; /**< cert */
+	rsa_context key; /**< key */
+};
+typedef struct lws_polarssl_context SSL_CTX;
+typedef ssl_context SSL;
+#else
+#if defined(LWS_USE_MBEDTLS)
+#include <mbedtls/ssl.h>
+#else
+#include <openssl/ssl.h>
+#include <openssl/err.h>
+#endif /* not USE_MBEDTLS */
+#endif /* not USE_POLARSSL */
+#endif /* not USE_WOLFSSL */
+#endif
+
+
+#define CONTEXT_PORT_NO_LISTEN -1
+
+/** \defgroup log Logging
+ *
+ * ##Logging
+ *
+ * Lws provides flexible and filterable logging facilities, which can be
+ * used inside lws and in user code.
+ *
+ * Log categories may be individually filtered bitwise, and directed to built-in
+ * sinks for syslog-compatible logging, or a user-defined function.
+ */
+///@{
+
+enum lws_log_levels {
+	LLL_ERR = 1 << 0,
+	LLL_WARN = 1 << 1,
+	LLL_NOTICE = 1 << 2,
+	LLL_INFO = 1 << 3,
+	LLL_DEBUG = 1 << 4,
+	LLL_PARSER = 1 << 5,
+	LLL_HEADER = 1 << 6,
+	LLL_EXT = 1 << 7,
+	LLL_CLIENT = 1 << 8,
+	LLL_LATENCY = 1 << 9,
+
+	LLL_COUNT = 10 /* set to count of valid flags */
+};
+
+LWS_VISIBLE LWS_EXTERN void _lws_log(int filter, const char *format, ...);
+LWS_VISIBLE LWS_EXTERN void _lws_logv(int filter, const char *format, va_list vl);
+/**
+ * lwsl_timestamp: generate logging timestamp string
+ *
+ * \param level:	logging level
+ * \param p:		char * buffer to take timestamp
+ * \param len:	length of p
+ *
+ * returns length written in p
+ */
+LWS_VISIBLE LWS_EXTERN int
+lwsl_timestamp(int level, char *p, int len);
+
+#define lwsl_err(...) _lws_log(LLL_ERR, __VA_ARGS__)
+
+#if !defined(LWS_WITH_NO_LOGS)
+/* notice, warn and log are always compiled in */
+#define lwsl_warn(...) _lws_log(LLL_WARN, __VA_ARGS__)
+#define lwsl_notice(...) _lws_log(LLL_NOTICE, __VA_ARGS__)
+#endif
+/*
+ *  weaker logging can be deselected at configure time using --disable-debug
+ *  that gets rid of the overhead of checking while keeping _warn and _err
+ *  active
+ */
+
+#if defined(LWS_WITH_ESP8266)
+#undef _DEBUG
+#endif
+
+#ifdef _DEBUG
+#if defined(LWS_WITH_NO_LOGS)
+/* notice, warn and log are always compiled in */
+//#define lwsl_err(...) _lws_log(LLL_ERR, __VA_ARGS__)
+#define lwsl_warn(...) _lws_log(LLL_WARN, __VA_ARGS__)
+#define lwsl_notice(...) _lws_log(LLL_NOTICE, __VA_ARGS__)
+#endif
+#define lwsl_info(...) _lws_log(LLL_INFO, __VA_ARGS__)
+#define lwsl_debug(...) _lws_log(LLL_DEBUG, __VA_ARGS__)
+#define lwsl_parser(...) _lws_log(LLL_PARSER, __VA_ARGS__)
+#define lwsl_header(...)  _lws_log(LLL_HEADER, __VA_ARGS__)
+#define lwsl_ext(...)  _lws_log(LLL_EXT, __VA_ARGS__)
+#define lwsl_client(...) _lws_log(LLL_CLIENT, __VA_ARGS__)
+#define lwsl_latency(...) _lws_log(LLL_LATENCY, __VA_ARGS__)
+/**
+ * lwsl_hexdump() - helper to hexdump a buffer (DEBUG builds only)
+ *
+ * \param buf: buffer start to dump
+ * \param len: length of buffer to dump
+ */
+LWS_VISIBLE LWS_EXTERN void lwsl_hexdump(void *buf, size_t len);
+
+#else /* no debug */
+#if defined(LWS_WITH_NO_LOGS)
+//#define lwsl_err(...) do {} while(0)
+#define lwsl_warn(...) do {} while(0)
+#define lwsl_notice(...) do {} while(0)
+#endif
+#define lwsl_info(...) do {} while(0)
+#define lwsl_debug(...) do {} while(0)
+#define lwsl_parser(...) do {} while(0)
+#define lwsl_header(...) do {} while(0)
+#define lwsl_ext(...) do {} while(0)
+#define lwsl_client(...) do {} while(0)
+#define lwsl_latency(...) do {} while(0)
+#define lwsl_hexdump(a, b)
+
+#endif
+
+/**
+ * lws_set_log_level() - Set the logging bitfield
+ * \param level:	OR together the LLL_ debug contexts you want output from
+ * \param log_emit_function:	NULL to leave it as it is, or a user-supplied
+ *			function to perform log string emission instead of
+ *			the default stderr one.
+ *
+ *	log level defaults to "err", "warn" and "notice" contexts enabled and
+ *	emission on stderr.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_set_log_level(int level,
+		  void (*log_emit_function)(int level, const char *line));
+
+/**
+ * lwsl_emit_syslog() - helper log emit function writes to system log
+ *
+ * \param level: one of LLL_ log level indexes
+ * \param line: log string
+ *
+ * You use this by passing the function pointer to lws_set_log_level(), to set
+ * it as the log emit function, it is not called directly.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lwsl_emit_syslog(int level, const char *line);
+
+///@}
+
+
+#include <stddef.h>
+
+#ifndef lws_container_of
+#define lws_container_of(P,T,M)	((T *)((char *)(P) - offsetof(T, M)))
+#endif
+
+
+struct lws;
+#ifndef ARRAY_SIZE
+#define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0]))
+#endif
+
+/* api change list for user code to test against */
+
+#define LWS_FEATURE_SERVE_HTTP_FILE_HAS_OTHER_HEADERS_ARG
+
+/* the struct lws_protocols has the id field present */
+#define LWS_FEATURE_PROTOCOLS_HAS_ID_FIELD
+
+/* you can call lws_get_peer_write_allowance */
+#define LWS_FEATURE_PROTOCOLS_HAS_PEER_WRITE_ALLOWANCE
+
+/* extra parameter introduced in 917f43ab821 */
+#define LWS_FEATURE_SERVE_HTTP_FILE_HAS_OTHER_HEADERS_LEN
+
+/* File operations stuff exists */
+#define LWS_FEATURE_FOPS
+
+
+#if defined(_WIN32)
+typedef SOCKET lws_sockfd_type;
+typedef HANDLE lws_filefd_type;
+#define lws_sockfd_valid(sfd) (!!sfd)
+struct lws_pollfd {
+	lws_sockfd_type fd; /**< file descriptor */
+	SHORT events; /**< which events to respond to */
+	SHORT revents; /**< which events happened */
+};
+#define LWS_POLLHUP (FD_CLOSE)
+#define LWS_POLLIN (FD_READ | FD_ACCEPT)
+#define LWS_POLLOUT (FD_WRITE)
+#else
+
+#if defined(MBED_OPERATORS)
+/* it's a class lws_conn * */
+typedef void * lws_sockfd_type;
+typedef void * lws_filefd_type;
+#define lws_sockfd_valid(sfd) (!!sfd)
+struct pollfd {
+	lws_sockfd_type fd; /**< fd related to */
+	short events; /**< which POLL... events to respond to */
+	short revents; /**< which POLL... events occurred */
+};
+#define POLLIN		0x0001
+#define POLLPRI		0x0002
+#define POLLOUT		0x0004
+#define POLLERR		0x0008
+#define POLLHUP		0x0010
+#define POLLNVAL	0x0020
+
+struct lws;
+
+void * mbed3_create_tcp_stream_socket(void);
+void mbed3_delete_tcp_stream_socket(void *sockfd);
+void mbed3_tcp_stream_bind(void *sock, int port, struct lws *);
+void mbed3_tcp_stream_accept(void *sock, struct lws *);
+#else
+#if defined(LWS_WITH_ESP8266)
+
+#include <user_interface.h>
+#include <espconn.h>
+
+typedef struct espconn * lws_sockfd_type;
+typedef void * lws_filefd_type;
+#define lws_sockfd_valid(sfd) (!!sfd)
+struct pollfd {
+	lws_sockfd_type fd; /**< fd related to */
+	short events; /**< which POLL... events to respond to */
+	short revents; /**< which POLL... events occurred */
+};
+#define POLLIN		0x0001
+#define POLLPRI		0x0002
+#define POLLOUT		0x0004
+#define POLLERR		0x0008
+#define POLLHUP		0x0010
+#define POLLNVAL	0x0020
+
+struct lws_vhost;
+
+lws_sockfd_type esp8266_create_tcp_listen_socket(struct lws_vhost *vh);
+void esp8266_tcp_stream_accept(lws_sockfd_type fd, struct lws *wsi);
+
+#include <os_type.h>
+#include <osapi.h>
+#include "ets_sys.h"
+
+int ets_snprintf(char *str, size_t size, const char *format, ...);
+#define snprintf  ets_snprintf
+
+typedef os_timer_t uv_timer_t;
+typedef void uv_cb_t(uv_timer_t *);
+
+void os_timer_disarm(void *);
+void os_timer_setfn(os_timer_t *, os_timer_func_t *, void *);
+
+void ets_timer_arm_new(os_timer_t *, int, int, int);
+
+//void os_timer_arm(os_timer_t *, int, int);
+
+#define UV_VERSION_MAJOR 1
+
+#define lws_uv_getloop(a, b) (NULL)
+
+static inline void uv_timer_init(void *l, uv_timer_t *t)
+{
+	(void)l;
+	memset(t, 0, sizeof(*t));
+	os_timer_disarm(t);
+}
+
+static inline void uv_timer_start(uv_timer_t *t, uv_cb_t *cb, int first, int rep)
+{
+	os_timer_setfn(t, (os_timer_func_t *)cb, t);
+	/* ms, repeat */
+	os_timer_arm(t, first, !!rep);
+}
+
+static inline void uv_timer_stop(uv_timer_t *t)
+{
+	os_timer_disarm(t);
+}
+
+#else
+typedef int lws_sockfd_type;
+typedef int lws_filefd_type;
+#define lws_sockfd_valid(sfd) (sfd >= 0)
+#endif
+#endif
+
+#define lws_pollfd pollfd
+#define LWS_POLLHUP (POLLHUP|POLLERR)
+#define LWS_POLLIN (POLLIN)
+#define LWS_POLLOUT (POLLOUT)
+#endif
+
+/** struct lws_pollargs - argument structure for all external poll related calls
+ * passed in via 'in' */
+struct lws_pollargs {
+	lws_sockfd_type fd;	/**< applicable socket descriptor */
+	int events;		/**< the new event mask */
+	int prev_events;	/**< the previous event mask */
+};
+
+struct lws_tokens;
+struct lws_token_limits;
+
+/*! \defgroup wsclose Websocket Close
+ *
+ * ##Websocket close frame control
+ *
+ * When we close a ws connection, we can send a reason code and a short
+ * UTF-8 description back with the close packet.
+ */
+///@{
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+/** enum lws_close_status - RFC6455 close status codes */
+enum lws_close_status {
+	LWS_CLOSE_STATUS_NOSTATUS				=    0,
+	LWS_CLOSE_STATUS_NORMAL					= 1000,
+	/**< 1000 indicates a normal closure, meaning that the purpose for
+      which the connection was established has been fulfilled. */
+	LWS_CLOSE_STATUS_GOINGAWAY				= 1001,
+	/**< 1001 indicates that an endpoint is "going away", such as a server
+      going down or a browser having navigated away from a page. */
+	LWS_CLOSE_STATUS_PROTOCOL_ERR				= 1002,
+	/**< 1002 indicates that an endpoint is terminating the connection due
+      to a protocol error. */
+	LWS_CLOSE_STATUS_UNACCEPTABLE_OPCODE			= 1003,
+	/**< 1003 indicates that an endpoint is terminating the connection
+      because it has received a type of data it cannot accept (e.g., an
+      endpoint that understands only text data MAY send this if it
+      receives a binary message). */
+	LWS_CLOSE_STATUS_RESERVED				= 1004,
+	/**< Reserved.  The specific meaning might be defined in the future. */
+	LWS_CLOSE_STATUS_NO_STATUS				= 1005,
+	/**< 1005 is a reserved value and MUST NOT be set as a status code in a
+      Close control frame by an endpoint.  It is designated for use in
+      applications expecting a status code to indicate that no status
+      code was actually present. */
+	LWS_CLOSE_STATUS_ABNORMAL_CLOSE				= 1006,
+	/**< 1006 is a reserved value and MUST NOT be set as a status code in a
+      Close control frame by an endpoint.  It is designated for use in
+      applications expecting a status code to indicate that the
+      connection was closed abnormally, e.g., without sending or
+      receiving a Close control frame. */
+	LWS_CLOSE_STATUS_INVALID_PAYLOAD			= 1007,
+	/**< 1007 indicates that an endpoint is terminating the connection
+      because it has received data within a message that was not
+      consistent with the type of the message (e.g., non-UTF-8 [RFC3629]
+      data within a text message). */
+	LWS_CLOSE_STATUS_POLICY_VIOLATION			= 1008,
+	/**< 1008 indicates that an endpoint is terminating the connection
+      because it has received a message that violates its policy.  This
+      is a generic status code that can be returned when there is no
+      other more suitable status code (e.g., 1003 or 1009) or if there
+      is a need to hide specific details about the policy. */
+	LWS_CLOSE_STATUS_MESSAGE_TOO_LARGE			= 1009,
+	/**< 1009 indicates that an endpoint is terminating the connection
+      because it has received a message that is too big for it to
+      process. */
+	LWS_CLOSE_STATUS_EXTENSION_REQUIRED			= 1010,
+	/**< 1010 indicates that an endpoint (client) is terminating the
+      connection because it has expected the server to negotiate one or
+      more extension, but the server didn't return them in the response
+      message of the WebSocket handshake.  The list of extensions that
+      are needed SHOULD appear in the /reason/ part of the Close frame.
+      Note that this status code is not used by the server, because it
+      can fail the WebSocket handshake instead */
+	LWS_CLOSE_STATUS_UNEXPECTED_CONDITION			= 1011,
+	/**< 1011 indicates that a server is terminating the connection because
+      it encountered an unexpected condition that prevented it from
+      fulfilling the request. */
+	LWS_CLOSE_STATUS_TLS_FAILURE				= 1015,
+	/**< 1015 is a reserved value and MUST NOT be set as a status code in a
+      Close control frame by an endpoint.  It is designated for use in
+      applications expecting a status code to indicate that the
+      connection was closed due to a failure to perform a TLS handshake
+      (e.g., the server certificate can't be verified). */
+
+	/****** add new things just above ---^ ******/
+
+	LWS_CLOSE_STATUS_NOSTATUS_CONTEXT_DESTROY		= 9999,
+};
+
+/**
+ * lws_close_reason - Set reason and aux data to send with Close packet
+ *		If you are going to return nonzero from the callback
+ *		requesting the connection to close, you can optionally
+ *		call this to set the reason the peer will be told if
+ *		possible.
+ *
+ * \param wsi:	The websocket connection to set the close reason on
+ * \param status:	A valid close status from websocket standard
+ * \param buf:	NULL or buffer containing up to 124 bytes of auxiliary data
+ * \param len:	Length of data in \param buf to send
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_close_reason(struct lws *wsi, enum lws_close_status status,
+		 unsigned char *buf, size_t len);
+
+///@}
+
+struct lws;
+struct lws_context;
+/* needed even with extensions disabled for create context */
+struct lws_extension;
+
+/*! \defgroup usercb User Callback
+ *
+ * ##User protocol callback
+ *
+ * The protocol callback is the primary way lws interacts with
+ * user code.  For one of a list of a few dozen reasons the callback gets
+ * called at some event to be handled.
+ *
+ * All of the events can be ignored, returning 0 is taken as "OK" and returning
+ * nonzero in most cases indicates that the connection should be closed.
+ */
+///@{
+
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+/** enum lws_callback_reasons - reason you're getting a protocol callback */
+enum lws_callback_reasons {
+	LWS_CALLBACK_ESTABLISHED				=  0,
+	/**< (VH) after the server completes a handshake with an incoming
+	 * client.  If you built the library with ssl support, in is a
+	 * pointer to the ssl struct associated with the connection or NULL.*/
+	LWS_CALLBACK_CLIENT_CONNECTION_ERROR			=  1,
+	/**< the request client connection has been unable to complete a
+	 * handshake with the remote server.  If in is non-NULL, you can
+	 * find an error string of length len where it points to
+	 *
+	 * Diagnostic strings that may be returned include
+	 *
+	 *     	"getaddrinfo (ipv6) failed"
+	 *     	"unknown address family"
+	 *     	"getaddrinfo (ipv4) failed"
+	 *     	"set socket opts failed"
+	 *     	"insert wsi failed"
+	 *     	"lws_ssl_client_connect1 failed"
+	 *     	"lws_ssl_client_connect2 failed"
+	 *     	"Peer hung up"
+	 *     	"read failed"
+	 *     	"HS: URI missing"
+	 *     	"HS: Redirect code but no Location"
+	 *     	"HS: URI did not parse"
+	 *     	"HS: Redirect failed"
+	 *     	"HS: Server did not return 200"
+	 *     	"HS: OOM"
+	 *     	"HS: disallowed by client filter"
+	 *     	"HS: disallowed at ESTABLISHED"
+	 *     	"HS: ACCEPT missing"
+	 *     	"HS: ws upgrade response not 101"
+	 *     	"HS: UPGRADE missing"
+	 *     	"HS: Upgrade to something other than websocket"
+	 *     	"HS: CONNECTION missing"
+	 *     	"HS: UPGRADE malformed"
+	 *     	"HS: PROTOCOL malformed"
+	 *     	"HS: Cannot match protocol"
+	 *     	"HS: EXT: list too big"
+	 *     	"HS: EXT: failed setting defaults"
+	 *     	"HS: EXT: failed parsing defaults"
+	 *     	"HS: EXT: failed parsing options"
+	 *     	"HS: EXT: Rejects server options"
+	 *     	"HS: EXT: unknown ext"
+	 *     	"HS: Accept hash wrong"
+	 *     	"HS: Rejected by filter cb"
+	 *     	"HS: OOM"
+	 *     	"HS: SO_SNDBUF failed"
+	 *     	"HS: Rejected at CLIENT_ESTABLISHED"
+	 */
+	LWS_CALLBACK_CLIENT_FILTER_PRE_ESTABLISH		=  2,
+	/**< this is the last chance for the client user code to examine the
+	 * http headers and decide to reject the connection.  If the
+	 * content in the headers is interesting to the
+	 * client (url, etc) it needs to copy it out at
+	 * this point since it will be destroyed before
+	 * the CLIENT_ESTABLISHED call */
+	LWS_CALLBACK_CLIENT_ESTABLISHED				=  3,
+	/**< after your client connection completed
+	 * a handshake with the remote server */
+	LWS_CALLBACK_CLOSED					=  4,
+	/**< when the websocket session ends */
+	LWS_CALLBACK_CLOSED_HTTP				=  5,
+	/**< when a HTTP (non-websocket) session ends */
+	LWS_CALLBACK_RECEIVE					=  6,
+	/**< data has appeared for this server endpoint from a
+	 * remote client, it can be found at *in and is
+	 * len bytes long */
+	LWS_CALLBACK_RECEIVE_PONG				=  7,
+	/**< servers receive PONG packets with this callback reason */
+	LWS_CALLBACK_CLIENT_RECEIVE				=  8,
+	/**< data has appeared from the server for the client connection, it
+	 * can be found at *in and is len bytes long */
+	LWS_CALLBACK_CLIENT_RECEIVE_PONG			=  9,
+	/**< clients receive PONG packets with this callback reason */
+	LWS_CALLBACK_CLIENT_WRITEABLE				= 10,
+	/**<  If you call lws_callback_on_writable() on a connection, you will
+	 * get one of these callbacks coming when the connection socket
+	 * is able to accept another write packet without blocking.
+	 * If it already was able to take another packet without blocking,
+	 * you'll get this callback at the next call to the service loop
+	 * function.  Notice that CLIENTs get LWS_CALLBACK_CLIENT_WRITEABLE
+	 * and servers get LWS_CALLBACK_SERVER_WRITEABLE. */
+	LWS_CALLBACK_SERVER_WRITEABLE				= 11,
+	/**< See LWS_CALLBACK_CLIENT_WRITEABLE */
+	LWS_CALLBACK_HTTP					= 12,
+	/**< an http request has come from a client that is not
+	 * asking to upgrade the connection to a websocket
+	 * one.  This is a chance to serve http content,
+	 * for example, to send a script to the client
+	 * which will then open the websockets connection.
+	 * in points to the URI path requested and
+	 * lws_serve_http_file() makes it very
+	 * simple to send back a file to the client.
+	 * Normally after sending the file you are done
+	 * with the http connection, since the rest of the
+	 * activity will come by websockets from the script
+	 * that was delivered by http, so you will want to
+	 * return 1; to close and free up the connection. */
+	LWS_CALLBACK_HTTP_BODY					= 13,
+	/**< the next len bytes data from the http
+	 * request body HTTP connection is now available in in. */
+	LWS_CALLBACK_HTTP_BODY_COMPLETION			= 14,
+	/**< the expected amount of http request body has been delivered */
+	LWS_CALLBACK_HTTP_FILE_COMPLETION			= 15,
+	/**< a file requested to be sent down http link has completed. */
+	LWS_CALLBACK_HTTP_WRITEABLE				= 16,
+	/**< you can write more down the http protocol link now. */
+	LWS_CALLBACK_FILTER_NETWORK_CONNECTION			= 17,
+	/**< called when a client connects to
+	 * the server at network level; the connection is accepted but then
+	 * passed to this callback to decide whether to hang up immediately
+	 * or not, based on the client IP.  in contains the connection
+	 * socket's descriptor. Since the client connection information is
+	 * not available yet, wsi still pointing to the main server socket.
+	 * Return non-zero to terminate the connection before sending or
+	 * receiving anything. Because this happens immediately after the
+	 * network connection from the client, there's no websocket protocol
+	 * selected yet so this callback is issued only to protocol 0. */
+	LWS_CALLBACK_FILTER_HTTP_CONNECTION			= 18,
+	/**< called when the request has
+	 * been received and parsed from the client, but the response is
+	 * not sent yet.  Return non-zero to disallow the connection.
+	 * user is a pointer to the connection user space allocation,
+	 * in is the URI, eg, "/"
+	 * In your handler you can use the public APIs
+	 * lws_hdr_total_length() / lws_hdr_copy() to access all of the
+	 * headers using the header enums lws_token_indexes from
+	 * libwebsockets.h to check for and read the supported header
+	 * presence and content before deciding to allow the http
+	 * connection to proceed or to kill the connection. */
+	LWS_CALLBACK_SERVER_NEW_CLIENT_INSTANTIATED		= 19,
+	/**< A new client just had
+	 * been connected, accepted, and instantiated into the pool. This
+	 * callback allows setting any relevant property to it. Because this
+	 * happens immediately after the instantiation of a new client,
+	 * there's no websocket protocol selected yet so this callback is
+	 * issued only to protocol 0. Only wsi is defined, pointing to the
+	 * new client, and the return value is ignored. */
+	LWS_CALLBACK_FILTER_PROTOCOL_CONNECTION			= 20,
+	/**< called when the handshake has
+	 * been received and parsed from the client, but the response is
+	 * not sent yet.  Return non-zero to disallow the connection.
+	 * user is a pointer to the connection user space allocation,
+	 * in is the requested protocol name
+	 * In your handler you can use the public APIs
+	 * lws_hdr_total_length() / lws_hdr_copy() to access all of the
+	 * headers using the header enums lws_token_indexes from
+	 * libwebsockets.h to check for and read the supported header
+	 * presence and content before deciding to allow the handshake
+	 * to proceed or to kill the connection. */
+	LWS_CALLBACK_OPENSSL_LOAD_EXTRA_CLIENT_VERIFY_CERTS	= 21,
+	/**< if configured for
+	 * including OpenSSL support, this callback allows your user code
+	 * to perform extra SSL_CTX_load_verify_locations() or similar
+	 * calls to direct OpenSSL where to find certificates the client
+	 * can use to confirm the remote server identity.  user is the
+	 * OpenSSL SSL_CTX* */
+	LWS_CALLBACK_OPENSSL_LOAD_EXTRA_SERVER_VERIFY_CERTS	= 22,
+	/**< if configured for
+	 * including OpenSSL support, this callback allows your user code
+	 * to load extra certifcates into the server which allow it to
+	 * verify the validity of certificates returned by clients.  user
+	 * is the server's OpenSSL SSL_CTX* */
+	LWS_CALLBACK_OPENSSL_PERFORM_CLIENT_CERT_VERIFICATION	= 23,
+	/**< if the libwebsockets vhost was created with the option
+	 * LWS_SERVER_OPTION_REQUIRE_VALID_OPENSSL_CLIENT_CERT, then this
+	 * callback is generated during OpenSSL verification of the cert
+	 * sent from the client.  It is sent to protocol[0] callback as
+	 * no protocol has been negotiated on the connection yet.
+	 * Notice that the libwebsockets context and wsi are both NULL
+	 * during this callback.  See
+	 *  http://www.openssl.org/docs/ssl/SSL_CTX_set_verify.html
+	 * to understand more detail about the OpenSSL callback that
+	 * generates this libwebsockets callback and the meanings of the
+	 * arguments passed.  In this callback, user is the x509_ctx,
+	 * in is the ssl pointer and len is preverify_ok
+	 * Notice that this callback maintains libwebsocket return
+	 * conventions, return 0 to mean the cert is OK or 1 to fail it.
+	 * This also means that if you don't handle this callback then
+	 * the default callback action of returning 0 allows the client
+	 * certificates. */
+	LWS_CALLBACK_CLIENT_APPEND_HANDSHAKE_HEADER		= 24,
+	/**< this callback happens
+	 * when a client handshake is being compiled.  user is NULL,
+	 * in is a char **, it's pointing to a char * which holds the
+	 * next location in the header buffer where you can add
+	 * headers, and len is the remaining space in the header buffer,
+	 * which is typically some hundreds of bytes.  So, to add a canned
+	 * cookie, your handler code might look similar to:
+	 *
+	 *	char **p = (char **)in;
+	 *
+	 *	if (len < 100)
+	 *		return 1;
+	 *
+	 *	*p += sprintf(*p, "Cookie: a=b\x0d\x0a");
+	 *
+	 *	return 0;
+	 *
+	 * Notice if you add anything, you just have to take care about
+	 * the CRLF on the line you added.  Obviously this callback is
+	 * optional, if you don't handle it everything is fine.
+	 *
+	 * Notice the callback is coming to protocols[0] all the time,
+	 * because there is no specific protocol negotiated yet. */
+	LWS_CALLBACK_CONFIRM_EXTENSION_OKAY			= 25,
+	/**< When the server handshake code
+	 * sees that it does support a requested extension, before
+	 * accepting the extension by additing to the list sent back to
+	 * the client it gives this callback just to check that it's okay
+	 * to use that extension.  It calls back to the requested protocol
+	 * and with in being the extension name, len is 0 and user is
+	 * valid.  Note though at this time the ESTABLISHED callback hasn't
+	 * happened yet so if you initialize user content there, user
+	 * content during this callback might not be useful for anything.
+	 * Notice this callback comes to protocols[0]. */
+	LWS_CALLBACK_CLIENT_CONFIRM_EXTENSION_SUPPORTED		= 26,
+	/**< When a client
+	 * connection is being prepared to start a handshake to a server,
+	 * each supported extension is checked with protocols[0] callback
+	 * with this reason, giving the user code a chance to suppress the
+	 * claim to support that extension by returning non-zero.  If
+	 * unhandled, by default 0 will be returned and the extension
+	 * support included in the header to the server.  Notice this
+	 * callback comes to protocols[0]. */
+	LWS_CALLBACK_PROTOCOL_INIT				= 27,
+	/**< One-time call per protocol, per-vhost using it, so it can
+	 * do initial setup / allocations etc */
+	LWS_CALLBACK_PROTOCOL_DESTROY				= 28,
+	/**< One-time call per protocol, per-vhost using it, indicating
+	 * this protocol won't get used at all after this callback, the
+	 * vhost is getting destroyed.  Take the opportunity to
+	 * deallocate everything that was allocated by the protocol. */
+	LWS_CALLBACK_WSI_CREATE					= 29,
+	/**< outermost (earliest) wsi create notification to protocols[0] */
+	LWS_CALLBACK_WSI_DESTROY				= 30,
+	/**< outermost (latest) wsi destroy notification to protocols[0] */
+	LWS_CALLBACK_GET_THREAD_ID				= 31,
+	/**< lws can accept callback when writable requests from other
+	 * threads, if you implement this callback and return an opaque
+	 * current thread ID integer. */
+
+	/* external poll() management support */
+	LWS_CALLBACK_ADD_POLL_FD				= 32,
+	/**< lws normally deals with its poll() or other event loop
+	 * internally, but in the case you are integrating with another
+	 * server you will need to have lws sockets share a
+	 * polling array with the other server.  This and the other
+	 * POLL_FD related callbacks let you put your specialized
+	 * poll array interface code in the callback for protocol 0, the
+	 * first protocol you support, usually the HTTP protocol in the
+	 * serving case.
+	 * This callback happens when a socket needs to be
+	 * added to the polling loop: in points to a struct
+	 * lws_pollargs; the fd member of the struct is the file
+	 * descriptor, and events contains the active events
+	 *
+	 * If you are using the internal lws polling / event loop
+	 * you can just ignore these callbacks. */
+	LWS_CALLBACK_DEL_POLL_FD				= 33,
+	/**< This callback happens when a socket descriptor
+	 * needs to be removed from an external polling array.  in is
+	 * again the struct lws_pollargs containing the fd member
+	 * to be removed.  If you are using the internal polling
+	 * loop, you can just ignore it. */
+	LWS_CALLBACK_CHANGE_MODE_POLL_FD			= 34,
+	/**< This callback happens when lws wants to modify the events for
+	 * a connection.
+	 * in is the struct lws_pollargs with the fd to change.
+	 * The new event mask is in events member and the old mask is in
+	 * the prev_events member.
+	 * If you are using the internal polling loop, you can just ignore
+	 * it. */
+	LWS_CALLBACK_LOCK_POLL					= 35,
+	/**< These allow the external poll changes driven
+	 * by lws to participate in an external thread locking
+	 * scheme around the changes, so the whole thing is threadsafe.
+	 * These are called around three activities in the library,
+	 *	- inserting a new wsi in the wsi / fd table (len=1)
+	 *	- deleting a wsi from the wsi / fd table (len=1)
+	 *	- changing a wsi's POLLIN/OUT state (len=0)
+	 * Locking and unlocking external synchronization objects when
+	 * len == 1 allows external threads to be synchronized against
+	 * wsi lifecycle changes if it acquires the same lock for the
+	 * duration of wsi dereference from the other thread context. */
+	LWS_CALLBACK_UNLOCK_POLL				= 36,
+	/**< See LWS_CALLBACK_LOCK_POLL, ignore if using lws internal poll */
+
+	LWS_CALLBACK_OPENSSL_CONTEXT_REQUIRES_PRIVATE_KEY	= 37,
+	/**< if configured for including OpenSSL support but no private key
+	 * file has been specified (ssl_private_key_filepath is NULL), this is
+	 * called to allow the user to set the private key directly via
+	 * libopenssl and perform further operations if required; this might be
+	 * useful in situations where the private key is not directly accessible
+	 * by the OS, for example if it is stored on a smartcard.
+	 * user is the server's OpenSSL SSL_CTX* */
+	LWS_CALLBACK_WS_PEER_INITIATED_CLOSE			= 38,
+	/**< The peer has sent an unsolicited Close WS packet.  in and
+	 * len are the optional close code (first 2 bytes, network
+	 * order) and the optional additional information which is not
+	 * defined in the standard, and may be a string or non-human- readable data.
+	 * If you return 0 lws will echo the close and then close the
+	 * connection.  If you return nonzero lws will just close the
+	 * connection. */
+
+	LWS_CALLBACK_WS_EXT_DEFAULTS				= 39,
+	/**<  */
+
+	LWS_CALLBACK_CGI					= 40,
+	/**<  */
+	LWS_CALLBACK_CGI_TERMINATED				= 41,
+	/**<  */
+	LWS_CALLBACK_CGI_STDIN_DATA				= 42,
+	/**<  */
+	LWS_CALLBACK_CGI_STDIN_COMPLETED			= 43,
+	/**<  */
+	LWS_CALLBACK_ESTABLISHED_CLIENT_HTTP			= 44,
+	/**<  */
+	LWS_CALLBACK_CLOSED_CLIENT_HTTP				= 45,
+	/**<  */
+	LWS_CALLBACK_RECEIVE_CLIENT_HTTP			= 46,
+	/**<  */
+	LWS_CALLBACK_COMPLETED_CLIENT_HTTP			= 47,
+	/**<  */
+	LWS_CALLBACK_RECEIVE_CLIENT_HTTP_READ			= 48,
+	/**<  */
+	LWS_CALLBACK_HTTP_BIND_PROTOCOL				= 49,
+	/**<  */
+	LWS_CALLBACK_HTTP_DROP_PROTOCOL				= 50,
+	/**<  */
+	LWS_CALLBACK_CHECK_ACCESS_RIGHTS			= 51,
+	/**<  */
+	LWS_CALLBACK_PROCESS_HTML				= 52,
+	/**<  */
+	LWS_CALLBACK_ADD_HEADERS				= 53,
+	/**<  */
+	LWS_CALLBACK_SESSION_INFO				= 54,
+	/**<  */
+
+	LWS_CALLBACK_GS_EVENT					= 55,
+	/**<  */
+	LWS_CALLBACK_HTTP_PMO					= 56,
+	/**< per-mount options for this connection, called before
+	 * the normal LWS_CALLBACK_HTTP when the mount has per-mount
+	 * options
+	 */
+	LWS_CALLBACK_CLIENT_HTTP_WRITEABLE			= 57,
+	/**< when doing an HTTP type client connection, you can call
+	 * lws_client_http_body_pending(wsi, 1) from
+	 * LWS_CALLBACK_CLIENT_APPEND_HANDSHAKE_HEADER to get these callbacks
+	 * sending the HTTP headers.
+	 *
+	 * From this callback, when you have sent everything, you should let
+	 * lws know by calling lws_client_http_body_pending(wsi, 0)
+	 */
+
+	/****** add new things just above ---^ ******/
+
+	LWS_CALLBACK_USER = 1000,
+	/**<  user code can use any including / above without fear of clashes */
+};
+
+
+
+/**
+ * typedef lws_callback_function() - User server actions
+ * \param wsi:	Opaque websocket instance pointer
+ * \param reason:	The reason for the call
+ * \param user:	Pointer to per-session user data allocated by library
+ * \param in:		Pointer used for some callback reasons
+ * \param len:	Length set for some callback reasons
+ *
+ *	This callback is the way the user controls what is served.  All the
+ *	protocol detail is hidden and handled by the library.
+ *
+ *	For each connection / session there is user data allocated that is
+ *	pointed to by "user".  You set the size of this user data area when
+ *	the library is initialized with lws_create_server.
+ */
+typedef int
+lws_callback_function(struct lws *wsi, enum lws_callback_reasons reason,
+		    void *user, void *in, size_t len);
+///@}
+
+/*! \defgroup extensions
+ *
+ * ##Extension releated functions
+ *
+ *  Ws defines optional extensions, lws provides the ability to implement these
+ *  in user code if so desired.
+ *
+ *  We provide one extensions permessage-deflate.
+ */
+///@{
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+enum lws_extension_callback_reasons {
+	LWS_EXT_CB_SERVER_CONTEXT_CONSTRUCT		=  0,
+	LWS_EXT_CB_CLIENT_CONTEXT_CONSTRUCT		=  1,
+	LWS_EXT_CB_SERVER_CONTEXT_DESTRUCT		=  2,
+	LWS_EXT_CB_CLIENT_CONTEXT_DESTRUCT		=  3,
+	LWS_EXT_CB_CONSTRUCT				=  4,
+	LWS_EXT_CB_CLIENT_CONSTRUCT			=  5,
+	LWS_EXT_CB_CHECK_OK_TO_REALLY_CLOSE		=  6,
+	LWS_EXT_CB_CHECK_OK_TO_PROPOSE_EXTENSION	=  7,
+	LWS_EXT_CB_DESTROY				=  8,
+	LWS_EXT_CB_DESTROY_ANY_WSI_CLOSING		=  9,
+	LWS_EXT_CB_ANY_WSI_ESTABLISHED			= 10,
+	LWS_EXT_CB_PACKET_RX_PREPARSE			= 11,
+	LWS_EXT_CB_PACKET_TX_PRESEND			= 12,
+	LWS_EXT_CB_PACKET_TX_DO_SEND			= 13,
+	LWS_EXT_CB_HANDSHAKE_REPLY_TX			= 14,
+	LWS_EXT_CB_FLUSH_PENDING_TX			= 15,
+	LWS_EXT_CB_EXTENDED_PAYLOAD_RX			= 16,
+	LWS_EXT_CB_CAN_PROXY_CLIENT_CONNECTION		= 17,
+	LWS_EXT_CB_1HZ					= 18,
+	LWS_EXT_CB_REQUEST_ON_WRITEABLE			= 19,
+	LWS_EXT_CB_IS_WRITEABLE				= 20,
+	LWS_EXT_CB_PAYLOAD_TX				= 21,
+	LWS_EXT_CB_PAYLOAD_RX				= 22,
+	LWS_EXT_CB_OPTION_DEFAULT			= 23,
+	LWS_EXT_CB_OPTION_SET				= 24,
+	LWS_EXT_CB_OPTION_CONFIRM			= 25,
+	LWS_EXT_CB_NAMED_OPTION_SET			= 26,
+
+	/****** add new things just above ---^ ******/
+};
+
+/** enum lws_ext_options_types */
+enum lws_ext_options_types {
+	EXTARG_NONE, /**< does not take an argument */
+	EXTARG_DEC,  /**< requires a decimal argument */
+	EXTARG_OPT_DEC /**< may have an optional decimal argument */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility */
+};
+
+/** struct lws_ext_options -	Option arguments to the extension.  These are
+ *				used in the negotiation at ws upgrade time.
+ *				The helper function lws_ext_parse_options()
+ *				uses these to generate callbacks */
+struct lws_ext_options {
+	const char *name; /**< Option name, eg, "server_no_context_takeover" */
+	enum lws_ext_options_types type; /**< What kind of args the option can take */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility */
+};
+
+/** struct lws_ext_option_arg */
+struct lws_ext_option_arg {
+	const char *option_name; /**< may be NULL, option_index used then */
+	int option_index; /**< argument ordinal to use if option_name missing */
+	const char *start; /**< value */
+	int len; /**< length of value */
+};
+
+/**
+ * typedef lws_extension_callback_function() - Hooks to allow extensions to operate
+ * \param context:	Websockets context
+ * \param ext:	This extension
+ * \param wsi:	Opaque websocket instance pointer
+ * \param reason:	The reason for the call
+ * \param user:	Pointer to ptr to per-session user data allocated by library
+ * \param in:		Pointer used for some callback reasons
+ * \param len:	Length set for some callback reasons
+ *
+ *	Each extension that is active on a particular connection receives
+ *	callbacks during the connection lifetime to allow the extension to
+ *	operate on websocket data and manage itself.
+ *
+ *	Libwebsockets takes care of allocating and freeing "user" memory for
+ *	each active extension on each connection.  That is what is pointed to
+ *	by the user parameter.
+ *
+ *	LWS_EXT_CB_CONSTRUCT:  called when the server has decided to
+ *		select this extension from the list provided by the client,
+ *		just before the server will send back the handshake accepting
+ *		the connection with this extension active.  This gives the
+ *		extension a chance to initialize its connection context found
+ *		in user.
+ *
+ *	LWS_EXT_CB_CLIENT_CONSTRUCT: same as LWS_EXT_CB_CONSTRUCT
+ *		but called when client is instantiating this extension.  Some
+ *		extensions will work the same on client and server side and then
+ *		you can just merge handlers for both CONSTRUCTS.
+ *
+ *	LWS_EXT_CB_DESTROY:  called when the connection the extension was
+ *		being used on is about to be closed and deallocated.  It's the
+ *		last chance for the extension to deallocate anything it has
+ *		allocated in the user data (pointed to by user) before the
+ *		user data is deleted.  This same callback is used whether you
+ *		are in client or server instantiation context.
+ *
+ *	LWS_EXT_CB_PACKET_RX_PREPARSE: when this extension was active on
+ *		a connection, and a packet of data arrived at the connection,
+ *		it is passed to this callback to give the extension a chance to
+ *		change the data, eg, decompress it.  user is pointing to the
+ *		extension's private connection context data, in is pointing
+ *		to an lws_tokens struct, it consists of a char * pointer called
+ *		token, and an int called token_len.  At entry, these are
+ *		set to point to the received buffer and set to the content
+ *		length.  If the extension will grow the content, it should use
+ *		a new buffer allocated in its private user context data and
+ *		set the pointed-to lws_tokens members to point to its buffer.
+ *
+ *	LWS_EXT_CB_PACKET_TX_PRESEND: this works the same way as
+ *		LWS_EXT_CB_PACKET_RX_PREPARSE above, except it gives the
+ *		extension a chance to change websocket data just before it will
+ *		be sent out.  Using the same lws_token pointer scheme in in,
+ *		the extension can change the buffer and the length to be
+ *		transmitted how it likes.  Again if it wants to grow the
+ *		buffer safely, it should copy the data into its own buffer and
+ *		set the lws_tokens token pointer to it.
+ *
+ *	LWS_EXT_CB_ARGS_VALIDATE:
+ */
+typedef int
+lws_extension_callback_function(struct lws_context *context,
+			      const struct lws_extension *ext, struct lws *wsi,
+			      enum lws_extension_callback_reasons reason,
+			      void *user, void *in, size_t len);
+
+/** struct lws_extension -	An extension we support */
+struct lws_extension {
+	const char *name; /**< Formal extension name, eg, "permessage-deflate" */
+	lws_extension_callback_function *callback; /**< Service callback */
+	const char *client_offer; /**< String containing exts and options client offers */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility */
+};
+
+/**
+ * lws_set_extension_option(): set extension option if possible
+ *
+ * \param wsi:	websocket connection
+ * \param ext_name:	name of ext, like "permessage-deflate"
+ * \param opt_name:	name of option, like "rx_buf_size"
+ * \param opt_val:	value to set option to
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_set_extension_option(struct lws *wsi, const char *ext_name,
+			 const char *opt_name, const char *opt_val);
+
+#ifndef LWS_NO_EXTENSIONS
+/* lws_get_internal_extensions() - DEPRECATED
+ *
+ * \Deprecated There is no longer a set internal extensions table.  The table is provided
+ * by user code along with application-specific settings.  See the test
+ * client and server for how to do.
+ */
+static LWS_INLINE LWS_WARN_DEPRECATED const struct lws_extension *
+lws_get_internal_extensions(void) { return NULL; }
+
+/**
+ * lws_ext_parse_options() - deal with parsing negotiated extension options
+ *
+ * \param ext: related extension struct
+ * \param wsi:	websocket connection
+ * \param ext_user: per-connection extension private data
+ * \param opts: list of supported options
+ * \param o: option string to parse
+ * \param len: length
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_ext_parse_options(const struct lws_extension *ext, struct lws *wsi,
+		       void *ext_user, const struct lws_ext_options *opts,
+		       const char *o, int len);
+#endif
+
+/** lws_extension_callback_pm_deflate() - extension for RFC7692
+ *
+ * \param context:	lws context
+ * \param ext:	related lws_extension struct
+ * \param wsi:	websocket connection
+ * \param reason:	incoming callback reason
+ * \param user:	per-connection extension private data
+ * \param in:	pointer parameter
+ * \param len:	length parameter
+ *
+ * Built-in callback implementing RFC7692 permessage-deflate
+ */
+LWS_EXTERN
+int lws_extension_callback_pm_deflate(
+	struct lws_context *context, const struct lws_extension *ext,
+	struct lws *wsi, enum lws_extension_callback_reasons reason,
+	void *user, void *in, size_t len);
+
+/*
+ * The internal exts are part of the public abi
+ * If we add more extensions, publish the callback here  ------v
+ */
+///@}
+
+/*! \defgroup Protocols-and-Plugins Protocols and Plugins
+ * \ingroup lwsapi
+ *
+ * ##Protocol and protocol plugin -related apis
+ *
+ * Protocols bind ws protocol names to a custom callback specific to that
+ * protocol implementaion.
+ *
+ * A list of protocols can be passed in at context creation time, but it is
+ * also legal to leave that NULL and add the protocols and their callback code
+ * using plugins.
+ *
+ * Plugins are much preferable compared to cut and pasting code into an
+ * application each time, since they can be used standalone.
+ */
+///@{
+/** struct lws_protocols -	List of protocols and handlers client or server
+ *					supports. */
+
+struct lws_protocols {
+	const char *name;
+	/**< Protocol name that must match the one given in the client
+	 * Javascript new WebSocket(url, 'protocol') name. */
+	lws_callback_function *callback;
+	/**< The service callback used for this protocol.  It allows the
+	 * service action for an entire protocol to be encapsulated in
+	 * the protocol-specific callback */
+	size_t per_session_data_size;
+	/**< Each new connection using this protocol gets
+	 * this much memory allocated on connection establishment and
+	 * freed on connection takedown.  A pointer to this per-connection
+	 * allocation is passed into the callback in the 'user' parameter */
+	size_t rx_buffer_size;
+	/**< lws allocates this much space for rx data and informs callback
+	 * when something came.  Due to rx flow control, the callback may not
+	 * be able to consume it all without having to return to the event
+	 * loop.  That is supported in lws.
+	 *
+	 * This also controls how much may be sent at once at the moment,
+	 * although this is likely to change.
+	 */
+	unsigned int id;
+	/**< ignored by lws, but useful to contain user information bound
+	 * to the selected protocol.  For example if this protocol was
+	 * called "myprotocol-v2", you might set id to 2, and the user
+	 * code that acts differently according to the version can do so by
+	 * switch (wsi->protocol->id), user code might use some bits as
+	 * capability flags based on selected protocol version, etc. */
+	void *user; /**< ignored by lws, but user code can pass a pointer
+			here it can later access from the protocol callback */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility */
+};
+
+struct lws_vhost;
+
+/**
+ * lws_vhost_name_to_protocol() - get vhost's protocol object from its name
+ *
+ * \param vh: vhost to search
+ * \param name: protocol name
+ *
+ * Returns NULL or a pointer to the vhost's protocol of the requested name
+ */
+LWS_VISIBLE LWS_EXTERN const struct lws_protocols *
+lws_vhost_name_to_protocol(struct lws_vhost *vh, const char *name);
+
+/**
+ * lws_get_protocol() - Returns a protocol pointer from a websocket
+ *				  connection.
+ * \param wsi:	pointer to struct websocket you want to know the protocol of
+ *
+ *
+ *	Some apis can act on all live connections of a given protocol,
+ *	this is how you can get a pointer to the active protocol if needed.
+ */
+LWS_VISIBLE LWS_EXTERN const struct lws_protocols *
+lws_get_protocol(struct lws *wsi);
+
+/** lws_protocol_get() -  deprecated: use lws_get_protocol */
+LWS_VISIBLE LWS_EXTERN const struct lws_protocols *
+lws_protocol_get(struct lws *wsi) LWS_WARN_DEPRECATED;
+
+/**
+ * lws_protocol_vh_priv_zalloc() - Allocate and zero down a protocol's per-vhost
+ *				   storage
+ * \param vhost:	vhost the instance is related to
+ * \param prot:		protocol the instance is related to
+ * \param size:		bytes to allocate
+ *
+ * Protocols often find it useful to allocate a per-vhost struct, this is a
+ * helper to be called in the per-vhost init LWS_CALLBACK_PROTOCOL_INIT
+ */
+LWS_VISIBLE LWS_EXTERN void *
+lws_protocol_vh_priv_zalloc(struct lws_vhost *vhost, const struct lws_protocols *prot,
+			    int size);
+
+/**
+ * lws_protocol_vh_priv_get() - retreive a protocol's per-vhost storage
+ *
+ * \param vhost:	vhost the instance is related to
+ * \param prot:		protocol the instance is related to
+ *
+ * Recover a pointer to the allocated per-vhost storage for the protocol created
+ * by lws_protocol_vh_priv_zalloc() earlier
+ */
+LWS_VISIBLE LWS_EXTERN void *
+lws_protocol_vh_priv_get(struct lws_vhost *vhost, const struct lws_protocols *prot);
+
+/**
+ * lws_finalize_startup() - drop initial process privileges
+ *
+ * \param context:	lws context
+ *
+ * This is called after the end of the vhost protocol initializations, but
+ * you may choose to call it earlier
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_finalize_startup(struct lws_context *context);
+
+#ifdef LWS_WITH_PLUGINS
+
+/* PLUGINS implies LIBUV */
+
+#define LWS_PLUGIN_API_MAGIC 180
+
+/** struct lws_plugin_capability - how a plugin introduces itself to lws */
+struct lws_plugin_capability {
+	unsigned int api_magic;	/**< caller fills this in, plugin fills rest */
+	const struct lws_protocols *protocols; /**< array of supported protocols provided by plugin */
+	int count_protocols; /**< how many protocols */
+	const struct lws_extension *extensions; /**< array of extensions provided by plugin */
+	int count_extensions; /**< how many extensions */
+};
+
+typedef int (*lws_plugin_init_func)(struct lws_context *,
+				    struct lws_plugin_capability *);
+typedef int (*lws_plugin_destroy_func)(struct lws_context *);
+
+/** struct lws_plugin */
+struct lws_plugin {
+	struct lws_plugin *list; /**< linked list */
+#if (UV_VERSION_MAJOR > 0)
+	uv_lib_t lib; /**< shared library pointer */
+#else
+	void *l; /**< so we can compile on ancient libuv */
+#endif
+	char name[64]; /**< name of the plugin */
+	struct lws_plugin_capability caps; /**< plugin capabilities */
+};
+
+#endif
+
+///@}
+
+
+/*! \defgroup generic-sessions plugin: generic-sessions
+ * \ingroup Protocols-and-Plugins
+ *
+ * ##Plugin Generic-sessions related
+ *
+ * generic-sessions plugin provides a reusable, generic session and login /
+ * register / forgot password framework including email verification.
+ */
+///@{
+
+#define LWSGS_EMAIL_CONTENT_SIZE 16384
+/**< Maximum size of email we might send */
+
+/* SHA-1 binary and hexified versions */
+/** typedef struct lwsgw_hash_bin */
+typedef struct { unsigned char bin[20]; /**< binary representation of hash */} lwsgw_hash_bin;
+/** typedef struct lwsgw_hash */
+typedef struct { char id[41]; /**< ascii hex representation of hash */ } lwsgw_hash;
+
+/** enum lwsgs_auth_bits */
+enum lwsgs_auth_bits {
+	LWSGS_AUTH_LOGGED_IN = 1, /**< user is logged in as somebody */
+	LWSGS_AUTH_ADMIN = 2,	/**< logged in as the admin user */
+	LWSGS_AUTH_VERIFIED = 4,  /**< user has verified his email */
+	LWSGS_AUTH_FORGOT_FLOW = 8,	/**< he just completed "forgot password" flow */
+};
+
+/** struct lws_session_info - information about user session status */
+struct lws_session_info {
+	char username[32]; /**< username logged in as, or empty string */
+	char email[100]; /**< email address associated with login, or empty string */
+	char ip[72]; /**< ip address session was started from */
+	unsigned int mask; /**< access rights mask associated with session
+	 	 	    * see enum lwsgs_auth_bits */
+	char session[42]; /**< session id string, usable as opaque uid when not logged in */
+};
+
+/** enum lws_gs_event */
+enum lws_gs_event {
+	LWSGSE_CREATED, /**< a new user was created */
+	LWSGSE_DELETED  /**< an existing user was deleted */
+};
+
+/** struct lws_gs_event_args */
+struct lws_gs_event_args {
+	enum lws_gs_event event; /**< which event happened */
+	const char *username; /**< which username the event happened to */
+	const char *email; /**< the email address of that user */
+};
+
+///@}
+
+
+/*! \defgroup context-and-vhost
+ * \ingroup lwsapi
+ *
+ * ##Context and Vhost releated functions
+ *
+ *  LWS requires that there is one context, in which you may define multiple
+ *  vhosts.  Each vhost is a virtual host, with either its own listen port
+ *  or sharing an existing one.  Each vhost has its own SSL context that can
+ *  be set up individually or left disabled.
+ *
+ *  If you don't care about multiple "site" support, you can ignore it and
+ *  lws will create a single default vhost at context creation time.
+ */
+///@{
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+
+/** enum lws_context_options - context and vhost options */
+enum lws_context_options {
+	LWS_SERVER_OPTION_REQUIRE_VALID_OPENSSL_CLIENT_CERT	= (1 << 1) |
+								  (1 << 12),
+	/**< (VH) Don't allow the connection unless the client has a
+	 * client cert that we recognize; provides
+	 * LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT */
+	LWS_SERVER_OPTION_SKIP_SERVER_CANONICAL_NAME		= (1 << 2),
+	/**< (CTX) Don't try to get the server's hostname */
+	LWS_SERVER_OPTION_ALLOW_NON_SSL_ON_SSL_PORT		= (1 << 3) |
+								  (1 << 12),
+	/**< (VH) Allow non-SSL (plaintext) connections on the same
+	 * port as SSL is listening... undermines the security of SSL;
+	 * provides  LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT */
+	LWS_SERVER_OPTION_LIBEV					= (1 << 4),
+	/**< (CTX) Use libev event loop */
+	LWS_SERVER_OPTION_DISABLE_IPV6				= (1 << 5),
+	/**< (VH) Disable IPV6 support */
+	LWS_SERVER_OPTION_DISABLE_OS_CA_CERTS			= (1 << 6),
+	/**< (VH) Don't load OS CA certs, you will need to load your
+	 * own CA cert(s) */
+	LWS_SERVER_OPTION_PEER_CERT_NOT_REQUIRED		= (1 << 7),
+	/**< (VH) Accept connections with no valid Cert (eg, selfsigned) */
+	LWS_SERVER_OPTION_VALIDATE_UTF8				= (1 << 8),
+	/**< (VH) Check UT-8 correctness */
+	LWS_SERVER_OPTION_SSL_ECDH				= (1 << 9) |
+								  (1 << 12),
+	/**< (VH)  initialize ECDH ciphers */
+	LWS_SERVER_OPTION_LIBUV					= (1 << 10),
+	/**< (CTX)  Use libuv event loop */
+	LWS_SERVER_OPTION_REDIRECT_HTTP_TO_HTTPS		= (1 << 11) |
+								  (1 << 12),
+	/**< (VH) Use http redirect to force http to https
+	 * (deprecated: use mount redirection) */
+	LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT			= (1 << 12),
+	/**< (CTX) Initialize the SSL library at all */
+	LWS_SERVER_OPTION_EXPLICIT_VHOSTS			= (1 << 13),
+	/**< (CTX) Only create the context when calling context
+	 * create api, implies user code will create its own vhosts */
+	LWS_SERVER_OPTION_UNIX_SOCK				= (1 << 14),
+	/**< (VH) Use Unix socket */
+	LWS_SERVER_OPTION_STS					= (1 << 15),
+	/**< (VH) Send Strict Transport Security header, making
+	 * clients subsequently go to https even if user asked for http */
+	LWS_SERVER_OPTION_IPV6_V6ONLY_MODIFY			= (1 << 16),
+	/**< (VH) Enable LWS_SERVER_OPTION_IPV6_V6ONLY_VALUE to take effect */
+	LWS_SERVER_OPTION_IPV6_V6ONLY_VALUE			= (1 << 17),
+	/**< (VH) if set, only ipv6 allowed on the vhost */
+	LWS_SERVER_OPTION_UV_NO_SIGSEGV_SIGFPE_SPIN		= (1 << 18),
+	/**< (CTX) Libuv only: Do not spin on SIGSEGV / SIGFPE.  A segfault
+	 * normally makes the lib spin so you can attach a debugger to it
+	 * even if it happened without a debugger in place.  You can disable
+	 * that by giving this option.
+	 */
+
+	/****** add new things just above ---^ ******/
+};
+
+#define lws_check_opt(c, f) (((c) & (f)) == (f))
+
+/** struct lws_context_creation_info - parameters to create context and /or vhost with
+ *
+ * This is also used to create vhosts.... if LWS_SERVER_OPTION_EXPLICIT_VHOSTS
+ * is not given, then for backwards compatibility one vhost is created at
+ * context-creation time using the info from this struct.
+ *
+ * If LWS_SERVER_OPTION_EXPLICIT_VHOSTS is given, then no vhosts are created
+ * at the same time as the context, they are expected to be created afterwards.
+ */
+struct lws_context_creation_info {
+	int port;
+	/**< VHOST: Port to listen on... you can use CONTEXT_PORT_NO_LISTEN to
+	 * suppress listening on any port, that's what you want if you are
+	 * not running a websocket server at all but just using it as a
+	 * client */
+	const char *iface;
+	/**< VHOST: NULL to bind the listen socket to all interfaces, or the
+	 * interface name, eg, "eth2"
+	 * If options specifies LWS_SERVER_OPTION_UNIX_SOCK, this member is
+	 * the pathname of a UNIX domain socket. you can use the UNIX domain
+	 * sockets in abstract namespace, by prepending an at symbol to the
+	 * socket name. */
+	const struct lws_protocols *protocols;
+	/**< VHOST: Array of structures listing supported protocols and a protocol-
+	 * specific callback for each one.  The list is ended with an
+	 * entry that has a NULL callback pointer. */
+	const struct lws_extension *extensions;
+	/**< VHOST: NULL or array of lws_extension structs listing the
+	 * extensions this context supports. */
+	const struct lws_token_limits *token_limits;
+	/**< CONTEXT: NULL or struct lws_token_limits pointer which is initialized
+	 * with a token length limit for each possible WSI_TOKEN_ */
+	const char *ssl_private_key_password;
+	/**< VHOST: NULL or the passphrase needed for the private key */
+	const char *ssl_cert_filepath;
+	/**< VHOST: If libwebsockets was compiled to use ssl, and you want
+	 * to listen using SSL, set to the filepath to fetch the
+ 	 * server cert from, otherwise NULL for unencrypted */
+	const char *ssl_private_key_filepath;
+	/**<  VHOST: filepath to private key if wanting SSL mode;
+	 * if this is set to NULL but sll_cert_filepath is set, the
+	 * OPENSSL_CONTEXT_REQUIRES_PRIVATE_KEY callback is called
+	 * to allow setting of the private key directly via openSSL
+	 * library calls */
+	const char *ssl_ca_filepath;
+	/**< VHOST: CA certificate filepath or NULL */
+	const char *ssl_cipher_list;
+	/**< VHOST: List of valid ciphers to use (eg,
+	 * "RC4-MD5:RC4-SHA:AES128-SHA:AES256-SHA:HIGH:!DSS:!aNULL"
+	 * or you can leave it as NULL to get "DEFAULT" */
+	const char *http_proxy_address;
+	/**< VHOST: If non-NULL, attempts to proxy via the given address.
+	 * If proxy auth is required, use format "username:password\@server:port" */
+	unsigned int http_proxy_port;
+	/**< VHOST: If http_proxy_address was non-NULL, uses this port */
+	int gid;
+	/**< CONTEXT: group id to change to after setting listen socket, or -1. */
+	int uid;
+	/**< CONTEXT: user id to change to after setting listen socket, or -1. */
+	unsigned int options;
+	/**< VHOST + CONTEXT: 0, or LWS_SERVER_OPTION_... bitfields */
+	void *user;
+	/**< CONTEXT: optional user pointer that can be recovered via the context
+ *		pointer using lws_context_user */
+	int ka_time;
+	/**< CONTEXT: 0 for no TCP keepalive, otherwise apply this keepalive
+	 * timeout to all libwebsocket sockets, client or server */
+	int ka_probes;
+	/**< CONTEXT: if ka_time was nonzero, after the timeout expires how many
+	 * times to try to get a response from the peer before giving up
+	 * and killing the connection */
+	int ka_interval;
+	/**< CONTEXT: if ka_time was nonzero, how long to wait before each ka_probes
+	 * attempt */
+#ifdef LWS_OPENSSL_SUPPORT
+	SSL_CTX *provided_client_ssl_ctx;
+	/**< CONTEXT: If non-null, swap out libwebsockets ssl
+ *		implementation for the one provided by provided_ssl_ctx.
+ *		Libwebsockets no longer is responsible for freeing the context
+ *		if this option is selected. */
+#else /* maintain structure layout either way */
+	void *provided_client_ssl_ctx; /**< dummy if ssl disabled */
+#endif
+
+	short max_http_header_data;
+	/**< CONTEXT: The max amount of header payload that can be handled
+	 * in an http request (unrecognized header payload is dropped) */
+	short max_http_header_pool;
+	/**< CONTEXT: The max number of connections with http headers that
+	 * can be processed simultaneously (the corresponding memory is
+	 * allocated for the lifetime of the context).  If the pool is
+	 * busy new incoming connections must wait for accept until one
+	 * becomes free. */
+
+	unsigned int count_threads;
+	/**< CONTEXT: how many contexts to create in an array, 0 = 1 */
+	unsigned int fd_limit_per_thread;
+	/**< CONTEXT: nonzero means restrict each service thread to this
+	 * many fds, 0 means the default which is divide the process fd
+	 * limit by the number of threads. */
+	unsigned int timeout_secs;
+	/**< VHOST: various processes involving network roundtrips in the
+	 * library are protected from hanging forever by timeouts.  If
+	 * nonzero, this member lets you set the timeout used in seconds.
+	 * Otherwise a default timeout is used. */
+	const char *ecdh_curve;
+	/**< VHOST: if NULL, defaults to initializing server with "prime256v1" */
+	const char *vhost_name;
+	/**< VHOST: name of vhost, must match external DNS name used to
+	 * access the site, like "warmcat.com" as it's used to match
+	 * Host: header and / or SNI name for SSL. */
+	const char * const *plugin_dirs;
+	/**< CONTEXT: NULL, or NULL-terminated array of directories to
+	 * scan for lws protocol plugins at context creation time */
+	const struct lws_protocol_vhost_options *pvo;
+	/**< VHOST: pointer to optional linked list of per-vhost
+	 * options made accessible to protocols */
+	int keepalive_timeout;
+	/**< VHOST: (default = 0 = 60s) seconds to allow remote
+	 * client to hold on to an idle HTTP/1.1 connection */
+	const char *log_filepath;
+	/**< VHOST: filepath to append logs to... this is opened before
+	 *		any dropping of initial privileges */
+	const struct lws_http_mount *mounts;
+	/**< VHOST: optional linked list of mounts for this vhost */
+	const char *server_string;
+	/**< CONTEXT: string used in HTTP headers to identify server
+ *		software, if NULL, "libwebsockets". */
+	unsigned int pt_serv_buf_size;
+	/**< CONTEXT: 0 = default of 4096.  This buffer is used by
+	 * various service related features including file serving, it
+	 * defines the max chunk of file that can be sent at once.
+	 * At the risk of lws having to buffer failed large sends, it
+	 * can be increased to, eg, 128KiB to improve throughput. */
+	unsigned int max_http_header_data2;
+	/**< CONTEXT: if max_http_header_data is 0 and this
+	 * is nonzero, this will be used in place of the default.  It's
+	 * like this for compatibility with the original short version,
+	 * this is unsigned int length. */
+	long ssl_options_set;
+	/**< VHOST: Any bits set here will be set as SSL options */
+	long ssl_options_clear;
+	/**< VHOST: Any bits set here will be cleared as SSL options */
+	unsigned short ws_ping_pong_interval;
+	/**< CONTEXT: 0 for none, else interval in seconds between sending
+	 * PINGs on idle websocket connections.  When the PING is sent,
+	 * the PONG must come within the normal timeout_secs timeout period
+	 * or the connection will be dropped.
+	 * Any RX or TX traffic on the connection restarts the interval timer,
+	 * so a connection which always sends or receives something at intervals
+	 * less than the interval given here will never send PINGs / expect
+	 * PONGs.  Conversely as soon as the ws connection is established, an
+	 * idle connection will do the PING / PONG roundtrip as soon as
+	 * ws_ping_pong_interval seconds has passed without traffic
+	 */
+	const struct lws_protocol_vhost_options *headers;
+		/**< VHOST: pointer to optional linked list of per-vhost
+		 * canned headers that are added to server responses */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility
+	 *
+	 * The below is to ensure later library versions with new
+	 * members added above will see 0 (default) even if the app
+	 * was not built against the newer headers.
+	 */
+
+	void *_unused[8]; /**< dummy */
+};
+
+/**
+ * lws_create_context() - Create the websocket handler
+ * \param info:	pointer to struct with parameters
+ *
+ *	This function creates the listening socket (if serving) and takes care
+ *	of all initialization in one step.
+ *
+ *	If option LWS_SERVER_OPTION_EXPLICIT_VHOSTS is given, no vhost is
+ *	created; you're expected to create your own vhosts afterwards using
+ *	lws_create_vhost().  Otherwise a vhost named "default" is also created
+ *	using the information in the vhost-related members, for compatibility.
+ *
+ *	After initialization, it returns a struct lws_context * that
+ *	represents this server.  After calling, user code needs to take care
+ *	of calling lws_service() with the context pointer to get the
+ *	server's sockets serviced.  This must be done in the same process
+ *	context as the initialization call.
+ *
+ *	The protocol callback functions are called for a handful of events
+ *	including http requests coming in, websocket connections becoming
+ *	established, and data arriving; it's also called periodically to allow
+ *	async transmission.
+ *
+ *	HTTP requests are sent always to the FIRST protocol in protocol, since
+ *	at that time websocket protocol has not been negotiated.  Other
+ *	protocols after the first one never see any HTTP callack activity.
+ *
+ *	The server created is a simple http server by default; part of the
+ *	websocket standard is upgrading this http connection to a websocket one.
+ *
+ *	This allows the same server to provide files like scripts and favicon /
+ *	images or whatever over http and dynamic data over websockets all in
+ *	one place; they're all handled in the user callback.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws_context *
+lws_create_context(struct lws_context_creation_info *info);
+
+/**
+ * lws_context_destroy() - Destroy the websocket context
+ * \param context:	Websocket context
+ *
+ *	This function closes any active connections and then frees the
+ *	context.  After calling this, any further use of the context is
+ *	undefined.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_context_destroy(struct lws_context *context);
+
+/**
+ * lws_set_proxy() - Setups proxy to lws_context.
+ * \param vhost:	pointer to struct lws_vhost you want set proxy for
+ * \param proxy: pointer to c string containing proxy in format address:port
+ *
+ * Returns 0 if proxy string was parsed and proxy was setup.
+ * Returns -1 if proxy is NULL or has incorrect format.
+ *
+ * This is only required if your OS does not provide the http_proxy
+ * environment variable (eg, OSX)
+ *
+ *   IMPORTANT! You should call this function right after creation of the
+ *   lws_context and before call to connect. If you call this
+ *   function after connect behavior is undefined.
+ *   This function will override proxy settings made on lws_context
+ *   creation with genenv() call.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_set_proxy(struct lws_vhost *vhost, const char *proxy);
+
+
+struct lws_vhost;
+
+/**
+ * lws_create_vhost() - Create a vhost (virtual server context)
+ * \param context:	pointer to result of lws_create_context()
+ * \param info:		pointer to struct with parameters
+ *
+ * This function creates a virtual server (vhost) using the vhost-related
+ * members of the info struct.  You can create many vhosts inside one context
+ * if you created the context with the option LWS_SERVER_OPTION_EXPLICIT_VHOSTS
+ */
+LWS_EXTERN LWS_VISIBLE struct lws_vhost *
+lws_create_vhost(struct lws_context *context,
+		 struct lws_context_creation_info *info);
+
+/**
+ * lwsws_get_config_globals() - Parse a JSON server config file
+ * \param info:		pointer to struct with parameters
+ * \param d:		filepath of the config file
+ * \param config_strings: storage for the config strings extracted from JSON,
+ * 			  the pointer is incremented as strings are stored
+ * \param len:		pointer to the remaining length left in config_strings
+ *			  the value is decremented as strings are stored
+ *
+ * This function prepares a n lws_context_creation_info struct with global
+ * settings from a file d.
+ *
+ * Requires CMake option LWS_WITH_LEJP_CONF to have been enabled
+ */
+LWS_VISIBLE LWS_EXTERN int
+lwsws_get_config_globals(struct lws_context_creation_info *info, const char *d,
+			 char **config_strings, int *len);
+
+/**
+ * lwsws_get_config_vhosts() - Create vhosts from a JSON server config file
+ * \param context:	pointer to result of lws_create_context()
+ * \param info:		pointer to struct with parameters
+ * \param d:		filepath of the config file
+ * \param config_strings: storage for the config strings extracted from JSON,
+ * 			  the pointer is incremented as strings are stored
+ * \param len:		pointer to the remaining length left in config_strings
+ *			  the value is decremented as strings are stored
+ *
+ * This function creates vhosts into a context according to the settings in
+ *JSON files found in directory d.
+ *
+ * Requires CMake option LWS_WITH_LEJP_CONF to have been enabled
+ */
+LWS_VISIBLE LWS_EXTERN int
+lwsws_get_config_vhosts(struct lws_context *context,
+			struct lws_context_creation_info *info, const char *d,
+			char **config_strings, int *len);
+
+/** lws_vhost_get() - \deprecated deprecated: use lws_get_vhost() */
+LWS_VISIBLE LWS_EXTERN struct lws_vhost *
+lws_vhost_get(struct lws *wsi) LWS_WARN_DEPRECATED;
+
+/**
+ * lws_get_vhost() - return the vhost a wsi belongs to
+ *
+ * \param wsi: which connection
+ */
+LWS_VISIBLE LWS_EXTERN struct lws_vhost *
+lws_get_vhost(struct lws *wsi);
+
+/**
+ * lws_json_dump_vhost() - describe vhost state and stats in JSON
+ *
+ * \param vh: the vhost
+ * \param buf: buffer to fill with JSON
+ * \param len: max length of buf
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_json_dump_vhost(const struct lws_vhost *vh, char *buf, int len);
+
+/**
+ * lws_json_dump_context() - describe context state and stats in JSON
+ *
+ * \param context: the context
+ * \param buf: buffer to fill with JSON
+ * \param len: max length of buf
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_json_dump_context(const struct lws_context *context, char *buf, int len);
+
+/**
+ * lws_context_user() - get the user data associated with the context
+ * \param context: Websocket context
+ *
+ * This returns the optional user allocation that can be attached to
+ * the context the sockets live in at context_create time.  It's a way
+ * to let all sockets serviced in the same context share data without
+ * using globals statics in the user code.
+ */
+LWS_VISIBLE LWS_EXTERN void *
+lws_context_user(struct lws_context *context);
+
+/*! \defgroup vhost-mounts Vhost mounts and options
+ * \ingroup context-and-vhost-creation
+ *
+ * ##Vhost mounts and options
+ */
+///@{
+/** struct lws_protocol_vhost_options - linked list of per-vhost protocol
+ * 					name=value options
+ *
+ * This provides a general way to attach a linked-list of name=value pairs,
+ * which can also have an optional child link-list using the options member.
+ */
+struct lws_protocol_vhost_options {
+	const struct lws_protocol_vhost_options *next; /**< linked list */
+	const struct lws_protocol_vhost_options *options; /**< child linked-list of more options for this node */
+	const char *name; /**< name of name=value pair */
+	const char *value; /**< value of name=value pair */
+};
+
+/** enum lws_mount_protocols
+ * This specifies the mount protocol for a mountpoint, whether it is to be
+ * served from a filesystem, or it is a cgi etc.
+ */
+enum lws_mount_protocols {
+	LWSMPRO_HTTP		= 0, /**< not supported yet */
+	LWSMPRO_HTTPS		= 1, /**< not supported yet */
+	LWSMPRO_FILE		= 2, /**< serve from filesystem directory */
+	LWSMPRO_CGI		= 3, /**< pass to CGI to handle */
+	LWSMPRO_REDIR_HTTP	= 4, /**< redirect to http:// url */
+	LWSMPRO_REDIR_HTTPS	= 5, /**< redirect to https:// url */
+	LWSMPRO_CALLBACK	= 6, /**< hand by named protocol's callback */
+};
+
+/** struct lws_http_mount
+ *
+ * arguments for mounting something in a vhost's url namespace
+ */
+struct lws_http_mount {
+	const struct lws_http_mount *mount_next;
+	/**< pointer to next struct lws_http_mount */
+	const char *mountpoint;
+	/**< mountpoint in http pathspace, eg, "/" */
+	const char *origin;
+	/**< path to be mounted, eg, "/var/www/warmcat.com" */
+	const char *def;
+	/**< default target, eg, "index.html" */
+	const char *protocol;
+	/**<"protocol-name" to handle mount */
+
+	const struct lws_protocol_vhost_options *cgienv;
+	/**< optional linked-list of cgi options.  These are created
+	 * as environment variables for the cgi process
+	 */
+	const struct lws_protocol_vhost_options *extra_mimetypes;
+	/**< optional linked-list of mimetype mappings */
+	const struct lws_protocol_vhost_options *interpret;
+	/**< optional linked-list of files to be interpreted */
+
+	int cgi_timeout;
+	/**< seconds cgi is allowed to live, if cgi://mount type */
+	int cache_max_age;
+	/**< max-age for reuse of client cache of files, seconds */
+	unsigned int auth_mask;
+	/**< bits set here must be set for authorized client session */
+
+	unsigned int cache_reusable:1; /**< set if client cache may reuse this */
+	unsigned int cache_revalidate:1; /**< set if client cache should revalidate on use */
+	unsigned int cache_intermediaries:1; /**< set if intermediaries are allowed to cache */
+
+	unsigned char origin_protocol; /**< one of enum lws_mount_protocols */
+	unsigned char mountpoint_len; /**< length of mountpoint string */
+};
+///@}
+///@}
+
+/*! \defgroup client
+ * \ingroup lwsapi
+ *
+ * ##Client releated functions
+ * */
+///@{
+
+/** enum lws_client_connect_ssl_connection_flags - flags that may be used
+ * with struct lws_client_connect_info ssl_connection member to control if
+ * and how SSL checks apply to the client connection being created
+ */
+
+enum lws_client_connect_ssl_connection_flags {
+	LCCSCF_USE_SSL 				= (1 << 0),
+	LCCSCF_ALLOW_SELFSIGNED			= (1 << 1),
+	LCCSCF_SKIP_SERVER_CERT_HOSTNAME_CHECK	= (1 << 2)
+};
+
+/** struct lws_client_connect_info - parameters to connect with when using
+ *				    lws_client_connect_via_info() */
+
+struct lws_client_connect_info {
+	struct lws_context *context;
+	/**< lws context to create connection in */
+	const char *address;
+	/**< remote address to connect to */
+	int port;
+	/**< remote port to connect to */
+	int ssl_connection;
+	/**< nonzero for ssl */
+	const char *path;
+	/**< uri path */
+	const char *host;
+	/**< content of host header */
+	const char *origin;
+	/**< content of origin header */
+	const char *protocol;
+	/**< list of ws protocols we could accept */
+	int ietf_version_or_minus_one;
+	/**< deprecated: currently leave at 0 or -1 */
+	void *userdata;
+	/**< if non-NULL, use this as wsi user_data instead of malloc it */
+	const struct lws_extension *client_exts;
+	/**< array of extensions that may be used on connection */
+	const char *method;
+	/**< if non-NULL, do this http method instead of ws[s] upgrade.
+	 * use "GET" to be a simple http client connection */
+	struct lws *parent_wsi;
+	/**< if another wsi is responsible for this connection, give it here.
+	 * this is used to make sure if the parent closes so do any
+	 * child connections first. */
+	const char *uri_replace_from;
+	/**< if non-NULL, when this string is found in URIs in
+	 * text/html content-encoding, it's replaced with uri_replace_to */
+	const char *uri_replace_to;
+	/**< see uri_replace_from */
+	struct lws_vhost *vhost;
+	/**< vhost to bind to (used to determine related SSL_CTX) */
+	struct lws **pwsi;
+	/**< if not NULL, store the new wsi here early in the connection
+	 * process.  Although we return the new wsi, the call to create the
+	 * client connection does progress the connection somewhat and may
+	 * meet an error that will result in the connection being scrubbed and
+	 * NULL returned.  While the wsi exists though, he may process a
+	 * callback like CLIENT_CONNECTION_ERROR with his wsi: this gives the
+	 * user callback a way to identify which wsi it is that faced the error
+	 * even before the new wsi is returned and even if ultimately no wsi
+	 * is returned.
+	 */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility
+	 *
+	 * The below is to ensure later library versions with new
+	 * members added above will see 0 (default) even if the app
+	 * was not built against the newer headers.
+	 */
+
+	void *_unused[4]; /**< dummy */
+};
+
+/**
+ * lws_client_connect_via_info() - Connect to another websocket server
+ * \param ccinfo: pointer to lws_client_connect_info struct
+ *
+ *	This function creates a connection to a remote server using the
+ *	information provided in ccinfo.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws *
+lws_client_connect_via_info(struct lws_client_connect_info * ccinfo);
+
+/**
+ * lws_client_connect() - Connect to another websocket server
+ * 		\deprecated DEPRECATED use lws_client_connect_via_info
+ * \param clients:	Websocket context
+ * \param address:	Remote server address, eg, "myserver.com"
+ * \param port:	Port to connect to on the remote server, eg, 80
+ * \param ssl_connection:	0 = ws://, 1 = wss:// encrypted, 2 = wss:// allow self
+ *			signed certs
+ * \param path:	Websocket path on server
+ * \param host:	Hostname on server
+ * \param origin:	Socket origin name
+ * \param protocol:	Comma-separated list of protocols being asked for from
+ *		the server, or just one.  The server will pick the one it
+ *		likes best.  If you don't want to specify a protocol, which is
+ *		legal, use NULL here.
+ * \param ietf_version_or_minus_one: -1 to ask to connect using the default, latest
+ *		protocol supported, or the specific protocol ordinal
+ *
+ *	This function creates a connection to a remote server
+ */
+/* deprecated, use lws_client_connect_via_info() */
+LWS_VISIBLE LWS_EXTERN struct lws * LWS_WARN_UNUSED_RESULT
+lws_client_connect(struct lws_context *clients, const char *address,
+		   int port, int ssl_connection, const char *path,
+		   const char *host, const char *origin, const char *protocol,
+		   int ietf_version_or_minus_one) LWS_WARN_DEPRECATED;
+/* deprecated, use lws_client_connect_via_info() */
+/**
+ * lws_client_connect_extended() - Connect to another websocket server
+ * 			\deprecated DEPRECATED use lws_client_connect_via_info
+ * \param clients:	Websocket context
+ * \param address:	Remote server address, eg, "myserver.com"
+ * \param port:	Port to connect to on the remote server, eg, 80
+ * \param ssl_connection:	0 = ws://, 1 = wss:// encrypted, 2 = wss:// allow self
+ *			signed certs
+ * \param path:	Websocket path on server
+ * \param host:	Hostname on server
+ * \param origin:	Socket origin name
+ * \param protocol:	Comma-separated list of protocols being asked for from
+ *		the server, or just one.  The server will pick the one it
+ *		likes best.
+ * \param ietf_version_or_minus_one: -1 to ask to connect using the default, latest
+ *		protocol supported, or the specific protocol ordinal
+ * \param userdata: Pre-allocated user data
+ *
+ *	This function creates a connection to a remote server
+ */
+LWS_VISIBLE LWS_EXTERN struct lws * LWS_WARN_UNUSED_RESULT
+lws_client_connect_extended(struct lws_context *clients, const char *address,
+			    int port, int ssl_connection, const char *path,
+			    const char *host, const char *origin,
+			    const char *protocol, int ietf_version_or_minus_one,
+			    void *userdata) LWS_WARN_DEPRECATED;
+
+/**
+ * lws_init_vhost_client_ssl() - also enable client SSL on an existing vhost
+ *
+ * \param info: client ssl related info
+ * \param vhost: which vhost to initialize client ssl operations on
+ *
+ * You only need to call this if you plan on using SSL client connections on
+ * the vhost.  For non-SSL client connections, it's not necessary to call this.
+ *
+ * The following members of info are used during the call
+ *
+ *	 - options must have LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT set,
+ *	     otherwise the call does nothing
+ *	 - provided_client_ssl_ctx must be NULL to get a generated client
+ *	     ssl context, otherwise you can pass a prepared one in by setting it
+ *	 - ssl_cipher_list may be NULL or set to the client valid cipher list
+ *	 - ssl_ca_filepath may be NULL or client cert filepath
+ *	 - ssl_cert_filepath may be NULL or client cert filepath
+ *	 - ssl_private_key_filepath may be NULL or client cert private key
+ *
+ * You must create your vhost explicitly if you want to use this, so you have
+ * a pointer to the vhost.  Create the context first with the option flag
+ * LWS_SERVER_OPTION_EXPLICIT_VHOSTS and then call lws_create_vhost() with
+ * the same info struct.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_init_vhost_client_ssl(const struct lws_context_creation_info *info,
+			  struct lws_vhost *vhost);
+
+LWS_VISIBLE LWS_EXTERN int
+lws_http_client_read(struct lws *wsi, char **buf, int *len);
+
+LWS_VISIBLE LWS_EXTERN void
+lws_client_http_body_pending(struct lws *wsi, int something_left_to_send);
+
+/**
+ * lws_client_http_body_pending() - control if client connection neeeds to send body
+ *
+ * \param wsi: client connection
+ * \param something_left_to_send: nonzero if need to send more body, 0 (default)
+ * 				if nothing more to send
+ *
+ * If you will send payload data with your HTTP client connection, eg, for POST,
+ * when you set the related http headers in
+ * LWS_CALLBACK_CLIENT_APPEND_HANDSHAKE_HEADER callback you should also call
+ * this API with something_left_to_send nonzero, and call
+ * lws_callback_on_writable(wsi);
+ *
+ * After sending the headers, lws will call your callback with
+ * LWS_CALLBACK_CLIENT_HTTP_WRITEABLE reason when writable.  You can send the
+ * next part of the http body payload, calling lws_callback_on_writable(wsi);
+ * if there is more to come, or lws_client_http_body_pending(wsi, 0); to
+ * let lws know the last part is sent and the connection can move on.
+ */
+
+///@}
+
+/** \defgroup service Built-in service loop entry
+ *
+ * ##Built-in service loop entry
+ *
+ * If you're not using libev / libuv, these apis are needed to enter the poll()
+ * wait in lws and service any connections with pending events.
+ */
+///@{
+
+/**
+ * lws_service() - Service any pending websocket activity
+ * \param context:	Websocket context
+ * \param timeout_ms:	Timeout for poll; 0 means return immediately if nothing needed
+ *		service otherwise block and service immediately, returning
+ *		after the timeout if nothing needed service.
+ *
+ *	This function deals with any pending websocket traffic, for three
+ *	kinds of event.  It handles these events on both server and client
+ *	types of connection the same.
+ *
+ *	1) Accept new connections to our context's server
+ *
+ *	2) Call the receive callback for incoming frame data received by
+ *	    server or client connections.
+ *
+ *	You need to call this service function periodically to all the above
+ *	functions to happen; if your application is single-threaded you can
+ *	just call it in your main event loop.
+ *
+ *	Alternatively you can fork a new process that asynchronously handles
+ *	calling this service in a loop.  In that case you are happy if this
+ *	call blocks your thread until it needs to take care of something and
+ *	would call it with a large nonzero timeout.  Your loop then takes no
+ *	CPU while there is nothing happening.
+ *
+ *	If you are calling it in a single-threaded app, you don't want it to
+ *	wait around blocking other things in your loop from happening, so you
+ *	would call it with a timeout_ms of 0, so it returns immediately if
+ *	nothing is pending, or as soon as it services whatever was pending.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_service(struct lws_context *context, int timeout_ms);
+
+/**
+ * lws_service() - Service any pending websocket activity
+ *
+ * \param context:	Websocket context
+ * \param timeout_ms:	Timeout for poll; 0 means return immediately if nothing needed
+ *		service otherwise block and service immediately, returning
+ *		after the timeout if nothing needed service.
+ *
+ * Same as lws_service(), but for a specific thread service index.  Only needed
+ * if you are spawning multiple service threads.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_service_tsi(struct lws_context *context, int timeout_ms, int tsi);
+
+/**
+ * lws_cancel_service_pt() - Cancel servicing of pending socket activity
+ *				on one thread
+ * \param wsi:	Cancel service on the thread this wsi is serviced by
+ *
+ *	This function lets a call to lws_service() waiting for a timeout
+ *	immediately return.
+ *
+ *	It works by creating a phony event and then swallowing it silently.
+ *
+ *	The reason it may be needed is when waiting in poll(), changes to
+ *	the event masks are ignored by the OS until poll() is reentered.  This
+ *	lets you halt the poll() wait and make the reentry happen immediately
+ *	instead of having the wait out the rest of the poll timeout.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_cancel_service_pt(struct lws *wsi);
+
+/**
+ * lws_cancel_service() - Cancel wait for new pending socket activity
+ * \param context:	Websocket context
+ *
+ *	This function let a call to lws_service() waiting for a timeout
+ *	immediately return.
+ *
+ *	What it basically does is provide a fake event that will be swallowed,
+ *	so the wait in poll() is ended.  That's useful because poll() doesn't
+ *	attend to changes in POLLIN/OUT/ERR until it re-enters the wait.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_cancel_service(struct lws_context *context);
+
+/**
+ * lws_service_fd() - Service polled socket with something waiting
+ * \param context:	Websocket context
+ * \param pollfd:	The pollfd entry describing the socket fd and which events
+ *		happened, or NULL to tell lws to do only timeout servicing.
+ *
+ * This function takes a pollfd that has POLLIN or POLLOUT activity and
+ * services it according to the state of the associated
+ * struct lws.
+ *
+ * The one call deals with all "service" that might happen on a socket
+ * including listen accepts, http files as well as websocket protocol.
+ *
+ * If a pollfd says it has something, you can just pass it to
+ * lws_service_fd() whether it is a socket handled by lws or not.
+ * If it sees it is a lws socket, the traffic will be handled and
+ * pollfd->revents will be zeroed now.
+ *
+ * If the socket is foreign to lws, it leaves revents alone.  So you can
+ * see if you should service yourself by checking the pollfd revents
+ * after letting lws try to service it.
+ *
+ * You should also call this with pollfd = NULL to just allow the
+ * once-per-second global timeout checks; if less than a second since the last
+ * check it returns immediately then.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_service_fd(struct lws_context *context, struct lws_pollfd *pollfd);
+
+/**
+ * lws_service_fd_tsi() - Service polled socket in specific service thread
+ * \param context:	Websocket context
+ * \param pollfd:	The pollfd entry describing the socket fd and which events
+ *		happened.
+ * \param tsi: thread service index
+ *
+ * Same as lws_service_fd() but used with multiple service threads
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_service_fd_tsi(struct lws_context *context, struct lws_pollfd *pollfd,
+		   int tsi);
+
+/**
+ * lws_service_adjust_timeout() - Check for any connection needing forced service
+ * \param context:	Websocket context
+ * \param timeout_ms:	The original poll timeout value.  You can just set this
+ *			to 1 if you don't really have a poll timeout.
+ * \param tsi: thread service index
+ *
+ * Under some conditions connections may need service even though there is no
+ * pending network action on them, this is "forced service".  For default
+ * poll() and libuv / libev, the library takes care of calling this and
+ * dealing with it for you.  But for external poll() integration, you need
+ * access to the apis.
+ *
+ * If anybody needs "forced service", returned timeout is zero.  In that case,
+ * you can call lws_plat_service_tsi() with a timeout of -1 to only service
+ * guys who need forced service.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_service_adjust_timeout(struct lws_context *context, int timeout_ms, int tsi);
+
+/**
+ * lws_plat_service_tsi() - Lowlevel platform-specific service api
+ * \param context:	Websocket context
+ * \param timeout_ms:	The original poll timeout value.  You can just set this
+ *			to 1 if you don't really have a poll timeout.
+ * \param tsi: thread service index
+ *
+ * For default poll() and libuv/ev, lws takes care of using this for you. and
+ * you can ignore it.
+ *
+ * But for external poll() integration, you need access to this api to service
+ * connections that need to be serviced but have no pending network activity.
+ *
+ * See lws_service_adjust_timeout() for more info.
+ */
+LWS_EXTERN LWS_VISIBLE int
+lws_plat_service_tsi(struct lws_context *context, int timeout_ms, int tsi);
+
+///@}
+
+/*! \defgroup http HTTP
+
+    Modules related to handling HTTP
+*/
+//@{
+
+/*! \defgroup httpft HTTP File transfer
+ * \ingroup http
+
+    APIs for sending local files in response to HTTP requests
+*/
+//@{
+
+/**
+ * lws_get_mimetype() - Determine mimetype to use from filename
+ *
+ * \param file:		filename
+ * \param m:		NULL, or mount context
+ *
+ * This uses a canned list of known filetypes first, if no match and m is
+ * non-NULL, then tries a list of per-mount file suffix to mimtype mappings.
+ *
+ * Returns either NULL or a pointer to the mimetype matching the file.
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_get_mimetype(const char *file, const struct lws_http_mount *m);
+
+/**
+ * lws_serve_http_file() - Send a file back to the client using http
+ * \param wsi:		Websocket instance (available from user callback)
+ * \param file:		The file to issue over http
+ * \param content_type:	The http content type, eg, text/html
+ * \param other_headers:	NULL or pointer to header string
+ * \param other_headers_len:	length of the other headers if non-NULL
+ *
+ *	This function is intended to be called from the callback in response
+ *	to http requests from the client.  It allows the callback to issue
+ *	local files down the http link in a single step.
+ *
+ *	Returning <0 indicates error and the wsi should be closed.  Returning
+ *	>0 indicates the file was completely sent and
+ *	lws_http_transaction_completed() called on the wsi (and close if != 0)
+ *	==0 indicates the file transfer is started and needs more service later,
+ *	the wsi should be left alone.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_serve_http_file(struct lws *wsi, const char *file, const char *content_type,
+		    const char *other_headers, int other_headers_len);
+LWS_VISIBLE LWS_EXTERN int
+lws_serve_http_file_fragment(struct lws *wsi);
+//@}
+
+/*! \defgroup html-chunked-substitution HTML Chunked Substitution
+ * \ingroup http
+ *
+ * ##HTML chunked Substitution
+ *
+ * APIs for receiving chunks of text, replacing a set of variable names via
+ * a callback, and then prepending and appending HTML chunked encoding
+ * headers.
+ */
+//@{
+
+enum http_status {
+	HTTP_STATUS_OK						= 200,
+	HTTP_STATUS_NO_CONTENT					= 204,
+
+	HTTP_STATUS_MOVED_PERMANENTLY				= 301,
+	HTTP_STATUS_FOUND					= 302,
+	HTTP_STATUS_SEE_OTHER					= 303,
+
+	HTTP_STATUS_BAD_REQUEST					= 400,
+	HTTP_STATUS_UNAUTHORIZED,
+	HTTP_STATUS_PAYMENT_REQUIRED,
+	HTTP_STATUS_FORBIDDEN,
+	HTTP_STATUS_NOT_FOUND,
+	HTTP_STATUS_METHOD_NOT_ALLOWED,
+	HTTP_STATUS_NOT_ACCEPTABLE,
+	HTTP_STATUS_PROXY_AUTH_REQUIRED,
+	HTTP_STATUS_REQUEST_TIMEOUT,
+	HTTP_STATUS_CONFLICT,
+	HTTP_STATUS_GONE,
+	HTTP_STATUS_LENGTH_REQUIRED,
+	HTTP_STATUS_PRECONDITION_FAILED,
+	HTTP_STATUS_REQ_ENTITY_TOO_LARGE,
+	HTTP_STATUS_REQ_URI_TOO_LONG,
+	HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE,
+	HTTP_STATUS_REQ_RANGE_NOT_SATISFIABLE,
+	HTTP_STATUS_EXPECTATION_FAILED,
+
+	HTTP_STATUS_INTERNAL_SERVER_ERROR			= 500,
+	HTTP_STATUS_NOT_IMPLEMENTED,
+	HTTP_STATUS_BAD_GATEWAY,
+	HTTP_STATUS_SERVICE_UNAVAILABLE,
+	HTTP_STATUS_GATEWAY_TIMEOUT,
+	HTTP_STATUS_HTTP_VERSION_NOT_SUPPORTED,
+};
+
+struct lws_process_html_args {
+	char *p; /**< pointer to the buffer containing the data */
+	int len; /**< length of the original data at p */
+	int max_len; /**< maximum length we can grow the data to */
+	int final; /**< set if this is the last chunk of the file */
+};
+
+typedef const char *(*lws_process_html_state_cb)(void *data, int index);
+
+struct lws_process_html_state {
+	char *start; /**< pointer to start of match */
+	char swallow[16]; /**< matched character buffer */
+	int pos; /**< position in match */
+	void *data; /**< opaque pointer */
+	const char * const *vars; /**< list of variable names */
+	int count_vars; /**< count of variable names */
+
+	lws_process_html_state_cb replace; /**< called on match to perform substitution */
+};
+
+/*! lws_chunked_html_process() - generic chunked substitution
+ * \param args: buffer to process using chunked encoding
+ * \param s: current processing state
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_chunked_html_process(struct lws_process_html_args *args,
+			 struct lws_process_html_state *s);
+//@}
+
+/** \defgroup HTTP-headers-read HTTP headers: read
+ * \ingroup http
+ *
+ * ##HTTP header releated functions
+ *
+ *  In lws the client http headers are temporarily stored in a pool, only for the
+ *  duration of the http part of the handshake.  It's because in most cases,
+ *  the header content is ignored for the whole rest of the connection lifetime
+ *  and would then just be taking up space needlessly.
+ *
+ *  During LWS_CALLBACK_HTTP when the URI path is delivered is the last time
+ *  the http headers are still allocated, you can use these apis then to
+ *  look at and copy out interesting header content (cookies, etc)
+ *
+ *  Notice that the header total length reported does not include a terminating
+ *  '\0', however you must allocate for it when using the _copy apis.  So the
+ *  length reported for a header containing "123" is 3, but you must provide
+ *  a buffer of length 4 so that "123\0" may be copied into it, or the copy
+ *  will fail with a nonzero return code.
+ *
+ *  In the special case of URL arguments, like ?x=1&y=2, the arguments are
+ *  stored in a token named for the method, eg,  WSI_TOKEN_GET_URI if it
+ *  was a GET or WSI_TOKEN_POST_URI if POST.  You can check the total
+ *  length to confirm the method.
+ *
+ *  For URL arguments, each argument is stored urldecoded in a "fragment", so
+ *  you can use the fragment-aware api lws_hdr_copy_fragment() to access each
+ *  argument in turn: the fragments contain urldecoded strings like x=1 or y=2.
+ *
+ *  As a convenience, lws has an api that will find the fragment with a
+ *  given name= part, lws_get_urlarg_by_name().
+ */
+///@{
+
+/** struct lws_tokens
+ * you need these to look at headers that have been parsed if using the
+ * LWS_CALLBACK_FILTER_CONNECTION callback.  If a header from the enum
+ * list below is absent, .token = NULL and token_len = 0.  Otherwise .token
+ * points to .token_len chars containing that header content.
+ */
+struct lws_tokens {
+	char *token; /**< pointer to start of the token */
+	int token_len; /**< length of the token's value */
+};
+
+/* enum lws_token_indexes
+ * these have to be kept in sync with lextable.h / minilex.c
+ *
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+enum lws_token_indexes {
+	WSI_TOKEN_GET_URI					=  0,
+	WSI_TOKEN_POST_URI					=  1,
+	WSI_TOKEN_OPTIONS_URI					=  2,
+	WSI_TOKEN_HOST						=  3,
+	WSI_TOKEN_CONNECTION					=  4,
+	WSI_TOKEN_UPGRADE					=  5,
+	WSI_TOKEN_ORIGIN					=  6,
+	WSI_TOKEN_DRAFT						=  7,
+	WSI_TOKEN_CHALLENGE					=  8,
+	WSI_TOKEN_EXTENSIONS					=  9,
+	WSI_TOKEN_KEY1						= 10,
+	WSI_TOKEN_KEY2						= 11,
+	WSI_TOKEN_PROTOCOL					= 12,
+	WSI_TOKEN_ACCEPT					= 13,
+	WSI_TOKEN_NONCE						= 14,
+	WSI_TOKEN_HTTP						= 15,
+	WSI_TOKEN_HTTP2_SETTINGS				= 16,
+	WSI_TOKEN_HTTP_ACCEPT					= 17,
+	WSI_TOKEN_HTTP_AC_REQUEST_HEADERS			= 18,
+	WSI_TOKEN_HTTP_IF_MODIFIED_SINCE			= 19,
+	WSI_TOKEN_HTTP_IF_NONE_MATCH				= 20,
+	WSI_TOKEN_HTTP_ACCEPT_ENCODING				= 21,
+	WSI_TOKEN_HTTP_ACCEPT_LANGUAGE				= 22,
+	WSI_TOKEN_HTTP_PRAGMA					= 23,
+	WSI_TOKEN_HTTP_CACHE_CONTROL				= 24,
+	WSI_TOKEN_HTTP_AUTHORIZATION				= 25,
+	WSI_TOKEN_HTTP_COOKIE					= 26,
+	WSI_TOKEN_HTTP_CONTENT_LENGTH				= 27,
+	WSI_TOKEN_HTTP_CONTENT_TYPE				= 28,
+	WSI_TOKEN_HTTP_DATE					= 29,
+	WSI_TOKEN_HTTP_RANGE					= 30,
+	WSI_TOKEN_HTTP_REFERER					= 31,
+	WSI_TOKEN_KEY						= 32,
+	WSI_TOKEN_VERSION					= 33,
+	WSI_TOKEN_SWORIGIN					= 34,
+
+	WSI_TOKEN_HTTP_COLON_AUTHORITY				= 35,
+	WSI_TOKEN_HTTP_COLON_METHOD				= 36,
+	WSI_TOKEN_HTTP_COLON_PATH				= 37,
+	WSI_TOKEN_HTTP_COLON_SCHEME				= 38,
+	WSI_TOKEN_HTTP_COLON_STATUS				= 39,
+
+	WSI_TOKEN_HTTP_ACCEPT_CHARSET				= 40,
+	WSI_TOKEN_HTTP_ACCEPT_RANGES				= 41,
+	WSI_TOKEN_HTTP_ACCESS_CONTROL_ALLOW_ORIGIN		= 42,
+	WSI_TOKEN_HTTP_AGE					= 43,
+	WSI_TOKEN_HTTP_ALLOW					= 44,
+	WSI_TOKEN_HTTP_CONTENT_DISPOSITION			= 45,
+	WSI_TOKEN_HTTP_CONTENT_ENCODING				= 46,
+	WSI_TOKEN_HTTP_CONTENT_LANGUAGE				= 47,
+	WSI_TOKEN_HTTP_CONTENT_LOCATION				= 48,
+	WSI_TOKEN_HTTP_CONTENT_RANGE				= 49,
+	WSI_TOKEN_HTTP_ETAG					= 50,
+	WSI_TOKEN_HTTP_EXPECT					= 51,
+	WSI_TOKEN_HTTP_EXPIRES					= 52,
+	WSI_TOKEN_HTTP_FROM					= 53,
+	WSI_TOKEN_HTTP_IF_MATCH					= 54,
+	WSI_TOKEN_HTTP_IF_RANGE					= 55,
+	WSI_TOKEN_HTTP_IF_UNMODIFIED_SINCE			= 56,
+	WSI_TOKEN_HTTP_LAST_MODIFIED				= 57,
+	WSI_TOKEN_HTTP_LINK					= 58,
+	WSI_TOKEN_HTTP_LOCATION					= 59,
+	WSI_TOKEN_HTTP_MAX_FORWARDS				= 60,
+	WSI_TOKEN_HTTP_PROXY_AUTHENTICATE			= 61,
+	WSI_TOKEN_HTTP_PROXY_AUTHORIZATION			= 62,
+	WSI_TOKEN_HTTP_REFRESH					= 63,
+	WSI_TOKEN_HTTP_RETRY_AFTER				= 64,
+	WSI_TOKEN_HTTP_SERVER					= 65,
+	WSI_TOKEN_HTTP_SET_COOKIE				= 66,
+	WSI_TOKEN_HTTP_STRICT_TRANSPORT_SECURITY		= 67,
+	WSI_TOKEN_HTTP_TRANSFER_ENCODING			= 68,
+	WSI_TOKEN_HTTP_USER_AGENT				= 69,
+	WSI_TOKEN_HTTP_VARY					= 70,
+	WSI_TOKEN_HTTP_VIA					= 71,
+	WSI_TOKEN_HTTP_WWW_AUTHENTICATE				= 72,
+
+	WSI_TOKEN_PATCH_URI					= 73,
+	WSI_TOKEN_PUT_URI					= 74,
+	WSI_TOKEN_DELETE_URI					= 75,
+
+	WSI_TOKEN_HTTP_URI_ARGS					= 76,
+	WSI_TOKEN_PROXY						= 77,
+	WSI_TOKEN_HTTP_X_REAL_IP				= 78,
+	WSI_TOKEN_HTTP1_0					= 79,
+
+	/****** add new things just above ---^ ******/
+
+	/* use token storage to stash these internally, not for
+	 * user use */
+
+	_WSI_TOKEN_CLIENT_SENT_PROTOCOLS,
+	_WSI_TOKEN_CLIENT_PEER_ADDRESS,
+	_WSI_TOKEN_CLIENT_URI,
+	_WSI_TOKEN_CLIENT_HOST,
+	_WSI_TOKEN_CLIENT_ORIGIN,
+	_WSI_TOKEN_CLIENT_METHOD,
+
+	/* always last real token index*/
+	WSI_TOKEN_COUNT,
+
+	/* parser state additions, no storage associated */
+	WSI_TOKEN_NAME_PART,
+	WSI_TOKEN_SKIPPING,
+	WSI_TOKEN_SKIPPING_SAW_CR,
+	WSI_PARSING_COMPLETE,
+	WSI_INIT_TOKEN_MUXURL,
+};
+
+struct lws_token_limits {
+	unsigned short token_limit[WSI_TOKEN_COUNT]; /**< max chars for this token */
+};
+
+/**
+ * lws_token_to_string() - returns a textual representation of a hdr token index
+ *
+ * \param: token index
+ */
+LWS_VISIBLE LWS_EXTERN const unsigned char *
+lws_token_to_string(enum lws_token_indexes token);
+
+
+/**
+ * lws_hdr_total_length: report length of all fragments of a header totalled up
+ *		The returned length does not include the space for a
+ *		terminating '\0'
+ *
+ * \param wsi: websocket connection
+ * \param h: which header index we are interested in
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_hdr_total_length(struct lws *wsi, enum lws_token_indexes h);
+
+/**
+ * lws_hdr_fragment_length: report length of a single fragment of a header
+ *		The returned length does not include the space for a
+ *		terminating '\0'
+ *
+ * \param wsi: websocket connection
+ * \param h: which header index we are interested in
+ * \param frag_idx: which fragment of h we want to get the length of
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_hdr_fragment_length(struct lws *wsi, enum lws_token_indexes h, int frag_idx);
+
+/**
+ * lws_hdr_copy() - copy a single fragment of the given header to a buffer
+ *		The buffer length len must include space for an additional
+ *		terminating '\0', or it will fail returning -1.
+ *
+ * \param wsi: websocket connection
+ * \param dest: destination buffer
+ * \param len: length of destination buffer
+ * \param h: which header index we are interested in
+ *
+ * copies the whole, aggregated header, even if it was delivered in
+ * several actual headers piece by piece
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_hdr_copy(struct lws *wsi, char *dest, int len, enum lws_token_indexes h);
+
+/**
+ * lws_hdr_copy_fragment() - copy a single fragment of the given header to a buffer
+ *		The buffer length len must include space for an additional
+ *		terminating '\0', or it will fail returning -1.
+ *		If the requested fragment index is not present, it fails
+ *		returning -1.
+ *
+ * \param wsi: websocket connection
+ * \param dest: destination buffer
+ * \param len: length of destination buffer
+ * \param h: which header index we are interested in
+ * \param frag_idx: which fragment of h we want to copy
+ *
+ * Normally this is only useful
+ * to parse URI arguments like ?x=1&y=2, token index WSI_TOKEN_HTTP_URI_ARGS
+ * fragment 0 will contain "x=1" and fragment 1 "y=2"
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_hdr_copy_fragment(struct lws *wsi, char *dest, int len,
+		      enum lws_token_indexes h, int frag_idx);
+
+/**
+ * lws_get_urlarg_by_name() - return pointer to arg value if present
+ * \param wsi: the connection to check
+ * \param name: the arg name, like "token="
+ * \param buf: the buffer to receive the urlarg (including the name= part)
+ * \param len: the length of the buffer to receive the urlarg
+ *
+ *     Returns NULL if not found or a pointer inside buf to just after the
+ *     name= part.
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_get_urlarg_by_name(struct lws *wsi, const char *name, char *buf, int len);
+///@}
+
+/*! \defgroup HTTP-headers-create HTTP headers: create
+ *
+ * ## HTTP headers: Create
+ *
+ * These apis allow you to create HTTP response headers in a way compatible with
+ * both HTTP/1.x and HTTP/2.
+ *
+ * They each append to a buffer taking care about the buffer end, which is
+ * passed in as a pointer.  When data is written to the buffer, the current
+ * position p is updated accordingly.
+ *
+ * All of these apis are LWS_WARN_UNUSED_RESULT as they can run out of space
+ * and fail with nonzero return.
+ */
+///@{
+/**
+ * lws_add_http_header_status() - add the HTTP response status code
+ *
+ * \param wsi: the connection to check
+ * \param code: an HTTP code like 200, 404 etc (see enum http_status)
+ * \param p: pointer to current position in buffer pointer
+ * \param end: pointer to end of buffer
+ *
+ * Adds the initial response code, so should be called first
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_add_http_header_status(struct lws *wsi,
+			   unsigned int code, unsigned char **p,
+			   unsigned char *end);
+/**
+ * lws_add_http_header_by_name() - append named header and value
+ *
+ * \param wsi: the connection to check
+ * \param name: the hdr name, like "my-header"
+ * \param value: the value after the = for this header
+ * \param length: the length of the value
+ * \param p: pointer to current position in buffer pointer
+ * \param end: pointer to end of buffer
+ *
+ * Appends name: value to the headers
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_add_http_header_by_name(struct lws *wsi, const unsigned char *name,
+			    const unsigned char *value, int length,
+			    unsigned char **p, unsigned char *end);
+/**
+ * lws_add_http_header_by_token() - append given header and value
+ *
+ * \param wsi: the connection to check
+ * \param token: the token index for the hdr
+ * \param value: the value after the = for this header
+ * \param length: the length of the value
+ * \param p: pointer to current position in buffer pointer
+ * \param end: pointer to end of buffer
+ *
+ * Appends name=value to the headers, but is able to take advantage of better
+ * HTTP/2 coding mechanisms where possible.
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_add_http_header_by_token(struct lws *wsi, enum lws_token_indexes token,
+			     const unsigned char *value, int length,
+			     unsigned char **p, unsigned char *end);
+/**
+ * lws_add_http_header_by_name() - append content-length helper
+ *
+ * \param wsi: the connection to check
+ * \param content_length: the content length to use
+ * \param p: pointer to current position in buffer pointer
+ * \param end: pointer to end of buffer
+ *
+ * Appends content-length: content_length to the headers
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_add_http_header_content_length(struct lws *wsi,
+				   unsigned long content_length,
+				   unsigned char **p, unsigned char *end);
+/**
+ * lws_finalize_http_header() - terminate header block
+ *
+ * \param wsi: the connection to check
+ * \param p: pointer to current position in buffer pointer
+ * \param end: pointer to end of buffer
+ *
+ * Indicates no more headers will be added
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_finalize_http_header(struct lws *wsi, unsigned char **p,
+			 unsigned char *end);
+///@}
+
+/** \defgroup form-parsing  Form Parsing
+ * \ingroup http
+ * ##POSTed form parsing functions
+ *
+ * These lws_spa (stateful post arguments) apis let you parse and urldecode
+ * POSTed form arguments, both using simple urlencoded and multipart transfer
+ * encoding.
+ *
+ * It's capable of handling file uploads as well a named input parsing,
+ * and the apis are the same for both form upload styles.
+ *
+ * You feed it a list of parameter names and it creates pointers to the
+ * urldecoded arguments: file upload parameters pass the file data in chunks to
+ * a user-supplied callback as they come.
+ *
+ * Since it's stateful, it handles the incoming data needing more than one
+ * POST_BODY callback and has no limit on uploaded file size.
+ */
+///@{
+
+/** enum lws_spa_fileupload_states */
+enum lws_spa_fileupload_states {
+	LWS_UFS_CONTENT,
+	/**< a chunk of file content has arrived */
+	LWS_UFS_FINAL_CONTENT,
+	/**< the last chunk (possibly zero length) of file content has arrived */
+	LWS_UFS_OPEN
+	/**< a new file is starting to arrive */
+};
+
+/**
+ * lws_spa_fileupload_cb() - callback to receive file upload data
+ *
+ * \param data: opt_data pointer set in lws_spa_create
+ * \param name: name of the form field being uploaded
+ * \param filename: original filename from client
+ * \param buf: start of data to receive
+ * \param len: length of data to receive
+ * \param state: information about how this call relates to file
+ *
+ * Notice name and filename shouldn't be trusted, as they are passed from
+ * HTTP provided by the client.
+ */
+typedef int (*lws_spa_fileupload_cb)(void *data, const char *name,
+			const char *filename, char *buf, int len,
+			enum lws_spa_fileupload_states state);
+
+/** struct lws_spa - opaque urldecode parser capable of handling multipart
+ *			and file uploads */
+struct lws_spa;
+
+/**
+ * lws_spa_create() - create urldecode parser
+ *
+ * \param wsi: lws connection (used to find Content Type)
+ * \param param_names: array of form parameter names, like "username"
+ * \param count_params: count of param_names
+ * \param max_storage: total amount of form parameter values we can store
+ * \param opt_cb: NULL, or callback to receive file upload data.
+ * \param opt_data: NULL, or user pointer provided to opt_cb.
+ *
+ * Creates a urldecode parser and initializes it.
+ *
+ * opt_cb can be NULL if you just want normal name=value parsing, however
+ * if one or more entries in your form are bulk data (file transfer), you
+ * can provide this callback and filter on the name callback parameter to
+ * treat that urldecoded data separately.  The callback should return -1
+ * in case of fatal error, and 0 if OK.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws_spa *
+lws_spa_create(struct lws *wsi, const char * const *param_names,
+	       int count_params, int max_storage, lws_spa_fileupload_cb opt_cb,
+	       void *opt_data);
+
+/**
+ * lws_spa_process() - parses a chunk of input data
+ *
+ * \param spa: the parser object previously created
+ * \param in: incoming, urlencoded data
+ * \param len: count of bytes valid at \param in
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_spa_process(struct lws_spa *spa, const char *in, int len);
+
+/**
+ * lws_spa_finalize() - indicate incoming data completed
+ *
+ * \param spa: the parser object previously created
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_spa_finalize(struct lws_spa *spa);
+
+/**
+ * lws_spa_get_length() - return length of parameter value
+ *
+ * \param spa: the parser object previously created
+ * \param n: parameter ordinal to return length of value for
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_spa_get_length(struct lws_spa *spa, int n);
+
+/**
+ * lws_spa_get_string() - return pointer to parameter value
+ * \param spa: the parser object previously created
+ * \param n: parameter ordinal to return pointer to value for
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_spa_get_string(struct lws_spa *spa, int n);
+
+/**
+ * lws_spa_destroy() - destroy parser object
+ *
+ * \param spa: the parser object previously created
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_spa_destroy(struct lws_spa *spa);
+///@}
+
+/*! \defgroup urlendec Urlencode and Urldecode
+ * \ingroup http
+ *
+ * ##HTML chunked Substitution
+ *
+ * APIs for receiving chunks of text, replacing a set of variable names via
+ * a callback, and then prepending and appending HTML chunked encoding
+ * headers.
+ */
+//@{
+
+/**
+ * lws_urlencode() - like strncpy but with urlencoding
+ *
+ * \param escaped: output buffer
+ * \param string: input buffer ('/0' terminated)
+ * \param len: output buffer max length
+ *
+ * Because urlencoding expands the output string, it's not
+ * possible to do it in-place, ie, with escaped == string
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_urlencode(char *escaped, const char *string, int len);
+
+/*
+ * URLDECODE 1 / 2
+ *
+ * This simple urldecode only operates until the first '\0' and requires the
+ * data to exist all at once
+ */
+/**
+ * lws_urldecode() - like strncpy but with urldecoding
+ *
+ * \param string: output buffer
+ * \param escaped: input buffer ('\0' terminated)
+ * \param len: output buffer max length
+ *
+ * This is only useful for '\0' terminated strings
+ *
+ * Since urldecoding only shrinks the output string, it is possible to
+ * do it in-place, ie, string == escaped
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_urldecode(char *string, const char *escaped, int len);
+///@}
+/**
+ * lws_return_http_status() - Return simple http status
+ * \param wsi:		Websocket instance (available from user callback)
+ * \param code:		Status index, eg, 404
+ * \param html_body:		User-readable HTML description < 1KB, or NULL
+ *
+ *	Helper to report HTTP errors back to the client cleanly and
+ *	consistently
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_return_http_status(struct lws *wsi, unsigned int code,
+		       const char *html_body);
+
+/**
+ * lws_http_redirect() - write http redirect into buffer
+ *
+ * \param wsi:	websocket connection
+ * \param code:	HTTP response code (eg, 301)
+ * \param loc:	where to redirect to
+ * \param len:	length of loc
+ * \param p:	pointer current position in buffer (updated as we write)
+ * \param end:	pointer to end of buffer
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_http_redirect(struct lws *wsi, int code, const unsigned char *loc, int len,
+		  unsigned char **p, unsigned char *end);
+
+/**
+ * lws_http_transaction_completed() - wait for new http transaction or close
+ * \param wsi:	websocket connection
+ *
+ *	Returns 1 if the HTTP connection must close now
+ *	Returns 0 and resets connection to wait for new HTTP header /
+ *	  transaction if possible
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_http_transaction_completed(struct lws *wsi);
+///@}
+
+/*! \defgroup pur Sanitize / purify SQL and JSON helpers
+ *
+ * ##Sanitize / purify SQL and JSON helpers
+ *
+ * APIs for escaping untrusted JSON and SQL safely before use
+ */
+//@{
+
+/**
+ * lws_sql_purify() - like strncpy but with escaping for sql quotes
+ *
+ * \param escaped: output buffer
+ * \param string: input buffer ('/0' terminated)
+ * \param len: output buffer max length
+ *
+ * Because escaping expands the output string, it's not
+ * possible to do it in-place, ie, with escaped == string
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_sql_purify(char *escaped, const char *string, int len);
+
+/**
+ * lws_json_purify() - like strncpy but with escaping for json chars
+ *
+ * \param escaped: output buffer
+ * \param string: input buffer ('/0' terminated)
+ * \param len: output buffer max length
+ *
+ * Because escaping expands the output string, it's not
+ * possible to do it in-place, ie, with escaped == string
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_json_purify(char *escaped, const char *string, int len);
+///@}
+
+/*! \defgroup ev libev helpers
+ *
+ * ##libev helpers
+ *
+ * APIs specific to libev event loop itegration
+ */
+///@{
+
+#ifdef LWS_USE_LIBEV
+typedef void (lws_ev_signal_cb_t)(EV_P_ struct ev_signal *w, int revents);
+
+LWS_VISIBLE LWS_EXTERN int
+lws_ev_sigint_cfg(struct lws_context *context, int use_ev_sigint,
+		  lws_ev_signal_cb_t *cb);
+
+LWS_VISIBLE LWS_EXTERN int
+lws_ev_initloop(struct lws_context *context, struct ev_loop *loop, int tsi);
+
+LWS_VISIBLE LWS_EXTERN void
+lws_ev_sigint_cb(struct ev_loop *loop, struct ev_signal *watcher, int revents);
+#endif /* LWS_USE_LIBEV */
+
+///@}
+
+/*! \defgroup uv libuv helpers
+ *
+ * ##libuv helpers
+ *
+ * APIs specific to libuv event loop itegration
+ */
+///@{
+#ifdef LWS_USE_LIBUV
+LWS_VISIBLE LWS_EXTERN int
+lws_uv_sigint_cfg(struct lws_context *context, int use_uv_sigint,
+		  uv_signal_cb cb);
+
+LWS_VISIBLE LWS_EXTERN void
+lws_libuv_run(const struct lws_context *context, int tsi);
+
+LWS_VISIBLE LWS_EXTERN void
+lws_libuv_stop(struct lws_context *context);
+
+LWS_VISIBLE LWS_EXTERN int
+lws_uv_initloop(struct lws_context *context, uv_loop_t *loop, int tsi);
+
+LWS_VISIBLE LWS_EXTERN uv_loop_t *
+lws_uv_getloop(struct lws_context *context, int tsi);
+
+LWS_VISIBLE LWS_EXTERN void
+lws_uv_sigint_cb(uv_signal_t *watcher, int signum);
+#endif /* LWS_USE_LIBUV */
+///@}
+
+/*! \defgroup timeout Connection timeouts
+
+    APIs related to setting connection timeouts
+*/
+//@{
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+enum pending_timeout {
+	NO_PENDING_TIMEOUT					=  0,
+	PENDING_TIMEOUT_AWAITING_PROXY_RESPONSE			=  1,
+	PENDING_TIMEOUT_AWAITING_CONNECT_RESPONSE		=  2,
+	PENDING_TIMEOUT_ESTABLISH_WITH_SERVER			=  3,
+	PENDING_TIMEOUT_AWAITING_SERVER_RESPONSE		=  4,
+	PENDING_TIMEOUT_AWAITING_PING				=  5,
+	PENDING_TIMEOUT_CLOSE_ACK				=  6,
+	PENDING_TIMEOUT_AWAITING_EXTENSION_CONNECT_RESPONSE	=  7,
+	PENDING_TIMEOUT_SENT_CLIENT_HANDSHAKE			=  8,
+	PENDING_TIMEOUT_SSL_ACCEPT				=  9,
+	PENDING_TIMEOUT_HTTP_CONTENT				= 10,
+	PENDING_TIMEOUT_AWAITING_CLIENT_HS_SEND			= 11,
+	PENDING_FLUSH_STORED_SEND_BEFORE_CLOSE			= 12,
+	PENDING_TIMEOUT_SHUTDOWN_FLUSH				= 13,
+	PENDING_TIMEOUT_CGI					= 14,
+	PENDING_TIMEOUT_HTTP_KEEPALIVE_IDLE			= 15,
+	PENDING_TIMEOUT_WS_PONG_CHECK_SEND_PING			= 16,
+	PENDING_TIMEOUT_WS_PONG_CHECK_GET_PONG			= 17,
+	PENDING_TIMEOUT_CLIENT_ISSUE_PAYLOAD			= 18,
+
+	/****** add new things just above ---^ ******/
+};
+
+/**
+ * lws_set_timeout() - marks the wsi as subject to a timeout
+ *
+ * You will not need this unless you are doing something special
+ *
+ * \param wsi:	Websocket connection instance
+ * \param reason:	timeout reason
+ * \param secs:	how many seconds
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_set_timeout(struct lws *wsi, enum pending_timeout reason, int secs);
+///@}
+
+/*! \defgroup sending-data Sending data
+
+    APIs related to writing data on a connection
+*/
+//@{
+#if !defined(LWS_SIZEOFPTR)
+#define LWS_SIZEOFPTR (sizeof (void *))
+#endif
+#if !defined(u_int64_t)
+#define u_int64_t unsigned long long
+#endif
+
+#if defined(__x86_64__)
+#define _LWS_PAD_SIZE 16	/* Intel recommended for best performance */
+#else
+#define _LWS_PAD_SIZE LWS_SIZEOFPTR   /* Size of a pointer on the target arch */
+#endif
+#define _LWS_PAD(n) (((n) % _LWS_PAD_SIZE) ? \
+		((n) + (_LWS_PAD_SIZE - ((n) % _LWS_PAD_SIZE))) : (n))
+#define LWS_PRE _LWS_PAD(4 + 10)
+/* used prior to 1.7 and retained for backward compatibility */
+#define LWS_SEND_BUFFER_PRE_PADDING LWS_PRE
+#define LWS_SEND_BUFFER_POST_PADDING 0
+
+/*
+ * NOTE: These public enums are part of the abi.  If you want to add one,
+ * add it at where specified so existing users are unaffected.
+ */
+enum lws_write_protocol {
+	LWS_WRITE_TEXT						= 0,
+	/**< Send a ws TEXT message,the pointer must have LWS_PRE valid
+	 * memory behind it.  The receiver expects only valid utf-8 in the
+	 * payload */
+	LWS_WRITE_BINARY					= 1,
+	/**< Send a ws BINARY message, the pointer must have LWS_PRE valid
+	 * memory behind it.  Any sequence of bytes is valid */
+	LWS_WRITE_CONTINUATION					= 2,
+	/**< Continue a previous ws message, the pointer must have LWS_PRE valid
+	 * memory behind it */
+	LWS_WRITE_HTTP						= 3,
+	/**< Send HTTP content */
+
+	/* LWS_WRITE_CLOSE is handled by lws_close_reason() */
+	LWS_WRITE_PING						= 5,
+	LWS_WRITE_PONG						= 6,
+
+	/* Same as write_http but we know this write ends the transaction */
+	LWS_WRITE_HTTP_FINAL					= 7,
+
+	/* HTTP2 */
+
+	LWS_WRITE_HTTP_HEADERS					= 8,
+	/**< Send http headers (http2 encodes this payload and LWS_WRITE_HTTP
+	 * payload differently, http 1.x links also handle this correctly. so
+	 * to be compatible with both in the future,header response part should
+	 * be sent using this regardless of http version expected)
+	 */
+
+	/****** add new things just above ---^ ******/
+
+	/* flags */
+
+	LWS_WRITE_NO_FIN = 0x40,
+	/**< This part of the message is not the end of the message */
+
+	LWS_WRITE_CLIENT_IGNORE_XOR_MASK = 0x80
+	/**< client packet payload goes out on wire unmunged
+	 * only useful for security tests since normal servers cannot
+	 * decode the content if used */
+};
+
+
+/**
+ * lws_write() - Apply protocol then write data to client
+ * \param wsi:	Websocket instance (available from user callback)
+ * \param buf:	The data to send.  For data being sent on a websocket
+ *		connection (ie, not default http), this buffer MUST have
+ *		LWS_PRE bytes valid BEFORE the pointer.
+ *		This is so the protocol header data can be added in-situ.
+ * \param len:	Count of the data bytes in the payload starting from buf
+ * \param protocol:	Use LWS_WRITE_HTTP to reply to an http connection, and one
+ *		of LWS_WRITE_BINARY or LWS_WRITE_TEXT to send appropriate
+ *		data on a websockets connection.  Remember to allow the extra
+ *		bytes before and after buf if LWS_WRITE_BINARY or LWS_WRITE_TEXT
+ *		are used.
+ *
+ *	This function provides the way to issue data back to the client
+ *	for both http and websocket protocols.
+ *
+ * IMPORTANT NOTICE!
+ *
+ * When sending with websocket protocol
+ *
+ * LWS_WRITE_TEXT,
+ * LWS_WRITE_BINARY,
+ * LWS_WRITE_CONTINUATION,
+ * LWS_WRITE_PING,
+ * LWS_WRITE_PONG
+ *
+ * the send buffer has to have LWS_PRE bytes valid BEFORE
+ * the buffer pointer you pass to lws_write().
+ *
+ * This allows us to add protocol info before and after the data, and send as
+ * one packet on the network without payload copying, for maximum efficiency.
+ *
+ * So for example you need this kind of code to use lws_write with a
+ * 128-byte payload
+ *
+ *   char buf[LWS_PRE + 128];
+ *
+ *   // fill your part of the buffer... for example here it's all zeros
+ *   memset(&buf[LWS_PRE], 0, 128);
+ *
+ *   lws_write(wsi, &buf[LWS_PRE], 128, LWS_WRITE_TEXT);
+ *
+ * When sending HTTP, with
+ *
+ * LWS_WRITE_HTTP,
+ * LWS_WRITE_HTTP_HEADERS
+ * LWS_WRITE_HTTP_FINAL
+ *
+ * there is no protocol data prepended, and don't need to take care about the
+ * LWS_PRE bytes valid before the buffer pointer.
+ *
+ * LWS_PRE is at least the frame nonce + 2 header + 8 length
+ * LWS_SEND_BUFFER_POST_PADDING is deprecated, it's now 0 and can be left off.
+ * The example apps no longer use it.
+ *
+ * Pad LWS_PRE to the CPU word size, so that word references
+ * to the address immediately after the padding won't cause an unaligned access
+ * error. Sometimes for performance reasons the recommended padding is even
+ * larger than sizeof(void *).
+ *
+ *	In the case of sending using websocket protocol, be sure to allocate
+ *	valid storage before and after buf as explained above.  This scheme
+ *	allows maximum efficiency of sending data and protocol in a single
+ *	packet while not burdening the user code with any protocol knowledge.
+ *
+ *	Return may be -1 for a fatal error needing connection close, or the
+ *	number of bytes sent.
+ *
+ * Truncated Writes
+ * ================
+ *
+ * The OS may not accept everything you asked to write on the connection.
+ *
+ * Posix defines POLLOUT indication from poll() to show that the connection
+ * will accept more write data, but it doesn't specifiy how much.  It may just
+ * accept one byte of whatever you wanted to send.
+ *
+ * LWS will buffer the remainder automatically, and send it out autonomously.
+ *
+ * During that time, WRITABLE callbacks will be suppressed.
+ *
+ * This is to handle corner cases where unexpectedly the OS refuses what we
+ * usually expect it to accept.  You should try to send in chunks that are
+ * almost always accepted in order to avoid the inefficiency of the buffering.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_write(struct lws *wsi, unsigned char *buf, size_t len,
+	  enum lws_write_protocol protocol);
+
+/* helper for case where buffer may be const */
+#define lws_write_http(wsi, buf, len) \
+	lws_write(wsi, (unsigned char *)(buf), len, LWS_WRITE_HTTP)
+///@}
+
+/** \defgroup callback-when-writeable Callback when writeable
+ *
+ * ##Callback When Writeable
+ *
+ * lws can only write data on a connection when it is able to accept more
+ * data without blocking.
+ *
+ * So a basic requirement is we should only use the lws_write() apis when the
+ * connection we want to write on says that he can accept more data.
+ *
+ * When lws cannot complete your send at the time, it will buffer the data
+ * and send it in the background, suppressing any further WRITEABLE callbacks
+ * on that connection until it completes.  So it is important to write new
+ * things in a new writeable callback.
+ *
+ * These apis reflect the various ways we can indicate we would like to be
+ * called back when one or more connections is writeable.
+ */
+///@{
+
+/**
+ * lws_callback_on_writable() - Request a callback when this socket
+ *					 becomes able to be written to without
+ *					 blocking
+ *
+ * \param wsi:	Websocket connection instance to get callback for
+ *
+ * - Which:  only this wsi
+ * - When:   when the individual connection becomes writeable
+ * - What: LWS_CALLBACK_*_WRITEABLE
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_on_writable(struct lws *wsi);
+
+/**
+ * lws_callback_on_writable_all_protocol() - Request a callback for all
+ *			connections on same vhost using the given protocol when it
+ *			becomes possible to write to each socket without
+ *			blocking in turn.
+ *
+ * \param context:	lws_context
+ * \param protocol:	Protocol whose connections will get callbacks
+ *
+ * - Which:  connections using this protocol on ANY VHOST
+ * - When:   when the individual connection becomes writeable
+ * - What: LWS_CALLBACK_*_WRITEABLE
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_on_writable_all_protocol(const struct lws_context *context,
+				      const struct lws_protocols *protocol);
+
+/**
+ * lws_callback_on_writable_all_protocol_vhost() - Request a callback for
+ *			all connections using the given protocol when it
+ *			becomes possible to write to each socket without
+ *			blocking in turn.
+ *
+ * \param vhost:	Only consider connections on this lws_vhost
+ * \param protocol:	Protocol whose connections will get callbacks
+ *
+ * - Which:  connections using this protocol on GIVEN VHOST ONLY
+ * - When:   when the individual connection becomes writeable
+ * - What: LWS_CALLBACK_*_WRITEABLE
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_on_writable_all_protocol_vhost(const struct lws_vhost *vhost,
+				      const struct lws_protocols *protocol);
+
+/**
+ * lws_callback_all_protocol() - Callback all connections using
+ *				the given protocol with the given reason
+ *
+ * \param context:	lws_context
+ * \param protocol:	Protocol whose connections will get callbacks
+ * \param reason:	Callback reason index
+ *
+ * - Which:  connections using this protocol on ALL VHOSTS
+ * - When:   when the individual connection becomes writeable
+ * - What:   reason
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_all_protocol(struct lws_context *context,
+			  const struct lws_protocols *protocol, int reason);
+
+/**
+ * lws_callback_all_protocol_vhost() - Callback all connections using
+ *				the given protocol with the given reason
+ *
+ * \param vh:		Vhost whose connections will get callbacks
+ * \param protocol:	Which protocol to match
+ * \param reason:	Callback reason index
+ *
+ * - Which:  connections using this protocol on GIVEN VHOST ONLY
+ * - When:   now
+ * - What:   reason
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_all_protocol_vhost(struct lws_vhost *vh,
+			  const struct lws_protocols *protocol, int reason);
+
+/**
+ * lws_callback_vhost_protocols() - Callback all protocols enabled on a vhost
+ *					with the given reason
+ *
+ * \param wsi:	wsi whose vhost will get callbacks
+ * \param reason:	Callback reason index
+ * \param in:		in argument to callback
+ * \param len:	len argument to callback
+ *
+ * - Which:  connections using this protocol on same VHOST as wsi ONLY
+ * - When:   now
+ * - What:   reason
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_vhost_protocols(struct lws *wsi, int reason, void *in, int len);
+
+LWS_VISIBLE LWS_EXTERN int
+lws_callback_http_dummy(struct lws *wsi, enum lws_callback_reasons reason,
+		    void *user, void *in, size_t len);
+
+/**
+ * lws_get_socket_fd() - returns the socket file descriptor
+ *
+ * You will not need this unless you are doing something special
+ *
+ * \param wsi:	Websocket connection instance
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_get_socket_fd(struct lws *wsi);
+
+/**
+ * lws_get_peer_write_allowance() - get the amount of data writeable to peer
+ * 					if known
+ *
+ * \param wsi:	Websocket connection instance
+ *
+ * if the protocol does not have any guidance, returns -1.  Currently only
+ * http2 connections get send window information from this API.  But your code
+ * should use it so it can work properly with any protocol.
+ *
+ * If nonzero return is the amount of payload data the peer or intermediary has
+ * reported it has buffer space for.  That has NO relationship with the amount
+ * of buffer space your OS can accept on this connection for a write action.
+ *
+ * This number represents the maximum you could send to the peer or intermediary
+ * on this connection right now without the protocol complaining.
+ *
+ * lws manages accounting for send window updates and payload writes
+ * automatically, so this number reflects the situation at the peer or
+ * intermediary dynamically.
+ */
+LWS_VISIBLE LWS_EXTERN size_t
+lws_get_peer_write_allowance(struct lws *wsi);
+///@}
+
+/**
+ * lws_rx_flow_control() - Enable and disable socket servicing for
+ *				received packets.
+ *
+ * If the output side of a server process becomes choked, this allows flow
+ * control for the input side.
+ *
+ * \param wsi:	Websocket connection instance to get callback for
+ * \param enable:	0 = disable read servicing for this connection, 1 = enable
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_rx_flow_control(struct lws *wsi, int enable);
+
+/**
+ * lws_rx_flow_allow_all_protocol() - Allow all connections with this protocol to receive
+ *
+ * When the user server code realizes it can accept more input, it can
+ * call this to have the RX flow restriction removed from all connections using
+ * the given protocol.
+ * \param context:	lws_context
+ * \param protocol:	all connections using this protocol will be allowed to receive
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_rx_flow_allow_all_protocol(const struct lws_context *context,
+			       const struct lws_protocols *protocol);
+
+/**
+ * lws_remaining_packet_payload() - Bytes to come before "overall"
+ *					      rx packet is complete
+ * \param wsi:		Websocket instance (available from user callback)
+ *
+ *	This function is intended to be called from the callback if the
+ *  user code is interested in "complete packets" from the client.
+ *  libwebsockets just passes through payload as it comes and issues a buffer
+ *  additionally when it hits a built-in limit.  The LWS_CALLBACK_RECEIVE
+ *  callback handler can use this API to find out if the buffer it has just
+ *  been given is the last piece of a "complete packet" from the client --
+ *  when that is the case lws_remaining_packet_payload() will return
+ *  0.
+ *
+ *  Many protocols won't care becuse their packets are always small.
+ */
+LWS_VISIBLE LWS_EXTERN size_t
+lws_remaining_packet_payload(struct lws *wsi);
+
+
+/** \defgroup sock-adopt Socket adoption helpers
+ * ##Socket adoption helpers
+ *
+ * When integrating with an external app with its own event loop, these can
+ * be used to accept connections from someone else's listening socket.
+ *
+ * When using lws own event loop, these are not needed.
+ */
+///@{
+
+/**
+ * lws_adopt_socket() - adopt foreign socket as if listen socket accepted it
+ * \param context: lws context
+ * \param accept_fd: fd of already-accepted socket to adopt
+ *
+ * Either returns new wsi bound to accept_fd, or closes accept_fd and
+ * returns NULL, having cleaned up any new wsi pieces.
+ *
+ * LWS adopts the socket in http serving mode, it's ready to accept an upgrade
+ * to ws or just serve http.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws *
+lws_adopt_socket(struct lws_context *context, lws_sockfd_type accept_fd);
+/**
+ * lws_adopt_socket_readbuf() - adopt foreign socket and first rx as if listen socket accepted it
+ * \param context:	lws context
+ * \param accept_fd:	fd of already-accepted socket to adopt
+ * \param readbuf:	NULL or pointer to data that must be drained before reading from
+ *		accept_fd
+ * \param len:	The length of the data held at \param readbuf
+ *
+ * Either returns new wsi bound to accept_fd, or closes accept_fd and
+ * returns NULL, having cleaned up any new wsi pieces.
+ *
+ * LWS adopts the socket in http serving mode, it's ready to accept an upgrade
+ * to ws or just serve http.
+ *
+ * If your external code did not already read from the socket, you can use
+ * lws_adopt_socket() instead.
+ *
+ * This api is guaranteed to use the data at \param readbuf first, before reading from
+ * the socket.
+ *
+ * readbuf is limited to the size of the ah rx buf, currently 2048 bytes.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws *
+lws_adopt_socket_readbuf(struct lws_context *context, lws_sockfd_type accept_fd,
+		const char *readbuf, size_t len);
+///@}
+
+/** \defgroup net Network related helper APIs
+ * ##Network related helper APIs
+ *
+ * These wrap miscellaneous useful network-related functions
+ */
+///@{
+
+/**
+ * lws_canonical_hostname() - returns this host's hostname
+ *
+ * This is typically used by client code to fill in the host parameter
+ * when making a client connection.  You can only call it after the context
+ * has been created.
+ *
+ * \param context:	Websocket context
+ */
+LWS_VISIBLE LWS_EXTERN const char * LWS_WARN_UNUSED_RESULT
+lws_canonical_hostname(struct lws_context *context);
+
+/**
+ * lws_get_peer_addresses() - Get client address information
+ * \param wsi:	Local struct lws associated with
+ * \param fd:		Connection socket descriptor
+ * \param name:	Buffer to take client address name
+ * \param name_len:	Length of client address name buffer
+ * \param rip:	Buffer to take client address IP dotted quad
+ * \param rip_len:	Length of client address IP buffer
+ *
+ *	This function fills in name and rip with the name and IP of
+ *	the client connected with socket descriptor fd.  Names may be
+ *	truncated if there is not enough room.  If either cannot be
+ *	determined, they will be returned as valid zero-length strings.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_get_peer_addresses(struct lws *wsi, lws_sockfd_type fd, char *name,
+		       int name_len, char *rip, int rip_len);
+
+/**
+ * lws_get_peer_simple() - Get client address information without RDNS
+ *
+ * \param wsi:	Local struct lws associated with
+ * \param name:	Buffer to take client address name
+ * \param namelen:	Length of client address name buffer
+ *
+ * This provides a 123.123.123.123 type IP address in name from the
+ * peer that has connected to wsi
+ */
+LWS_VISIBLE LWS_EXTERN const char *
+lws_get_peer_simple(struct lws *wsi, char *name, int namelen);
+#ifndef LWS_WITH_ESP8266
+/**
+ * lws_interface_to_sa() - Convert interface name or IP to sockaddr struct
+ *
+ * \param ipv6:	Allow IPV6 addresses
+ * \param ifname:	Interface name or IP
+ * \param addr:	struct sockaddr_in * to be written
+ * \param addrlen:	Length of addr
+ *
+ * This converts a textual network interface name to a sockaddr usable by
+ * other network functions
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_interface_to_sa(int ipv6, const char *ifname, struct sockaddr_in *addr,
+		    size_t addrlen);
+///@}
+#endif
+
+/** \defgroup misc Miscellaneous APIs
+* ##Miscellaneous APIs
+*
+* Various APIs outside of other categories
+*/
+///@{
+
+/**
+ * lws_snprintf(): snprintf that truncates the returned length too
+ *
+ * \param str: destination buffer
+ * \param size: bytes left in destination buffer
+ * \param format: format string
+ * \param ...: args for format
+ *
+ * This lets you correctly truncate buffers by concatenating lengths, if you
+ * reach the limit the reported length doesn't exceed the limit.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_snprintf(char *str, size_t size, const char *format, ...);
+
+/**
+ * lws_get_random(): fill a buffer with platform random data
+ *
+ * \param context: the lws context
+ * \param buf: buffer to fill
+ * \param len: how much to fill
+ *
+ * This is intended to be called from the LWS_CALLBACK_RECEIVE callback if
+ * it's interested to see if the frame it's dealing with was sent in binary
+ * mode.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_get_random(struct lws_context *context, void *buf, int len);
+/**
+ * lws_daemonize(): fill a buffer with platform random data
+ *
+ * \param _lock_path: the filepath to write the lock file
+ *
+ * Spawn lws as a background process, taking care of various things
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_daemonize(const char *_lock_path);
+/**
+ * lws_get_library_version(): return string describing the version of lws
+ *
+ * On unix, also includes the git describe
+ */
+LWS_VISIBLE LWS_EXTERN const char * LWS_WARN_UNUSED_RESULT
+lws_get_library_version(void);
+
+/**
+ * lws_wsi_user() - get the user data associated with the connection
+ * \param wsi: lws connection
+ *
+ * Not normally needed since it's passed into the callback
+ */
+LWS_VISIBLE LWS_EXTERN void *
+lws_wsi_user(struct lws *wsi);
+
+/**
+ * lws_parse_uri:	cut up prot:/ads:port/path into pieces
+ *			Notice it does so by dropping '\0' into input string
+ *			and the leading / on the path is consequently lost
+ *
+ * \param p:			incoming uri string.. will get written to
+ * \param prot:		result pointer for protocol part (https://)
+ * \param ads:		result pointer for address part
+ * \param port:		result pointer for port part
+ * \param path:		result pointer for path part
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_parse_uri(char *p, const char **prot, const char **ads, int *port,
+	      const char **path);
+
+/**
+ * lws_now_secs(): return seconds since 1970-1-1
+ */
+LWS_VISIBLE LWS_EXTERN unsigned long
+lws_now_secs(void);
+
+/**
+ * lws_get_context - Allow geting lws_context from a Websocket connection
+ * instance
+ *
+ * With this function, users can access context in the callback function.
+ * Otherwise users may have to declare context as a global variable.
+ *
+ * \param wsi:	Websocket connection instance
+ */
+LWS_VISIBLE LWS_EXTERN struct lws_context * LWS_WARN_UNUSED_RESULT
+lws_get_context(const struct lws *wsi);
+
+/**
+ * lws_get_count_threads(): how many service threads the context uses
+ *
+ * \param context: the lws context
+ *
+ * By default this is always 1, if you asked for more than lws can handle it
+ * will clip the number of threads.  So you can use this to find out how many
+ * threads are actually in use.
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_get_count_threads(struct lws_context *context);
+
+/**
+ * lws_get_parent() - get parent wsi or NULL
+ * \param wsi: lws connection
+ *
+ * Specialized wsi like cgi stdin/out/err are associated to a parent wsi,
+ * this allows you to get their parent.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws * LWS_WARN_UNUSED_RESULT
+lws_get_parent(const struct lws *wsi);
+
+/**
+ * lws_get_child() - get child wsi or NULL
+ * \param wsi: lws connection
+ *
+ * Allows you to find a related wsi from the parent wsi.
+ */
+LWS_VISIBLE LWS_EXTERN struct lws * LWS_WARN_UNUSED_RESULT
+lws_get_child(const struct lws *wsi);
+
+
+/*
+ * \deprecated DEPRECATED Note: this is not normally needed as a user api.
+ * It's provided in case it is
+ * useful when integrating with other app poll loop service code.
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_read(struct lws *wsi, unsigned char *buf, size_t len);
+
+/**
+ * lws_set_allocator() - custom allocator support
+ *
+ * \param realloc
+ *
+ * Allows you to replace the allocator (and deallocator) used by lws
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_set_allocator(void *(*realloc)(void *ptr, size_t size));
+///@}
+
+/** \defgroup wsstatus Websocket status APIs
+ * ##Websocket connection status APIs
+ *
+ * These provide information about ws connection or message status
+ */
+///@{
+/**
+ * lws_send_pipe_choked() - tests if socket is writable or not
+ * \param wsi: lws connection
+ *
+ * Allows you to check if you can write more on the socket
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_send_pipe_choked(struct lws *wsi);
+
+/**
+ * lws_is_final_fragment() - tests if last part of ws message
+ * \param wsi: lws connection
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_is_final_fragment(struct lws *wsi);
+
+/**
+ * lws_get_reserved_bits() - access reserved bits of ws frame
+ * \param wsi: lws connection
+ */
+LWS_VISIBLE LWS_EXTERN unsigned char
+lws_get_reserved_bits(struct lws *wsi);
+
+/**
+ * lws_partial_buffered() - find out if lws buffered the last write
+ * \param wsi:	websocket connection to check
+ *
+ * Returns 1 if you cannot use lws_write because the last
+ * write on this connection is still buffered, and can't be cleared without
+ * returning to the service loop and waiting for the connection to be
+ * writeable again.
+ *
+ * If you will try to do >1 lws_write call inside a single
+ * WRITEABLE callback, you must check this after every write and bail if
+ * set, ask for a new writeable callback and continue writing from there.
+ *
+ * This is never set at the start of a writeable callback, but any write
+ * may set it.
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_partial_buffered(struct lws *wsi);
+
+/**
+ * lws_frame_is_binary(): true if the current frame was sent in binary mode
+ *
+ * \param wsi: the connection we are inquiring about
+ *
+ * This is intended to be called from the LWS_CALLBACK_RECEIVE callback if
+ * it's interested to see if the frame it's dealing with was sent in binary
+ * mode.
+ */
+LWS_VISIBLE LWS_EXTERN int LWS_WARN_UNUSED_RESULT
+lws_frame_is_binary(struct lws *wsi);
+
+/**
+ * lws_is_ssl() - Find out if connection is using SSL
+ * \param wsi:	websocket connection to check
+ *
+ *	Returns 0 if the connection is not using SSL, 1 if using SSL and
+ *	using verified cert, and 2 if using SSL but the cert was not
+ *	checked (appears for client wsi told to skip check on connection)
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_is_ssl(struct lws *wsi);
+/**
+ * lws_is_cgi() - find out if this wsi is running a cgi process
+ * \param wsi: lws connection
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_is_cgi(struct lws *wsi);
+///@}
+
+
+/** \defgroup sha SHA and B64 helpers
+ * ##SHA and B64 helpers
+ *
+ * These provide SHA-1 and B64 helper apis
+ */
+///@{
+#ifdef LWS_SHA1_USE_OPENSSL_NAME
+#define lws_SHA1 SHA1
+#else
+/**
+ * lws_SHA1(): make a SHA-1 digest of a buffer
+ *
+ * \param d: incoming buffer
+ * \param n: length of incoming buffer
+ * \param md: buffer for message digest (must be >= 20 bytes)
+ *
+ * Reduces any size buffer into a 20-byte SHA-1 hash.
+ */
+LWS_VISIBLE LWS_EXTERN unsigned char *
+lws_SHA1(const unsigned char *d, size_t n, unsigned char *md);
+#endif
+/**
+ * lws_b64_encode_string(): encode a string into base 64
+ *
+ * \param in: incoming buffer
+ * \param in_len: length of incoming buffer
+ * \param out: result buffer
+ * \param out_size: length of result buffer
+ *
+ * Encodes a string using b64
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_b64_encode_string(const char *in, int in_len, char *out, int out_size);
+/**
+ * lws_b64_decode_string(): decode a string from base 64
+ *
+ * \param in: incoming buffer
+ * \param out: result buffer
+ * \param out_size: length of result buffer
+ *
+ * Decodes a string using b64
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_b64_decode_string(const char *in, char *out, int out_size);
+///@}
+
+
+/*! \defgroup cgi cgi handling
+ *
+ * ##CGI handling
+ *
+ * These functions allow low-level control over stdin/out/err of the cgi.
+ *
+ * However for most cases, binding the cgi to http in and out, the default
+ * lws implementation already does the right thing.
+ */
+#ifdef LWS_WITH_CGI
+enum lws_enum_stdinouterr {
+	LWS_STDIN = 0,
+	LWS_STDOUT = 1,
+	LWS_STDERR = 2,
+};
+
+enum lws_cgi_hdr_state {
+	LCHS_HEADER,
+	LCHS_CR1,
+	LCHS_LF1,
+	LCHS_CR2,
+	LCHS_LF2,
+	LHCS_PAYLOAD,
+	LCHS_SINGLE_0A,
+};
+
+struct lws_cgi_args {
+	struct lws **stdwsi; /**< get fd with lws_get_socket_fd() */
+	enum lws_enum_stdinouterr ch; /**< channel index */
+	unsigned char *data; /**< for messages with payload */
+	enum lws_cgi_hdr_state hdr_state; /**< track where we are in cgi headers */
+	int len; /**< length */
+};
+
+
+/**
+ * lws_cgi: spawn network-connected cgi process
+ *
+ * \param wsi: connection to own the process
+ * \param exec_array: array of "exec-name" "arg1" ... "argn" NULL
+ * \param script_uri_path_len: how many chars on the left of the uri are the path to the cgi
+ * \param timeout_secs: seconds script should be allowed to run
+ * \param mp_cgienv: pvo list with per-vhost cgi options to put in env
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_cgi(struct lws *wsi, const char * const *exec_array,
+	int script_uri_path_len, int timeout_secs,
+	const struct lws_protocol_vhost_options *mp_cgienv);
+
+/**
+ * lws_cgi_write_split_stdout_headers: write cgi output accounting for header part
+ *
+ * \param wsi: connection to own the process
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_cgi_write_split_stdout_headers(struct lws *wsi);
+
+/**
+ * lws_cgi_kill: terminate cgi process associated with wsi
+ *
+ * \param wsi: connection to own the process
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_cgi_kill(struct lws *wsi);
+#endif
+///@}
+
+
+/*! \defgroup fops file operation wrapping
+ *
+ * ##File operation wrapping
+ *
+ * Use these helper functions if you want to access a file from the perspective
+ * of a specific wsi, which is usually the case.  If you just want contextless
+ * file access, use the fops callbacks directly with NULL wsi instead of these
+ * helpers.
+ *
+ * If so, then it calls the platform handler or user overrides where present
+ * (as defined in info->fops)
+ *
+ * The advantage from all this is user code can be portable for file operations
+ * without having to deal with differences between platforms.
+ */
+//@{
+
+/** struct lws_plat_file_ops - Platform-specific file operations
+ *
+ * These provide platform-agnostic ways to deal with filesystem access in the
+ * library and in the user code.
+ */
+struct lws_plat_file_ops {
+	lws_filefd_type (*open)(struct lws *wsi, const char *filename,
+				unsigned long *filelen, int flags);
+	/**< Open file (always binary access if plat supports it)
+	 * filelen is filled on exit to be the length of the file
+	 * flags should be set to O_RDONLY or O_RDWR */
+	int (*close)(struct lws *wsi, lws_filefd_type fd);
+	/**< close file */
+	unsigned long (*seek_cur)(struct lws *wsi, lws_filefd_type fd,
+				  long offset_from_cur_pos);
+	/**< seek from current position */
+	int (*read)(struct lws *wsi, lws_filefd_type fd, unsigned long *amount,
+		    unsigned char *buf, unsigned long len);
+	/**< Read from file, on exit *amount is set to amount actually read */
+	int (*write)(struct lws *wsi, lws_filefd_type fd, unsigned long *amount,
+		     unsigned char *buf, unsigned long len);
+	/**< Write to file, on exit *amount is set to amount actually written */
+
+	/* Add new things just above here ---^
+	 * This is part of the ABI, don't needlessly break compatibility */
+};
+
+/**
+ * lws_get_fops() - get current file ops
+ *
+ * \param context: context
+ */
+LWS_VISIBLE LWS_EXTERN struct lws_plat_file_ops * LWS_WARN_UNUSED_RESULT
+lws_get_fops(struct lws_context *context);
+
+/**
+ * lws_plat_file_open() - file open operations
+ *
+ * \param wsi: connection doing the opening
+ * \param filename: filename to open
+ * \param filelen: length of file (filled in by call)
+ * \param flags: open flags
+ */
+static LWS_INLINE lws_filefd_type LWS_WARN_UNUSED_RESULT
+lws_plat_file_open(struct lws *wsi, const char *filename,
+		   unsigned long *filelen, int flags)
+{
+	return lws_get_fops(lws_get_context(wsi))->open(wsi, filename,
+						    filelen, flags);
+}
+
+/**
+ * lws_plat_file_close() - close file
+ *
+ * \param wsi: connection opened by
+ * \param fd: file descriptor
+ */
+static LWS_INLINE int
+lws_plat_file_close(struct lws *wsi, lws_filefd_type fd)
+{
+	return lws_get_fops(lws_get_context(wsi))->close(wsi, fd);
+}
+
+/**
+ * lws_plat_file_seek_cur() - close file
+ *
+ * \param wsi: connection opened by
+ * \param fd: file descriptor
+ * \param offset: position to seek to
+ */
+static LWS_INLINE unsigned long
+lws_plat_file_seek_cur(struct lws *wsi, lws_filefd_type fd, long offset)
+{
+	return lws_get_fops(lws_get_context(wsi))->seek_cur(wsi, fd, offset);
+}
+/**
+ * lws_plat_file_read() - read from file
+ *
+ * \param wsi: connection opened by
+ * \param fd: file descriptor
+ * \param amount: how much to read (rewritten by call)
+ * \param buf: buffer to write to
+ * \param len: max length
+ */
+static LWS_INLINE int LWS_WARN_UNUSED_RESULT
+lws_plat_file_read(struct lws *wsi, lws_filefd_type fd, unsigned long *amount,
+		   unsigned char *buf, unsigned long len)
+{
+	return lws_get_fops(lws_get_context(wsi))->read(wsi, fd, amount, buf,
+							len);
+}
+/**
+ * lws_plat_file_write() - write from file
+ *
+ * \param wsi: connection opened by
+ * \param fd: file descriptor
+ * \param amount: how much to write (rewritten by call)
+ * \param buf: buffer to read from
+ * \param len: max length
+ */
+static LWS_INLINE int LWS_WARN_UNUSED_RESULT
+lws_plat_file_write(struct lws *wsi, lws_filefd_type fd, unsigned long *amount,
+		    unsigned char *buf, unsigned long len)
+{
+	return lws_get_fops(lws_get_context(wsi))->write(wsi, fd, amount, buf,
+							 len);
+}
+//@}
+
+/** \defgroup smtp
+ * \ingroup lwsapi
+ * ##SMTP related functions
+ *
+ * These apis let you communicate with a local SMTP server to send email from
+ * lws.  It handles all the SMTP sequencing and protocol actions.
+ *
+ * Your system should have postfix, sendmail or another MTA listening on port
+ * 25 and able to send email using the "mail" commandline app.  Usually distro
+ * MTAs are configured for this by default.
+ *
+ * It runs via its own libuv events if initialized (which requires giving it
+ * a libuv loop to attach to).
+ *
+ * It operates using three callbacks, on_next() queries if there is a new email
+ * to send, on_get_body() asks for the body of the email, and on_sent() is
+ * called after the email is successfully sent.
+ *
+ * To use it
+ *
+ *  - create an lws_email struct
+ *
+ *  - initialize data, loop, the email_* strings, max_content_size and
+ *    the callbacks
+ *
+ *  - call lws_email_init()
+ *
+ *  When you have at least one email to send, call lws_email_check() to
+ *  schedule starting to send it.
+ */
+//@{
+#ifdef LWS_WITH_SMTP
+
+/** enum lwsgs_smtp_states - where we are in SMTP protocol sequence */
+enum lwsgs_smtp_states {
+	LGSSMTP_IDLE, /**< awaiting new email */
+	LGSSMTP_CONNECTING, /**< opening tcp connection to MTA */
+	LGSSMTP_CONNECTED, /**< tcp connection to MTA is connected */
+	LGSSMTP_SENT_HELO, /**< sent the HELO */
+	LGSSMTP_SENT_FROM, /**< sent FROM */
+	LGSSMTP_SENT_TO, /**< sent TO */
+	LGSSMTP_SENT_DATA, /**< sent DATA request */
+	LGSSMTP_SENT_BODY, /**< sent the email body */
+	LGSSMTP_SENT_QUIT, /**< sent the session quit */
+};
+
+/** struct lws_email - abstract context for performing SMTP operations */
+struct lws_email {
+	void *data;
+	/**< opaque pointer set by user code and available to the callbacks */
+	uv_loop_t *loop;
+	/**< the libuv loop we will work on */
+
+	char email_smtp_ip[32]; /**< Fill before init, eg, "127.0.0.1" */
+	char email_helo[32];	/**< Fill before init, eg, "myserver.com" */
+	char email_from[100];	/**< Fill before init or on_next */
+	char email_to[100];	/**< Fill before init or on_next */
+
+	unsigned int max_content_size;
+	/**< largest possible email body size */
+
+	/* Fill all the callbacks before init */
+
+	int (*on_next)(struct lws_email *email);
+	/**< (Fill in before calling lws_email_init)
+	 * called when idle, 0 = another email to send, nonzero is idle.
+	 * If you return 0, all of the email_* char arrays must be set
+	 * to something useful. */
+	int (*on_sent)(struct lws_email *email);
+	/**< (Fill in before calling lws_email_init)
+	 * called when transfer of the email to the SMTP server was
+	 * successful, your callback would remove the current email
+	 * from its queue */
+	int (*on_get_body)(struct lws_email *email, char *buf, int len);
+	/**< (Fill in before calling lws_email_init)
+	 * called when the body part of the queued email is about to be
+	 * sent to the SMTP server. */
+
+
+	/* private things */
+	uv_timer_t timeout_email; /**< private */
+	enum lwsgs_smtp_states estate; /**< private */
+	uv_connect_t email_connect_req; /**< private */
+	uv_tcp_t email_client; /**< private */
+	time_t email_connect_started; /**< private */
+	char email_buf[256]; /**< private */
+	char *content; /**< private */
+};
+
+/**
+ * lws_email_init() - Initialize a struct lws_email
+ *
+ * \param email: struct lws_email to init
+ * \param loop: libuv loop to use
+ * \param max_content: max email content size
+ *
+ * Prepares a struct lws_email for use ending SMTP
+ */
+LWS_VISIBLE LWS_EXTERN int
+lws_email_init(struct lws_email *email, uv_loop_t *loop, int max_content);
+
+/**
+ * lws_email_check() - Request check for new email
+ *
+ * \param email: struct lws_email context to check
+ *
+ * Schedules a check for new emails in 1s... call this when you have queued an
+ * email for send.
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_email_check(struct lws_email *email);
+/**
+ * lws_email_destroy() - stop using the struct lws_email
+ *
+ * \param email: the struct lws_email context
+ *
+ * Stop sending email using email and free allocations
+ */
+LWS_VISIBLE LWS_EXTERN void
+lws_email_destroy(struct lws_email *email);
+
+#endif
+//@}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif

+ 117 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/include/lws_config.h

@@ -0,0 +1,117 @@
+/* lws_config.h  Generated from lws_config.h.in  */
+
+#ifndef NDEBUG
+	#ifndef _DEBUG
+		#define _DEBUG
+	#endif
+#endif
+
+#define LWS_INSTALL_DATADIR "/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/EVSE/GPL/libwebsockets-v2.1-stable/release/share"
+
+/* Define to 1 to use wolfSSL/CyaSSL as a replacement for OpenSSL.
+ * LWS_OPENSSL_SUPPORT needs to be set also for this to work. */
+/* #undef USE_WOLFSSL */
+
+/* Also define to 1 (in addition to USE_WOLFSSL) when using the
+  (older) CyaSSL library */
+/* #undef USE_OLD_CYASSL */
+
+/* #undef LWS_USE_MBEDTLS */
+/* #undef LWS_USE_POLARSSL */
+/* #undef LWS_WITH_ESP8266 */
+
+/* #undef LWS_WITH_PLUGINS */
+/* #undef LWS_WITH_NO_LOGS */
+
+/* The Libwebsocket version */
+#define LWS_LIBRARY_VERSION "2.1.0"
+
+#define LWS_LIBRARY_VERSION_MAJOR 2
+#define LWS_LIBRARY_VERSION_MINOR 1
+#define LWS_LIBRARY_VERSION_PATCH 0
+/* LWS_LIBRARY_VERSION_NUMBER looks like 1005001 for e.g. version 1.5.1 */
+#define LWS_LIBRARY_VERSION_NUMBER (LWS_LIBRARY_VERSION_MAJOR*1000000)+(LWS_LIBRARY_VERSION_MINOR*1000)+LWS_LIBRARY_VERSION_PATCH
+
+/* The current git commit hash that we're building from */
+#define LWS_BUILD_HASH "root@am335x_ide-"
+
+/* Build with OpenSSL support */
+#define LWS_OPENSSL_SUPPORT
+
+/* The client should load and trust CA root certs it finds in the OS */
+#define LWS_SSL_CLIENT_USE_OS_CA_CERTS
+
+/* Sets the path where the client certs should be installed. */
+#define LWS_OPENSSL_CLIENT_CERTS "../share"
+
+/* Turn off websocket extensions */
+/* #undef LWS_NO_EXTENSIONS */
+
+/* Enable libev io loop */
+/* #undef LWS_USE_LIBEV */
+
+/* Enable libuv io loop */
+/* #undef LWS_USE_LIBUV */
+
+/* Build with support for ipv6 */
+/* #undef LWS_USE_IPV6 */
+
+/* Build with support for UNIX domain socket */
+/* #undef LWS_USE_UNIX_SOCK */
+
+/* Build with support for HTTP2 */
+/* #undef LWS_USE_HTTP2 */
+
+/* Turn on latency measuring code */
+/* #undef LWS_LATENCY */
+
+/* Don't build the daemonizeation api */
+#define LWS_NO_DAEMONIZE
+
+/* Build without server support */
+/* #undef LWS_NO_SERVER */
+
+/* Build without client support */
+/* #undef LWS_NO_CLIENT */
+
+/* If we should compile with MinGW support */
+/* #undef LWS_MINGW_SUPPORT */
+
+/* Use the BSD getifaddrs that comes with libwebsocket, for uclibc support */
+/* #undef LWS_BUILTIN_GETIFADDRS */
+
+/* use SHA1() not internal libwebsockets_SHA1 */
+/* #undef LWS_SHA1_USE_OPENSSL_NAME */
+
+/* SSL server using ECDH certificate */
+/* #undef LWS_SSL_SERVER_WITH_ECDH_CERT */
+#define LWS_HAVE_SSL_CTX_set1_param
+/* #undef LWS_HAVE_X509_VERIFY_PARAM_set1_host */
+
+/* #undef LWS_HAVE_UV_VERSION_H */
+
+/* CGI apis */
+/* #undef LWS_WITH_CGI */
+
+/* whether the Openssl is recent enough, and / or built with, ecdh */
+#define LWS_HAVE_OPENSSL_ECDH_H
+
+/* HTTP Proxy support */
+/* #undef LWS_WITH_HTTP_PROXY */
+
+/* Http access log support */
+/* #undef LWS_WITH_ACCESS_LOG */
+/* #undef LWS_WITH_SERVER_STATUS */
+
+/* #undef LWS_WITH_STATEFUL_URLDECODE */
+
+/* Maximum supported service threads */
+#define LWS_MAX_SMP 32
+
+/* Lightweight JSON Parser */
+/* #undef LWS_WITH_LEJP */
+
+/* SMTP */
+/* #undef LWS_WITH_SMTP */
+
+

+ 17 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfig.cmake

@@ -0,0 +1,17 @@
+# - Config file for the Libevent package
+# It defines the following variables
+#  LIBWEBSOCKETS_INCLUDE_DIRS - include directories for FooBar
+#  LIBWEBSOCKETS_LIBRARIES    - libraries to link against
+
+# Get the path of the current file.
+get_filename_component(LWS_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+
+# Set the include directories.
+set(LIBWEBSOCKETS_INCLUDE_DIRS "${LWS_CMAKE_DIR}/../../../include")
+
+# Include the project Targets file, this contains definitions for IMPORTED targets.
+include(${LWS_CMAKE_DIR}/LibwebsocketsTargets.cmake)
+
+# IMPORTED targets from LibwebsocketsTargets.cmake
+set(LIBWEBSOCKETS_LIBRARIES websockets websockets_shared)
+

+ 11 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsConfigVersion.cmake

@@ -0,0 +1,11 @@
+set(PACKAGE_VERSION "2.1.0")
+
+# Check whether the requested PACKAGE_FIND_VERSION is compatible
+if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}")
+  set(PACKAGE_VERSION_COMPATIBLE FALSE)
+else()
+  set(PACKAGE_VERSION_COMPATIBLE TRUE)
+  if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}")
+    set(PACKAGE_VERSION_EXACT TRUE)
+  endif()
+endif()	

+ 31 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets-debug.cmake

@@ -0,0 +1,31 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "DEBUG".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "websockets" for configuration "DEBUG"
+set_property(TARGET websockets APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(websockets PROPERTIES
+  IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C"
+  IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libz.so;/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libssl.so;/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libcrypto.so;m"
+  IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libwebsockets.a"
+  )
+
+list(APPEND _IMPORT_CHECK_TARGETS websockets )
+list(APPEND _IMPORT_CHECK_FILES_FOR_websockets "${_IMPORT_PREFIX}/lib/libwebsockets.a" )
+
+# Import target "websockets_shared" for configuration "DEBUG"
+set_property(TARGET websockets_shared APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+set_target_properties(websockets_shared PROPERTIES
+  IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libz.so;/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libssl.so;/opt/ti-processor-sdk-linux-am335x-evm-04.02.00.09/linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/lib/libcrypto.so;m"
+  IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/lib/libwebsockets.so.9"
+  IMPORTED_SONAME_DEBUG "libwebsockets.so.9"
+  )
+
+list(APPEND _IMPORT_CHECK_TARGETS websockets_shared )
+list(APPEND _IMPORT_CHECK_FILES_FOR_websockets_shared "${_IMPORT_PREFIX}/lib/libwebsockets.so.9" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)

+ 93 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/cmake/libwebsockets/LibwebsocketsTargets.cmake

@@ -0,0 +1,93 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
+   message(FATAL_ERROR "CMake >= 2.6.0 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.6)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_targetsDefined)
+set(_targetsNotDefined)
+set(_expectedTargets)
+foreach(_expectedTarget websockets websockets_shared)
+  list(APPEND _expectedTargets ${_expectedTarget})
+  if(NOT TARGET ${_expectedTarget})
+    list(APPEND _targetsNotDefined ${_expectedTarget})
+  endif()
+  if(TARGET ${_expectedTarget})
+    list(APPEND _targetsDefined ${_expectedTarget})
+  endif()
+endforeach()
+if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
+  unset(_targetsDefined)
+  unset(_targetsNotDefined)
+  unset(_expectedTargets)
+  set(CMAKE_IMPORT_FILE_VERSION)
+  cmake_policy(POP)
+  return()
+endif()
+if(NOT "${_targetsDefined}" STREQUAL "")
+  message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
+endif()
+unset(_targetsDefined)
+unset(_targetsNotDefined)
+unset(_expectedTargets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+  set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target websockets
+add_library(websockets STATIC IMPORTED)
+
+# Create imported target websockets_shared
+add_library(websockets_shared SHARED IMPORTED)
+
+# Load information for each installed configuration.
+get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+file(GLOB CONFIG_FILES "${_DIR}/LibwebsocketsTargets-*.cmake")
+foreach(f ${CONFIG_FILES})
+  include(${f})
+endforeach()
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(target ${_IMPORT_CHECK_TARGETS} )
+  foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
+    if(NOT EXISTS "${file}" )
+      message(FATAL_ERROR "The imported target \"${target}\" references the file
+   \"${file}\"
+but this file does not exist.  Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+   \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+    endif()
+  endforeach()
+  unset(_IMPORT_CHECK_FILES_FOR_${target})
+endforeach()
+unset(_IMPORT_CHECK_TARGETS)
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)

BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.a


+ 1 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so

@@ -0,0 +1 @@
+libwebsockets.so.9

BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/lib/libwebsockets.so.9


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/favicon.ico


BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/leaf.jpg


+ 16 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.key.pem

@@ -0,0 +1,16 @@
+-----BEGIN PRIVATE KEY-----
+MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALERkKcaPAZPC+RJ
++2iZsVgkmMD4PvuPyiGwYaHsbwO9ErUUwBIh0g6jcuaxoZ0SOXGywTcVq055Xj1F
+6rc0T9v0PvzRLr7BFlKR09Ls7GQgB5I30Y3yrC1M6zy8hA9TxH0wbzt8T52IqV8H
+R51azYolXd5eSRf0U3/RDffFVY/xAgMBAAECgYAvYmX1cd3SSmECTJIM4eRFlDWU
+nlosc8RB07Os41qqA3T4JH9p2scdx7u95Jc9M11QAegW16OqMmx3tTgkoskjvzWC
+EJ1FTRbRhgmAWWzlMuLBnvO6/kGRqeFHeRsy7V/AEtZSiTgElB/me2trMUUlt7iL
+X2e02V05Z20DE/C04QJBAOQpTwcy8kKVdruCj6OXd1m37MJhAugsioGhI0IhK/tq
+pxsMPo6adYZjgosaTo0FnK1R0Vqi+qqny0sbMxh+ptUCQQDGrFvAta047tKZdnM1
+hSxNruXsPQvQmWLPN4M2U2o2PiOzfobgLs9B/vDX0U8z1l01voaE9iF53lhZXQay
+kIqtAkACnVKRg4zxJGNS7MEWn9K3TXtCEviEjpYbvCv6QwUNAYDet3o0CiMUoilJ
+zMhfp1PPTKO4hSuYLwoOV0ZznmftAkEAuA1xKwSkJ3xIqlcrwEdRld4Tr1mWmnef
+LG03J5r7aKkElgL/nKyA4Zj3Mlj8UP+kdme9Y2xJ8wbjPlaKH978OQJAcQMiODRl
+cICcCqZtIdmmpsMmMG9TaQC7o1gsQ2Y4MjN2SBeaVeBtZ+5g4XZ/Cyuf02vtA5Ew
+//Pszj6c0kEirw==
+-----END PRIVATE KEY-----

+ 18 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets-test-server.pem

@@ -0,0 +1,18 @@
+-----BEGIN CERTIFICATE-----
+MIIC6jCCAlOgAwIBAgIUFB2KpCC2OUdH4+2bkudubLLz/6swDQYJKoZIhvcNAQEL
+BQAwgYYxCzAJBgNVBAYTAkdCMRAwDgYDVQQIDAdFcmV3aG9uMRMwEQYDVQQHDApB
+bGwgYXJvdW5kMRswGQYDVQQKDBJsaWJ3ZWJzb2NrZXRzLXRlc3QxEjAQBgNVBAMM
+CWxvY2FsaG9zdDEfMB0GCSqGSIb3DQEJARYQbm9uZUBpbnZhbGlkLm9yZzAeFw0x
+OTEwMDIwODE3MjhaFw00NzAyMTcwODE3MjhaMIGGMQswCQYDVQQGEwJHQjEQMA4G
+A1UECAwHRXJld2hvbjETMBEGA1UEBwwKQWxsIGFyb3VuZDEbMBkGA1UECgwSbGli
+d2Vic29ja2V0cy10ZXN0MRIwEAYDVQQDDAlsb2NhbGhvc3QxHzAdBgkqhkiG9w0B
+CQEWEG5vbmVAaW52YWxpZC5vcmcwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
+ALERkKcaPAZPC+RJ+2iZsVgkmMD4PvuPyiGwYaHsbwO9ErUUwBIh0g6jcuaxoZ0S
+OXGywTcVq055Xj1F6rc0T9v0PvzRLr7BFlKR09Ls7GQgB5I30Y3yrC1M6zy8hA9T
+xH0wbzt8T52IqV8HR51azYolXd5eSRf0U3/RDffFVY/xAgMBAAGjUzBRMB0GA1Ud
+DgQWBBR5w+n664r0do3hC8y+fDZ8X6CC/DAfBgNVHSMEGDAWgBR5w+n664r0do3h
+C8y+fDZ8X6CC/DAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4GBAHRG
+hvQSCZiY1xF6Kt+rBW6dn5agLCTe0o4bXx3bDjhDxTf1PXrBGTur1x3gUDK3ZTWi
+0f7ng3G0yv2fBb0sZTWwd6Sng1eunxQvzJa3XoFWy8Ln6q2LGr9htsneUk/fTkUS
+qxHWecb0pGXxB/4ZKrv4nLPemGmBA1aORaeNcTaC
+-----END CERTIFICATE-----

BIN
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/libwebsockets.org-logo.png


+ 118 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/lws-common.js

@@ -0,0 +1,118 @@
+/*
+ * This section around grayOut came from here:
+ * http://www.codingforums.com/archive/index.php/t-151720.html
+ * Assumed public domain
+ *
+ * Init like this in your main html script, this also reapplies the gray
+ *
+ *    lws_gray_out(true,{'zindex':'499'});
+ *
+ * To remove the gray
+ *
+ *    lws_gray_out(false);
+ *
+ */
+
+function lws_gray_out(vis, options) {
+	var options = options || {};
+	var zindex = options.zindex || 50;
+	var opacity = options.opacity || 70;
+	var opaque = (opacity / 100);
+	var bgcolor = options.bgcolor || '#000000';
+	var dark = document.getElementById('darkenScreenObject');
+
+	if (!dark) {
+		var tbody = document.getElementsByTagName("body")[0];
+		var tnode = document.createElement('div');
+		tnode.style.position = 'absolute';
+		tnode.style.top = '0px';
+		tnode.style.left = '0px';
+		tnode.style.overflow = 'hidden';
+		tnode.style.display ='none';
+		tnode.id = 'darkenScreenObject';
+		tbody.appendChild(tnode);
+		dark = document.getElementById('darkenScreenObject');
+	}
+	if (vis) {
+		dark.style.opacity = opaque;
+		dark.style.MozOpacity = opaque;
+		dark.style.filter ='alpha(opacity='+opacity+')';
+		dark.style.zIndex = zindex;
+		dark.style.backgroundColor = bgcolor;
+		dark.style.width = gsize(1);
+		dark.style.height = gsize(0);
+		dark.style.display ='block';
+		addEvent(window, "resize",
+			function() {
+				dark.style.height = gsize(0);
+				dark.style.width = gsize(1);
+			}
+		);
+	} else {
+		dark.style.display = 'none';
+		removeEvent(window, "resize",
+			function() {
+				dark.style.height = gsize(0);
+				dark.style.width = gsize(1);
+			}
+		);
+	}
+}
+
+function gsize(ptype)
+{
+	var h = document.compatMode == 'CSS1Compat' &&
+		!window.opera ?
+			document.documentElement.clientHeight :
+						document.body.clientHeight;
+	var w = document.compatMode == 'CSS1Compat' &&
+		!window.opera ? 
+			document.documentElement.clientWidth :
+						document.body.clientWidth;
+	if (document.body && 
+		    (document.body.scrollWidth || document.body.scrollHeight)) {
+		var pageWidth = (w > (t = document.body.scrollWidth)) ?
+					("" + w + "px") : ("" + (t) + "px");
+		var pageHeight = (h > (t = document.body.scrollHeight)) ?
+					("" + h + "px") : ("" + (t) + "px");
+	} else if (document.body.offsetWidth) {
+		var pageWidth = (w > (t = document.body.offsetWidth)) ?
+					("" + w + "px") : ("" + (t) + "px");
+		var pageHeight =(h > (t = document.body.offsetHeight)) ?
+					("" + h + "px") : ("" + (t) + "px");
+	} else {
+		var pageWidth = '100%';
+		var pageHeight = '100%';
+	}
+	return (ptype == 1) ? pageWidth : pageHeight;
+}
+
+function addEvent( obj, type, fn ) {
+	if ( obj.attachEvent ) {
+		obj['e' + type + fn] = fn;
+		obj[type+fn] = function() { obj['e' + type+fn]( window.event );}
+		obj.attachEvent('on' + type, obj[type + fn]);
+	} else
+		obj.addEventListener(type, fn, false);
+}
+
+function removeEvent( obj, type, fn ) {
+	if ( obj.detachEvent ) {
+		obj.detachEvent('on' + type, obj[type + fn]);
+		obj[type + fn] = null;
+	} else
+		obj.removeEventListener(type, fn, false);
+}
+
+/*
+ * end of grayOut related stuff
+ */
+ 
+ 
+function lws_san(s)
+{
+	if (s.search("<") != -1)
+		return "invalid string";
+	
+	return s;
+}

+ 781 - 0
EVSE/GPL/libwebsockets-v2.1-stable/release/share/libwebsockets-test-server/test.html

@@ -0,0 +1,781 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset=utf-8 http-equiv="Content-Language" content="en"/>
+ <script src="/lws-common.js"></script>
+ <title>Minimal Websocket test app</title>
+<style type="text/css">
+	span.title { font-size:18pt; font: Arial; font-weight:normal; text-align:center; color:#000000; }
+	.browser { font-size:18pt; font: Arial; font-weight:normal; text-align:center; color:#ffff00; vertical-align:middle; text-align:center; background:#d0b070; padding:12px; -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;}
+	.group2 { vertical-align:middle;
+		text-align:center;
+		background:#f0f0e0; 
+		padding:12px; 
+		-webkit-border-radius:10px; 
+		-moz-border-radius:10px;
+		border-radius:10px; }
+	.explain { vertical-align:middle;
+		text-align:center;
+		background:#f0f0c0; padding:12px;
+		-webkit-border-radius:10px;
+		-moz-border-radius:10px;
+		border-radius:10px;
+		color:#404000; }
+	td.wsstatus { vertical-align:middle; width:200px; height:50px;
+		text-align:center;
+		background:#f0f0c0; padding:6px;
+		-webkit-border-radius:8px;
+		-moz-border-radius:8px;
+		border-radius:8px;
+		color:#404000; }
+	.tdform { vertical-align:middle; width:200px; height:50px;
+		text-align:center;
+		background:#f0f0d0; padding:6px;
+		-webkit-border-radius:8px;
+		-moz-border-radius:8px; margin:10px;
+		border-radius:8px;
+		border: 1px solid black;
+		border-collapse: collapse;font-size:18pt; font: Arial; font-weight:normal; text-align:center; color:#000000; 
+		color:#404000; }
+		
+	td.l { vertical-align:middle;
+		text-align:center;
+		background:#d0d0b0; 
+		padding:3px; 
+		-webkit-border-radius:3px; 
+		-moz-border-radius:3px;
+		border-radius:3px; }
+	.content { vertical-align:top; text-align:center; background:#fffff0; padding:12px; -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px; }
+	.canvas { vertical-align:top; text-align:center; background:#efefd0; padding:12px; -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px; }
+.tabs {
+  position: relative;   
+  min-height: 750px; /* This part sucks */
+  clear: both;
+  margin: 25px 0;
+}
+.tab {
+  float: left;
+}
+.tab label {
+  background: #eee; 
+  padding: 10px; 
+  border: 1px solid #ccc; 
+  margin-left: -1px; 
+  position: relative;
+  left: 1px; 
+}
+.tab [type=radio] {
+  display: none;   
+}
+.content {
+  position: absolute;
+  top: 28px;
+  left: 0;
+  background: white;
+  right: 0;
+  bottom: 0;
+  padding: 20px;
+  border: 1px solid #ccc; 
+}
+[type=radio]:checked ~ label {
+  background: white;
+  border-bottom: 1px solid white;
+  z-index: 2;
+}
+[type=radio]:checked ~ label ~ .content {
+  z-index: 1;
+}
+</style>
+</head>
+
+<body>
+<header></header>
+<article>
+
+<table><tr><td>
+
+<table width=600px>
+ <tr>
+  <td valign=middle align=center>
+   <a href="https://libwebsockets.org">
+    <img src="libwebsockets.org-logo.png"></a></td><td>
+	<section class="browser">Detected Browser: 
+	<div id=brow>...</div></section>
+  </td>
+ </tr>
+
+</table>
+</td></tr>
+<tr><td colspan=2 align=center>
+Click <a href="leaf.jpg" target="_blank">Here</a> to
+have the test server send a big picture by http.
+</td></tr>
+<tr><td colspan=2>
+<div class="tabs">
+
+   <div class="tab">
+       <input type="radio" id="tab-1" name="tab-group-1" checked>
+       <label for="tab-1">Dumb Increment Demo</label>
+       
+       <div class="content">
+        <div id="dumb" class="group2">
+         <table>
+          <tr>
+	   <td id=wsdi_statustd align=center class="wsstatus">
+	     <span id=wsdi_status>Websocket connection not initialized</span></td>
+           <td><span class="title">dumb increment-protocol</span></td>
+	   </tr>
+	   <tr>
+	   <td class="explain" colspan=2>
+The incrementing number is coming from the server at 20Hz and is individual for
+each connection to the server... try opening a second browser window.
+<br/><br/>
+The button sends a message over the websocket link to ask the server
+to zero just this connection's number.
+	   </td>
+	  </tr>
+	   <tr>
+	    <td align=center><div id=number style="font-size:120%;"> </div></td>
+	    <td align=center>
+	     <input type=button id=offset value="Reset counter">
+	     <input type=button id=junk value="Send junk">
+	    </td>
+	    </tr>
+	 </table>
+	</div>
+       </div> 
+   </div>
+
+   <div class="tab">
+    <input type="radio" id="tab-2" name="tab-group-1">
+    <label for="tab-2">Mirror Demo</label>
+       
+    <div class="content">
+     <div id="mirror" class="group2">
+      <table>
+       <tr>
+	 <td colspan=1 id=wslm_statustd align=center class="wsstatus">
+	 <span id=wslm_status>Websocket connection not initialized</span>
+	</td>
+        <td>
+         <span class="title">lws-mirror-protocol</span>
+        </td>
+       </tr>
+       <tr>
+       <td colspan=2>
+         <div class="explain">
+Use the mouse to draw on the canvas below -- all other browser windows open
+on this page see your drawing in realtime and you can see any of theirs as
+well.
+<br/><br/>
+The lws-mirror protocol doesn't interpret what is being sent to it, it just
+re-sends it to every other websocket it has a connection with using that
+protocol, including the guy who sent the packet.
+<br/><br/>
+<b>libwebsockets-test-client</b> joins in by spamming circles on to this shared canvas when
+run.
+         </div>
+        </td>
+       </tr>
+       <tr>
+	<td colspan=2>Drawing color:
+	  <select id="color">
+		<option value=#000000>Black</option>
+		<option value=#0000ff>Blue</option>
+		<option value=#20ff20>Green</option>
+		<option value=#802020>Dark Red</option>
+	  </select>
+       </tr>
+       <tr>
+	 <td colspan=2 width=500 height=320>
+		<div id="wslm_drawing" style="background:white"></div>
+	</td>
+       </tr>
+      </table>
+     </div>
+    </div> 
+   </div>
+    
+    <div class="tab">
+       <input type="radio" id="tab-3" name="tab-group-1">
+       <label for="tab-3">Close Testing</label>
+     
+       <div class="content">
+<div id="ot" class="group2">
+      <table>
+       <tr>
+        <td>
+
+		</td></tr>
+		<tr><td id=ot_statustd align=center class="wsstatus">
+		 <span id=ot_status>Websocket connection not initialized</span>
+		</td>
+		<td colspan=2><span class="title">Open and close testing</span></td>
+		</tr>
+		<tr>	
+<td class="explain" colspan=3 style="padding:3">
+To help with open and close testing, you can open and close a connection by hand using
+ the buttons.<br>
+ "<b>Close</b>" closes the connection from the browser with code 3000
+  and reason 'Bye!".<br>
+ "<b>Request Server Close</b>" sends a message asking the server to
+initiate the close, which it does with code 1001 and reason "Seeya".
+</td></tr>
+		<tr>
+		<td align=center><input type=button id=ot_open_btn value="Open"></td>
+		<td align=center><input type=button id=ot_close_btn disabled value="Close" ></td>
+		<td align=center><input type=button id=ot_req_close_btn disabled value="Request Server Close" ></td>
+		</tr>
+
+</table>
+
+</div>
+       </div> 
+   </div>
+   
+    <div class="tab">
+       <input type="radio" id="tab-4" name="tab-group-1">
+       <label for="tab-4">Server info</label>
+
+       <div class="content">
+<div id="ot" class="group2">
+      <table>
+       <tr>
+	<td id=s_statustd align=center class="wsstatus">
+	 <div id=s_status>Websocket connection not initialized</div>
+	</td>
+	        <td colspan=1>
+<span class="title">Server Info</span>
+	</td>
+	</tr><tr>
+<td class="explain" colspan=2>
+This information is sent by the server over a ws[s] link and updated live
+whenever the information changes server-side.
+</td></tr>
+	<tr>
+	<td align=center colspan=2><div id=servinfo></div></td>
+	</tr>
+	<tr>
+	<td align=center colspan=2><div id=conninfo style="border : solid 2px #e0d040; padding : 4px; width : 500px; height : 350px; overflow : auto; "></</div></td>
+	</tr>
+</table>
+</div>
+       </div> 
+   </div>
+
+    <div class="tab">
+       <input type="radio" id="tab-5" name="tab-group-1">
+       <label for="tab-5">POST</label>
+
+       <div class="content">
+<div id="ot" class="group2">
+      <table width=100%>
+       <tr>
+	        <td colspan=1>
+<span class="title">POST Form testing</span>
+	</td>
+	</tr><tr>
+<td class="explain" colspan=2>
+This tests POST handling in lws.
+</td></tr>
+	<tr>
+	<td align=center colspan=2 class=tdform><div id=postinfo style=form>
+	FORM 1: send with urlencoded POST body args<br>
+	<form action="formtest" method="post">
+ <span style="font-size:12pt;">Some text: </span>
+  <input type="text" name="text" value="Give me some text"><br>
+  <input type="submit" name="send" value="Send the form">
+	</form>
+	</div></td>
+	</tr>
+
+<script nonce="lwscaro">
+function check_file()
+{
+	var f = document.getElementById('file').files[0];
+	var max_len = 100000;
+	var dis = 0;
+	
+	if (f) {
+		if (f.size >= max_len) {
+			dis = 1;
+			document.getElementById('file_info').innerHTML =
+				"<span style=\"color:red;font-weight:bold\">File larger than "+max_len+"</span>";
+		} else
+			document.getElementById('file_info').innerHTML =
+				"File length "+f.size;
+	} else
+		dis = 1;
+	
+	document.getElementById('upload').disabled = dis;
+}
+</script>
+
+	<tr>
+	<td align=center colspan=2 class=tdform><div id=postinfo style=form>
+	FORM 2: send with multipart/form-data<br>
+	(can handle file upload, test limited to 100KB)<br>
+	<form name=multipart action="formtest" method="post" enctype="multipart/form-data">
+  <span style="font-size:12pt;">Some text: </span>
+  <input type="text" name="text" value="Give me some text">
+<br>
+  <input type="file" name="file" id="file" size="20">&nbsp;<span id=file_info style="font-size:12pt;"></span><br>
+    <input type="submit" id="upload" name="upload" disabled=1 value="Upload">
+	</form>
+	</div></td>
+	</tr>
+	
+</table>
+</div>
+       </div> 
+   </div>
+
+</div>
+</td></tr></table>
+
+Looking for support? <a href="https://libwebsockets.org">https://libwebsockets.org</a>, <a href="https://github.com/warmcat/libwebsockets">https://github.com/warmcat/libwebsockets</a></a><br/>
+Join the mailing list: <a href="https://libwebsockets.org/mailman/listinfo/libwebsockets">https://libwebsockets.org/mailman/listinfo/libwebsockets</a>
+
+</article>
+
+<script nonce="lwscaro">
+
+document.getElementById('file').onchange = check_file;
+document.getElementById('offset').onclick = reset;
+document.getElementById('junk').onclick = junk;
+document.getElementById('color').onclick = update_color;
+document.getElementById('ot_open_btn').onclick = ot_open;
+document.getElementById('ot_close_btn').onclick = ot_close;
+document.getElementById('ot_req_close_btn').onclick = ot_req_close;
+
+/*
+ * We display untrusted stuff in html context... reject anything
+ * that has HTML stuff in it
+ */
+
+function san(s)
+{
+	if (s.search("<") != -1)
+		return "invalid string";
+	
+	return s;
+}
+
+lws_gray_out(true,{'zindex':'499'});
+
+/* BrowserDetect came from http://www.quirksmode.org/js/detect.html */
+
+var BrowserDetect = {
+	init: function () {
+		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
+		this.version = this.searchVersion(navigator.userAgent)
+			|| this.searchVersion(navigator.appVersion)
+			|| "an unknown version";
+		this.OS = this.searchString(this.dataOS) || "an unknown OS";
+	},
+	searchString: function (data) {
+		for (var i=0;i<data.length;i++)	{
+			var dataString = data[i].string;
+			var dataProp = data[i].prop;
+			this.versionSearchString = data[i].versionSearch || data[i].identity;
+			if (dataString) {
+				if (dataString.indexOf(data[i].subString) != -1)
+					return data[i].identity;
+			}
+			else if (dataProp)
+				return data[i].identity;
+		}
+	},
+	searchVersion: function (dataString) {
+		var index = dataString.indexOf(this.versionSearchString);
+		if (index == -1) return;
+		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
+	},
+	dataBrowser: [
+		{
+			string: navigator.userAgent,
+			subString: "Chrome",
+			identity: "Chrome"
+		},
+		{ 	string: navigator.userAgent,
+			subString: "OmniWeb",
+			versionSearch: "OmniWeb/",
+			identity: "OmniWeb"
+		},
+		{
+			string: navigator.vendor,
+			subString: "Apple",
+			identity: "Safari",
+			versionSearch: "Version"
+		},
+		{
+			prop: window.opera,
+			identity: "Opera",
+			versionSearch: "Version"
+		},
+		{
+			string: navigator.vendor,
+			subString: "iCab",
+			identity: "iCab"
+		},
+		{
+			string: navigator.vendor,
+			subString: "KDE",
+			identity: "Konqueror"
+		},
+		{
+			string: navigator.userAgent,
+			subString: "Firefox",
+			identity: "Firefox"
+		},
+		{
+			string: navigator.vendor,
+			subString: "Camino",
+			identity: "Camino"
+		},
+		{		// for newer Netscapes (6+)
+			string: navigator.userAgent,
+			subString: "Netscape",
+			identity: "Netscape"
+		},
+		{
+			string: navigator.userAgent,
+			subString: "MSIE",
+			identity: "Explorer",
+			versionSearch: "MSIE"
+		},
+		{
+			string: navigator.userAgent,
+			subString: "Gecko",
+			identity: "Mozilla",
+			versionSearch: "rv"
+		},
+		{ 		// for older Netscapes (4-)
+			string: navigator.userAgent,
+			subString: "Mozilla",
+			identity: "Netscape",
+			versionSearch: "Mozilla"
+		}
+	],
+	dataOS : [
+		{
+			string: navigator.platform,
+			subString: "Win",
+			identity: "Windows"
+		},
+		{
+			string: navigator.platform,
+			subString: "Mac",
+			identity: "Mac"
+		},
+		{
+			   string: navigator.userAgent,
+			   subString: "iPhone",
+			   identity: "iPhone/iPod"
+	    },
+		{
+			string: navigator.platform,
+			subString: "Linux",
+			identity: "Linux"
+		}
+	]
+
+};
+BrowserDetect.init();
+
+document.getElementById("brow").textContent = " " + BrowserDetect.browser + " "
+	+ BrowserDetect.version +" " + BrowserDetect.OS +" ";
+
+	var pos = 0;
+
+function get_appropriate_ws_url()
+{
+	var pcol;
+	var u = document.URL;
+
+	/*
+	 * We open the websocket encrypted if this page came on an
+	 * https:// url itself, otherwise unencrypted
+	 */
+
+	if (u.substring(0, 5) == "https") {
+		pcol = "wss://";
+		u = u.substr(8);
+	} else {
+		pcol = "ws://";
+		if (u.substring(0, 4) == "http")
+			u = u.substr(7);
+	}
+
+	u = u.split('/');
+
+	/* + "/xxx" bit is for IE10 workaround */
+
+	return pcol + u[0] + "/xxx";
+}
+
+
+document.getElementById("number").textContent = get_appropriate_ws_url();
+
+/* dumb increment protocol */
+	
+	var socket_di;
+
+	if (typeof MozWebSocket != "undefined") {
+		socket_di = new MozWebSocket(get_appropriate_ws_url(),
+				   "dumb-increment-protocol");
+	} else {
+		socket_di = new WebSocket(get_appropriate_ws_url(),
+				   "dumb-increment-protocol");
+	}
+
+
+	try {
+		socket_di.onopen = function() {
+			document.getElementById("wsdi_statustd").style.backgroundColor = "#40ff40";
+			document.getElementById("wsdi_status").innerHTML =
+				" <b>websocket connection opened</b><br>" +
+				san(socket_di.extensions);
+		} 
+
+		socket_di.onmessage =function got_packet(msg) {
+			document.getElementById("number").textContent = msg.data + "\n";
+		} 
+
+		socket_di.onclose = function(){
+			document.getElementById("wsdi_statustd").style.backgroundColor = "#ff4040";
+			document.getElementById("wsdi_status").textContent = " websocket connection CLOSED ";
+		}
+	} catch(exception) {
+		alert('<p>Error' + exception);  
+	}
+	
+	var socket_status, jso, s;
+
+	if (typeof MozWebSocket != "undefined") {
+		socket_status = new MozWebSocket(get_appropriate_ws_url(),
+				   "lws-status");
+	} else {
+		socket_status = new WebSocket(get_appropriate_ws_url(),
+				   "lws-status");
+	}
+
+
+	try {
+		socket_status.onopen = function() {
+			document.getElementById("s_statustd").style.backgroundColor = "#40ff40";
+			document.getElementById("s_status").innerHTML =
+				" <b>websocket connection opened</b><br>" +
+				san(socket_status.extensions);
+		} 
+
+		socket_status.onmessage =function got_packet(msg) {
+			var s;
+			
+			jso = JSON.parse(msg.data);
+			
+			document.getElementById("servinfo").innerHTML = 
+				"<table><tr><td class=l>Build info</td><td>"+
+					san(jso.version) + "</td></tr>" +
+					"<tr><td class=l>Server info</td><td>" +
+					san(jso.hostname) + "</td></tr>" +
+					"</table>";
+			s="<table>";
+			var n;
+			for (n = 0; n < jso.conns.length; n++) {
+				var d = new Date(parseInt(jso.conns[n].time) * 1000);
+				
+				s = s + "<tr><td class=l>client " + (n + 1) +
+				"</td><td><b>" + san(jso.conns[n].peer) +
+				"</b><br>" + san(d.toString()) +
+				"<br>" + san(jso.conns[n].ua) +
+				"</td></tr>";
+			}
+			s = s + "</table>";
+			
+			document.getElementById("conninfo").innerHTML = s;
+		} 
+
+		socket_status.onclose = function(){
+			document.getElementById("s_statustd").style.backgroundColor = "#ff4040";
+			document.getElementById("s_status").textContent = " websocket connection CLOSED ";
+		}
+	} catch(exception) {
+		alert('<p>Error' + exception);  
+	}
+
+function reset() {
+	socket_di.send("reset\n");
+}
+
+
+function junk() {
+	for(var word = ''; word.length < 9000; word += 'a'){}
+	socket_di.send(word);
+}
+
+var socket_ot;
+
+function ot_open() {
+	if (typeof MozWebSocket != "undefined") {
+		socket_ot = new MozWebSocket(get_appropriate_ws_url(),
+				   "dumb-increment-protocol");
+	} else {
+		socket_ot = new WebSocket(get_appropriate_ws_url(),
+				   "dumb-increment-protocol");
+	}
+	try {
+		socket_ot.onopen = function() {
+			document.getElementById("ot_statustd").style.backgroundColor = "#40ff40";
+			document.getElementById("ot_status").innerHTML = " <b>websocket connection opened</b><br>" + san(socket_di.extensions);
+			document.getElementById("ot_open_btn").disabled = true;
+			document.getElementById("ot_close_btn").disabled = false;
+			document.getElementById("ot_req_close_btn").disabled = false;
+		} 
+
+		socket_ot.onclose = function(e){
+			document.getElementById("ot_statustd").style.backgroundColor = "#ff4040";
+			document.getElementById("ot_status").textContent = " websocket connection CLOSED, code: " + e.code +
+			", reason: " + e.reason;
+			document.getElementById("ot_open_btn").disabled = false;
+			document.getElementById("ot_close_btn").disabled = true;
+			document.getElementById("ot_req_close_btn").disabled = true;
+		}
+	} catch(exception) {
+		alert('<p>Error' + exception);  
+	}
+}
+
+/* browser will close the ws in a controlled way */
+function ot_close() {
+	socket_ot.close(3000, "Bye!");
+}
+
+/* we ask the server to close the ws in a controlled way */
+function ot_req_close() {
+	socket_ot.send("closeme\n");
+}
+
+/* lws-mirror protocol */
+
+	var down = 0;
+	var no_last = 1;
+	var last_x = 0, last_y = 0;
+	var ctx;
+	var socket_lm;
+	var color = "#000000";
+
+	if (typeof MozWebSocket != "undefined") {
+		socket_lm = new MozWebSocket(get_appropriate_ws_url(),
+				   "lws-mirror-protocol");
+	} else {
+		socket_lm = new WebSocket(get_appropriate_ws_url(),
+				   "lws-mirror-protocol");
+	}
+
+
+	try {
+		socket_lm.onopen = function() {
+			document.getElementById("wslm_statustd").style.backgroundColor = "#40ff40";
+			document.getElementById("wslm_status").innerHTML =
+				" <b>websocket connection opened</b><br>" +
+				san(socket_lm.extensions);
+			lws_gray_out(false);
+		} 
+
+		socket_lm.onmessage =function got_packet(msg) {
+			j = msg.data.split(';');
+			f = 0;
+			while (f < j.length - 1) {
+				i = j[f].split(' ');
+				if (i[0] == 'd') {
+					ctx.strokeStyle = i[1];
+					ctx.beginPath();
+					ctx.moveTo(+(i[2]), +(i[3]));
+					ctx.lineTo(+(i[4]), +(i[5]));
+					ctx.stroke();
+				}
+				if (i[0] == 'c') {
+					ctx.strokeStyle = i[1];
+					ctx.beginPath();
+					ctx.arc(+(i[2]), +(i[3]), +(i[4]), 0, Math.PI*2, true); 
+					ctx.stroke();
+				}
+
+				f++;
+			}
+		}
+
+		socket_lm.onclose = function(){
+			document.getElementById("wslm_statustd").style.backgroundColor = "#ff4040";
+			document.getElementById("wslm_status").textContent = " websocket connection CLOSED ";
+			lws_gray_out(true,{'zindex':'499'});
+		}
+	} catch(exception) {
+		alert('<p>Error' + exception);  
+	}
+
+	var canvas = document.createElement('canvas');
+	canvas.height = 300;
+	canvas.width = 480;
+	ctx = canvas.getContext("2d");
+
+	document.getElementById('wslm_drawing').appendChild(canvas);
+
+	canvas.addEventListener('mousemove', ev_mousemove, false);
+	canvas.addEventListener('mousedown', ev_mousedown, false);
+	canvas.addEventListener('mouseup', ev_mouseup, false);
+
+	offsetX = offsetY = 0;
+	element = canvas;
+      if (element.offsetParent) {
+        do {
+          offsetX += element.offsetLeft;
+          offsetY += element.offsetTop;
+        } while ((element = element.offsetParent));
+      }
+ 
+function update_color() {
+	color = document.getElementById("color").value;
+}
+
+function ev_mousedown (ev) {
+	down = 1;
+}
+
+function ev_mouseup(ev) {
+	down = 0;
+	no_last = 1;
+}
+
+function ev_mousemove (ev) {
+	var x, y;
+
+	if (ev.offsetX) {
+		x = ev.offsetX;
+		y = ev.offsetY;
+	} else {
+		x = ev.layerX - offsetX;
+		y = ev.layerY - offsetY;
+
+	}
+
+	if (!down)
+		return;
+	if (no_last) {
+		no_last = 0;
+		last_x = x;
+		last_y = y;
+		return;
+	}
+	socket_lm.send("d " + color + " " + last_x + " " + last_y + " " + x + ' ' + y + ';');
+
+	last_x = x;
+	last_y = y;
+}
+
+
+</script>
+
+</body>
+</html>

BIN
EVSE/Projects/AW-Regular/Images/MLO


BIN
EVSE/Projects/AW-Regular/Images/ramdisk.gz


BIN
EVSE/Projects/AW-Regular/Images/u-boot.img


BIN
EVSE/Projects/AW-Regular/Images/zImage


+ 296 - 296
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_System.map

@@ -34653,301 +34653,301 @@ c0a00000 A __start_rodata_section_aligned
 c0a00000 R _etext
 c0a00010 R linux_proc_banner
 c0a0006c R linux_banner
-c0a00100 r __func__.5825
-c0a00110 r sqrt_oddadjust
-c0a00130 r sqrt_evenadjust
-c0a00150 r __func__.5807
-c0a00160 r cc_map
-c0a00180 r isa_modes
-c0a00190 r processor_modes
-c0a00210 r sigpage_mapping
-c0a00220 r regoffset_table
-c0a002b8 r user_arm_view
-c0a002cc r arm_regsets
-c0a00338 r hwcap_str
-c0a00394 r hwcap2_str
-c0a003ac r proc_arch
-c0a003f0 R cpuinfo_op
-c0a00400 R sigreturn_codes
-c0a0041c r handler
-c0a00430 r atags_fops
-c0a004a8 r pmresrn_table.31150
-c0a004b8 r pmresrn_table.31002
-c0a004c4 r scorpion_perf_cache_map
-c0a0056c r scorpion_perf_map
-c0a00594 r krait_perf_cache_map
-c0a0063c r krait_perf_map
-c0a00664 r krait_perf_map_no_branch
-c0a0068c r armv7_a5_perf_cache_map
-c0a00734 r armv7_a5_perf_map
-c0a0075c r armv7_a7_perf_cache_map
-c0a00804 r armv7_a7_perf_map
-c0a0082c r armv7_a8_perf_cache_map
-c0a008d4 r armv7_a8_perf_map
-c0a008fc r armv7_a9_perf_cache_map
-c0a009a4 r armv7_a9_perf_map
-c0a009cc r armv7_a12_perf_cache_map
-c0a00a74 r armv7_a12_perf_map
-c0a00a9c r armv7_a15_perf_cache_map
-c0a00b44 r armv7_a15_perf_map
-c0a00b6c r armv7_pmu_probe_table
-c0a00b90 r armv7_pmu_of_device_ids
-c0a013fc r usermode_action
-c0a01414 r alignment_proc_fops
-c0a0148c r subset.21772
-c0a014ac r subset.21782
-c0a014bc r __param_str_alignment
-c0a014c8 r cpu_arch_name
-c0a014ce r cpu_elf_name
-c0a014d4 r l2c220_data
-c0a0151c r omap_types
-c0a01530 r __func__.28508
-c0a01548 r __func__.29284
-c0a01568 r __func__.29289
-c0a01588 r am33xx_control_reg_offsets
-c0a01648 r am43xx_control_reg_offsets
-c0a01724 r omap_scrm_dt_match_table
-c0a01ecc r omap2_ctrl_data
-c0a01ed4 r omap_mux_dbg_signal_fops
-c0a01f4c r omap_mux_dbg_board_fops
-c0a01fc4 r __func__.28699
-c0a01fd8 r __func__.28741
-c0a01ff0 r __func__.28758
-c0a02008 r __func__.28788
-c0a0201c r __func__.29075
-c0a02030 r __func__.29089
-c0a02044 r __func__.29126
-c0a02054 r __func__.29002
-c0a0206c r __func__.29015
-c0a02088 r __func__.29102
-c0a0209c r __func__.30036
-c0a020bc r __func__.30084
-c0a020d0 r __func__.30078
-c0a020e0 r __func__.36712
-c0a020f4 r omap_pm_ops
-c0a0211c r reg_map
-c0a021f0 r __func__.31257
-c0a0220c r __func__.27253
-c0a02224 r __func__.27271
-c0a0223c r __func__.28011
-c0a0224c r name
-c0a02258 r __func__.27252
-c0a0226c r __func__.36709
-c0a0227c r modck.36708
-c0a02284 r __func__.37246
-c0a022a0 r __func__.28074
-c0a022b8 r __func__.28070
-c0a022d4 r __func__.28103
-c0a022e8 r __func__.28109
-c0a022fc r __func__.28161
-c0a02314 r __func__.28135
-c0a02334 r __func__.25577
-c0a02348 r __func__.23975
-c0a02368 r __func__.23985
-c0a02384 r __func__.30938
-c0a02394 r debug_fops
-c0a0240c r pm_dbg_option_fops
-c0a02484 r pwrdm_suspend_fops
-c0a024fc r pwrdm_state_names
-c0a0250c r __func__.30154
-c0a02524 r __func__.30166
-c0a02544 r __func__.30177
-c0a02568 r __func__.30189
-c0a02584 r __func__.30203
-c0a025a0 r __func__.30215
-c0a025c0 r __func__.30227
-c0a025d8 r __func__.30239
-c0a025f0 r __func__.30248
-c0a0260c r __func__.30257
-c0a02628 r __func__.19941
-c0a0263c r __func__.19953
-c0a02658 r __func__.19965
-c0a02674 r __func__.19977
-c0a0268c r __func__.19988
-c0a026a4 r __func__.28041
-c0a026b8 r __func__.28049
-c0a026c8 r __func__.28057
-c0a026d8 r __func__.28062
-c0a026f4 r __func__.28068
-c0a02710 r __func__.28076
-c0a0272c r __func__.28081
-c0a02744 r __func__.14518
-c0a02758 r __func__.14345
-c0a0276c r __func__.14379
-c0a02784 r __func__.14532
-c0a0279c r __func__.14512
-c0a027b0 r __func__.27364
-c0a027c0 r __func__.27389
-c0a027dc r __func__.27402
-c0a027ec r __func__.27409
-c0a027fc r __func__.34357
-c0a02814 r __func__.34364
-c0a02834 r __func__.27872
-c0a02848 r __func__.29301
-c0a02858 r __func__.36945
-c0a0286c r __func__.36957
-c0a0287c r __func__.36800
-c0a02890 r __func__.26969
-c0a028a8 r __func__.26938
-c0a028c0 r __func__.26928
-c0a028d4 r omap_timer_match
-c0a02ef4 r __func__.27014
-c0a02f08 r __func__.26797
-c0a02f20 r __func__.26943
-c0a02f3c r __func__.26966
-c0a02f58 r __func__.26977
-c0a02f74 r CSWTCH.92
-c0a02f80 r __func__.26836
-c0a02f9c r __func__.26648
-c0a02fb8 r __func__.26712
-c0a02fd8 r omap3plus_pdata
-c0a02fe8 r execdomains_proc_fops
-c0a03060 r tnts
-c0a03090 r __param_str_crash_kexec_post_notifiers
-c0a030ac r __param_str_panic_on_warn
-c0a030bc r __param_str_pause_on_oops
-c0a030cc r __param_str_panic
-c0a030d4 R cpu_all_bits
-c0a030d8 R cpu_bit_bitmap
-c0a0315c R softirq_to_name
-c0a03184 r resource_op
-c0a03194 r proc_ioports_operations
-c0a0320c r proc_iomem_operations
-c0a03284 r proc_wspace_sep
-c0a03290 r cap_last_cap
-c0a03294 r __func__.47089
-c0a032b0 R __cap_empty_set
-c0a032b8 r __func__.40750
-c0a032d0 r offsets.39360
-c0a032dc r wq_sysfs_group
-c0a032f0 r __param_str_debug_force_rr_cpu
-c0a03310 r __param_str_power_efficient
-c0a0332c r __param_str_disable_numa
-c0a03344 r module_uevent_ops
-c0a03350 r module_sysfs_ops
-c0a03358 R param_ops_string
-c0a03368 R param_array_ops
-c0a03378 R param_ops_bint
-c0a03388 R param_ops_invbool
-c0a03398 R param_ops_bool_enable_only
-c0a033a8 R param_ops_bool
-c0a033b8 R param_ops_charp
-c0a033c8 R param_ops_ullong
-c0a033d8 R param_ops_ulong
-c0a033e8 R param_ops_long
-c0a033f8 R param_ops_uint
-c0a03408 R param_ops_int
-c0a03418 R param_ops_ushort
-c0a03428 R param_ops_short
-c0a03438 R param_ops_byte
-c0a03448 r param.26429
-c0a0344c r reboot_cmd
-c0a0345c r __func__.5705
-c0a03470 R sched_prio_to_weight
-c0a03510 R sched_prio_to_wmult
-c0a035b0 r stat_nam
-c0a035c0 R min_cfs_quota_period
-c0a035c8 R max_cfs_quota_period
-c0a035d0 R idle_sched_class
-c0a03618 R fair_sched_class
-c0a03660 R rt_sched_class
-c0a036a8 R dl_sched_class
-c0a036f0 R stop_sched_class
-c0a03738 r schedstat_sops
-c0a03748 r proc_schedstat_operations
-c0a037c0 r sched_feat_fops
-c0a03838 r sched_feat_names
-c0a03878 r sched_debug_sops
-c0a03888 r sched_debug_fops
-c0a03900 r sched_tunable_scaling_names
-c0a0390c r pm_qos_array
-c0a03920 r pm_qos_power_fops
-c0a03998 r pm_qos_debug_fops
-c0a03a10 r CSWTCH.162
-c0a03a1c r __func__.31252
-c0a03a38 r __func__.31395
-c0a03a58 r suspend_stats_operations
-c0a03ad0 r CSWTCH.48
-c0a03af0 r pm_tests
-c0a03b08 r __param_str_pm_test_delay
-c0a03b20 r trunc_msg
-c0a03b2c r recursion_msg.36570
-c0a03b4c r __param_str_always_kmsg_dump
-c0a03b64 r __param_str_console_suspend
-c0a03b7c r __param_str_time
-c0a03b88 r __param_str_ignore_loglevel
-c0a03ba0 R kmsg_fops
-c0a03c18 r __param_str_irqfixup
-c0a03c2c r __param_str_noirqdebug
-c0a03c40 r __func__.26206
-c0a03c54 R irq_domain_simple_ops
-c0a03c7c r irq_spurious_proc_fops
-c0a03cf4 r msi_domain_ops
-c0a03d1c r __param_str_rcu_cpu_stall_timeout
-c0a03d3c r __param_str_rcu_cpu_stall_suppress
-c0a03d5c r __param_str_rcu_normal_after_boot
-c0a03d7c r __param_str_rcu_normal
-c0a03d90 r __param_str_rcu_expedited
-c0a03da8 r gp_ops
-c0a03dcc r CSWTCH.367
-c0a03dd8 r gp_state_names
-c0a03df4 r __param_str_jiffies_till_sched_qs
-c0a03e14 r __param_str_rcu_kick_kthreads
-c0a03e30 r __param_str_jiffies_till_next_fqs
-c0a03e50 r __param_str_jiffies_till_first_fqs
-c0a03e70 r __param_str_qlowmark
-c0a03e84 r __param_str_qhimark
-c0a03e94 r __param_str_blimit
-c0a03ea4 r __param_str_kthread_prio
-c0a03ebc r __param_str_rcu_fanout_leaf
-c0a03ed4 r __param_str_rcu_fanout_exact
-c0a03ef0 r __param_str_dump_tree
-c0a03f04 r hrtimer_clock_to_base_table
-c0a03f6c r offsets
-c0a03f78 r timer_list_sops
-c0a03f88 r timer_list_fops
-c0a04000 r __mon_yday
-c0a04034 r posix_clock_file_operations
-c0a040ac r alarmtimer_pm_ops
-c0a04108 r __param_str_irqtime
-c0a04110 r tk_debug_sleep_time_fops
-c0a04188 r modules_op
-c0a04198 r proc_modules_operations
-c0a04210 r arr.33985
-c0a0424c r __func__.35164
-c0a0425c r vermagic
-c0a0429c r masks.34837
-c0a042c4 r modinfo_attrs
-c0a042e8 r __param_str_module_blacklist
-c0a042fc r __param_str_nomodule
-c0a04308 r __param_str_sig_enforce
-c0a0431c r kallsyms_op
-c0a0432c r kallsyms_operations
-c0a043a4 r __func__.53625
-c0a043b8 r cgroup_subsys
-c0a043d8 r cgroup_subsys_enabled_key
-c0a043f8 r cgroup_subsys_on_dfl_key
-c0a04418 r cgroup_subsys_name
-c0a04438 r proc_cgroupstats_operations
-c0a044b0 R cgroupns_operations
-c0a044cc R utsns_operations
-c0a044e8 R pidns_operations
-c0a04504 r kernel_config_data
-c0a0bb80 r ikconfig_file_ops
-c0a0bbf8 r mode1_syscalls
-c0a0bc0c r jumptable.45554
-c0a0c00c r __func__.45734
-c0a0c01c R bpf_tail_call_proto
-c0a0c03c r __func__.50754
-c0a0c050 r perf_mmap_vmops
-c0a0c07c r perf_fops
-c0a0c0f4 r if_tokens
-c0a0c134 r pmu_dev_group
-c0a0c148 r __func__.24217
-c0a0c164 r __func__.24230
-c0a0c17c r __func__.24138
-c0a0c190 r __func__.24193
-c0a0c1a4 r __func__.24205
+c0a00104 r __func__.5825
+c0a00114 r sqrt_oddadjust
+c0a00134 r sqrt_evenadjust
+c0a00154 r __func__.5807
+c0a00164 r cc_map
+c0a00184 r isa_modes
+c0a00194 r processor_modes
+c0a00214 r sigpage_mapping
+c0a00224 r regoffset_table
+c0a002bc r user_arm_view
+c0a002d0 r arm_regsets
+c0a0033c r hwcap_str
+c0a00398 r hwcap2_str
+c0a003b0 r proc_arch
+c0a003f4 R cpuinfo_op
+c0a00404 R sigreturn_codes
+c0a00420 r handler
+c0a00434 r atags_fops
+c0a004ac r pmresrn_table.31150
+c0a004bc r pmresrn_table.31002
+c0a004c8 r scorpion_perf_cache_map
+c0a00570 r scorpion_perf_map
+c0a00598 r krait_perf_cache_map
+c0a00640 r krait_perf_map
+c0a00668 r krait_perf_map_no_branch
+c0a00690 r armv7_a5_perf_cache_map
+c0a00738 r armv7_a5_perf_map
+c0a00760 r armv7_a7_perf_cache_map
+c0a00808 r armv7_a7_perf_map
+c0a00830 r armv7_a8_perf_cache_map
+c0a008d8 r armv7_a8_perf_map
+c0a00900 r armv7_a9_perf_cache_map
+c0a009a8 r armv7_a9_perf_map
+c0a009d0 r armv7_a12_perf_cache_map
+c0a00a78 r armv7_a12_perf_map
+c0a00aa0 r armv7_a15_perf_cache_map
+c0a00b48 r armv7_a15_perf_map
+c0a00b70 r armv7_pmu_probe_table
+c0a00b94 r armv7_pmu_of_device_ids
+c0a01400 r usermode_action
+c0a01418 r alignment_proc_fops
+c0a01490 r subset.21772
+c0a014b0 r subset.21782
+c0a014c0 r __param_str_alignment
+c0a014cc r cpu_arch_name
+c0a014d2 r cpu_elf_name
+c0a014d8 r l2c220_data
+c0a01520 r omap_types
+c0a01534 r __func__.28508
+c0a0154c r __func__.29284
+c0a0156c r __func__.29289
+c0a0158c r am33xx_control_reg_offsets
+c0a0164c r am43xx_control_reg_offsets
+c0a01728 r omap_scrm_dt_match_table
+c0a01ed0 r omap2_ctrl_data
+c0a01ed8 r omap_mux_dbg_signal_fops
+c0a01f50 r omap_mux_dbg_board_fops
+c0a01fc8 r __func__.28699
+c0a01fdc r __func__.28741
+c0a01ff4 r __func__.28758
+c0a0200c r __func__.28788
+c0a02020 r __func__.29075
+c0a02034 r __func__.29089
+c0a02048 r __func__.29126
+c0a02058 r __func__.29002
+c0a02070 r __func__.29015
+c0a0208c r __func__.29102
+c0a020a0 r __func__.30036
+c0a020c0 r __func__.30084
+c0a020d4 r __func__.30078
+c0a020e4 r __func__.36712
+c0a020f8 r omap_pm_ops
+c0a02120 r reg_map
+c0a021f4 r __func__.31257
+c0a02210 r __func__.27253
+c0a02228 r __func__.27271
+c0a02240 r __func__.28011
+c0a02250 r name
+c0a0225c r __func__.27252
+c0a02270 r __func__.36709
+c0a02280 r modck.36708
+c0a02288 r __func__.37246
+c0a022a4 r __func__.28074
+c0a022bc r __func__.28070
+c0a022d8 r __func__.28103
+c0a022ec r __func__.28109
+c0a02300 r __func__.28161
+c0a02318 r __func__.28135
+c0a02338 r __func__.25577
+c0a0234c r __func__.23975
+c0a0236c r __func__.23985
+c0a02388 r __func__.30938
+c0a02398 r debug_fops
+c0a02410 r pm_dbg_option_fops
+c0a02488 r pwrdm_suspend_fops
+c0a02500 r pwrdm_state_names
+c0a02510 r __func__.30154
+c0a02528 r __func__.30166
+c0a02548 r __func__.30177
+c0a0256c r __func__.30189
+c0a02588 r __func__.30203
+c0a025a4 r __func__.30215
+c0a025c4 r __func__.30227
+c0a025dc r __func__.30239
+c0a025f4 r __func__.30248
+c0a02610 r __func__.30257
+c0a0262c r __func__.19941
+c0a02640 r __func__.19953
+c0a0265c r __func__.19965
+c0a02678 r __func__.19977
+c0a02690 r __func__.19988
+c0a026a8 r __func__.28041
+c0a026bc r __func__.28049
+c0a026cc r __func__.28057
+c0a026dc r __func__.28062
+c0a026f8 r __func__.28068
+c0a02714 r __func__.28076
+c0a02730 r __func__.28081
+c0a02748 r __func__.14518
+c0a0275c r __func__.14345
+c0a02770 r __func__.14379
+c0a02788 r __func__.14532
+c0a027a0 r __func__.14512
+c0a027b4 r __func__.27364
+c0a027c4 r __func__.27389
+c0a027e0 r __func__.27402
+c0a027f0 r __func__.27409
+c0a02800 r __func__.34357
+c0a02818 r __func__.34364
+c0a02838 r __func__.27872
+c0a0284c r __func__.29301
+c0a0285c r __func__.36945
+c0a02870 r __func__.36957
+c0a02880 r __func__.36800
+c0a02894 r __func__.26969
+c0a028ac r __func__.26938
+c0a028c4 r __func__.26928
+c0a028d8 r omap_timer_match
+c0a02ef8 r __func__.27014
+c0a02f0c r __func__.26797
+c0a02f24 r __func__.26943
+c0a02f40 r __func__.26966
+c0a02f5c r __func__.26977
+c0a02f78 r CSWTCH.92
+c0a02f84 r __func__.26836
+c0a02fa0 r __func__.26648
+c0a02fbc r __func__.26712
+c0a02fdc r omap3plus_pdata
+c0a02ff0 r execdomains_proc_fops
+c0a03068 r tnts
+c0a03098 r __param_str_crash_kexec_post_notifiers
+c0a030b4 r __param_str_panic_on_warn
+c0a030c4 r __param_str_pause_on_oops
+c0a030d4 r __param_str_panic
+c0a030dc R cpu_all_bits
+c0a030e0 R cpu_bit_bitmap
+c0a03164 R softirq_to_name
+c0a0318c r resource_op
+c0a0319c r proc_ioports_operations
+c0a03214 r proc_iomem_operations
+c0a0328c r proc_wspace_sep
+c0a03298 r cap_last_cap
+c0a0329c r __func__.47089
+c0a032b8 R __cap_empty_set
+c0a032c0 r __func__.40750
+c0a032d8 r offsets.39360
+c0a032e4 r wq_sysfs_group
+c0a032f8 r __param_str_debug_force_rr_cpu
+c0a03318 r __param_str_power_efficient
+c0a03334 r __param_str_disable_numa
+c0a0334c r module_uevent_ops
+c0a03358 r module_sysfs_ops
+c0a03360 R param_ops_string
+c0a03370 R param_array_ops
+c0a03380 R param_ops_bint
+c0a03390 R param_ops_invbool
+c0a033a0 R param_ops_bool_enable_only
+c0a033b0 R param_ops_bool
+c0a033c0 R param_ops_charp
+c0a033d0 R param_ops_ullong
+c0a033e0 R param_ops_ulong
+c0a033f0 R param_ops_long
+c0a03400 R param_ops_uint
+c0a03410 R param_ops_int
+c0a03420 R param_ops_ushort
+c0a03430 R param_ops_short
+c0a03440 R param_ops_byte
+c0a03450 r param.26429
+c0a03454 r reboot_cmd
+c0a03464 r __func__.5705
+c0a03478 R sched_prio_to_weight
+c0a03518 R sched_prio_to_wmult
+c0a035b8 r stat_nam
+c0a035c8 R min_cfs_quota_period
+c0a035d0 R max_cfs_quota_period
+c0a035d8 R idle_sched_class
+c0a03620 R fair_sched_class
+c0a03668 R rt_sched_class
+c0a036b0 R dl_sched_class
+c0a036f8 R stop_sched_class
+c0a03740 r schedstat_sops
+c0a03750 r proc_schedstat_operations
+c0a037c8 r sched_feat_fops
+c0a03840 r sched_feat_names
+c0a03880 r sched_debug_sops
+c0a03890 r sched_debug_fops
+c0a03908 r sched_tunable_scaling_names
+c0a03914 r pm_qos_array
+c0a03928 r pm_qos_power_fops
+c0a039a0 r pm_qos_debug_fops
+c0a03a18 r CSWTCH.162
+c0a03a24 r __func__.31252
+c0a03a40 r __func__.31395
+c0a03a60 r suspend_stats_operations
+c0a03ad8 r CSWTCH.48
+c0a03af8 r pm_tests
+c0a03b10 r __param_str_pm_test_delay
+c0a03b28 r trunc_msg
+c0a03b34 r recursion_msg.36570
+c0a03b54 r __param_str_always_kmsg_dump
+c0a03b6c r __param_str_console_suspend
+c0a03b84 r __param_str_time
+c0a03b90 r __param_str_ignore_loglevel
+c0a03ba8 R kmsg_fops
+c0a03c20 r __param_str_irqfixup
+c0a03c34 r __param_str_noirqdebug
+c0a03c48 r __func__.26206
+c0a03c5c R irq_domain_simple_ops
+c0a03c84 r irq_spurious_proc_fops
+c0a03cfc r msi_domain_ops
+c0a03d24 r __param_str_rcu_cpu_stall_timeout
+c0a03d44 r __param_str_rcu_cpu_stall_suppress
+c0a03d64 r __param_str_rcu_normal_after_boot
+c0a03d84 r __param_str_rcu_normal
+c0a03d98 r __param_str_rcu_expedited
+c0a03db0 r gp_ops
+c0a03dd4 r CSWTCH.367
+c0a03de0 r gp_state_names
+c0a03dfc r __param_str_jiffies_till_sched_qs
+c0a03e1c r __param_str_rcu_kick_kthreads
+c0a03e38 r __param_str_jiffies_till_next_fqs
+c0a03e58 r __param_str_jiffies_till_first_fqs
+c0a03e78 r __param_str_qlowmark
+c0a03e8c r __param_str_qhimark
+c0a03e9c r __param_str_blimit
+c0a03eac r __param_str_kthread_prio
+c0a03ec4 r __param_str_rcu_fanout_leaf
+c0a03edc r __param_str_rcu_fanout_exact
+c0a03ef8 r __param_str_dump_tree
+c0a03f0c r hrtimer_clock_to_base_table
+c0a03f74 r offsets
+c0a03f80 r timer_list_sops
+c0a03f90 r timer_list_fops
+c0a04008 r __mon_yday
+c0a0403c r posix_clock_file_operations
+c0a040b4 r alarmtimer_pm_ops
+c0a04110 r __param_str_irqtime
+c0a04118 r tk_debug_sleep_time_fops
+c0a04190 r modules_op
+c0a041a0 r proc_modules_operations
+c0a04218 r arr.33985
+c0a04254 r __func__.35164
+c0a04264 r vermagic
+c0a042a4 r masks.34837
+c0a042cc r modinfo_attrs
+c0a042f0 r __param_str_module_blacklist
+c0a04304 r __param_str_nomodule
+c0a04310 r __param_str_sig_enforce
+c0a04324 r kallsyms_op
+c0a04334 r kallsyms_operations
+c0a043ac r __func__.53625
+c0a043c0 r cgroup_subsys
+c0a043e0 r cgroup_subsys_enabled_key
+c0a04400 r cgroup_subsys_on_dfl_key
+c0a04420 r cgroup_subsys_name
+c0a04440 r proc_cgroupstats_operations
+c0a044b8 R cgroupns_operations
+c0a044d4 R utsns_operations
+c0a044f0 R pidns_operations
+c0a0450c r kernel_config_data
+c0a0bb88 r ikconfig_file_ops
+c0a0bc00 r mode1_syscalls
+c0a0bc14 r jumptable.45554
+c0a0c014 r __func__.45734
+c0a0c024 R bpf_tail_call_proto
+c0a0c044 r __func__.50754
+c0a0c058 r perf_mmap_vmops
+c0a0c084 r perf_fops
+c0a0c0fc r if_tokens
+c0a0c13c r pmu_dev_group
+c0a0c150 r __func__.24217
+c0a0c16c r __func__.24230
+c0a0c184 r __func__.24138
+c0a0c198 r __func__.24193
+c0a0c1ac r __func__.24205
 c0a0c200 R generic_file_vm_ops
 c0a0c22c r __func__.32733
 c0a0c240 r fallbacks
@@ -70428,7 +70428,7 @@ c0d4b850 T __initramfs_start
 c0d4b850 t __irf_start
 c0d4b850 T __security_initcall_end
 c0d4b850 T __security_initcall_start
-c0d4b8d5 t __irf_end
+c0d4b8d6 t __irf_end
 c0d4b8d8 T __initramfs_size
 c0e00000 D __data_loc
 c0e00000 D __init_end

+ 290 - 290
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_kallsyms1.S

@@ -34661,301 +34661,301 @@ kallsyms_offsets:
 	.long	0x9f8000
 	.long	0x9f8010
 	.long	0x9f806c
-	.long	0x9f8100
-	.long	0x9f8110
-	.long	0x9f8130
-	.long	0x9f8150
-	.long	0x9f8160
-	.long	0x9f8180
-	.long	0x9f8190
-	.long	0x9f8210
-	.long	0x9f8220
-	.long	0x9f82b8
-	.long	0x9f82cc
-	.long	0x9f8338
-	.long	0x9f8394
-	.long	0x9f83ac
-	.long	0x9f83f0
-	.long	0x9f8400
-	.long	0x9f841c
-	.long	0x9f8430
-	.long	0x9f84a8
-	.long	0x9f84b8
-	.long	0x9f84c4
-	.long	0x9f856c
-	.long	0x9f8594
-	.long	0x9f863c
-	.long	0x9f8664
-	.long	0x9f868c
-	.long	0x9f8734
-	.long	0x9f875c
-	.long	0x9f8804
-	.long	0x9f882c
-	.long	0x9f88d4
-	.long	0x9f88fc
-	.long	0x9f89a4
-	.long	0x9f89cc
-	.long	0x9f8a74
-	.long	0x9f8a9c
-	.long	0x9f8b44
-	.long	0x9f8b6c
-	.long	0x9f8b90
-	.long	0x9f93fc
-	.long	0x9f9414
-	.long	0x9f948c
-	.long	0x9f94ac
-	.long	0x9f94bc
-	.long	0x9f94c8
-	.long	0x9f94ce
-	.long	0x9f94d4
-	.long	0x9f951c
-	.long	0x9f9530
-	.long	0x9f9548
-	.long	0x9f9568
-	.long	0x9f9588
-	.long	0x9f9648
-	.long	0x9f9724
-	.long	0x9f9ecc
-	.long	0x9f9ed4
-	.long	0x9f9f4c
-	.long	0x9f9fc4
-	.long	0x9f9fd8
-	.long	0x9f9ff0
-	.long	0x9fa008
-	.long	0x9fa01c
-	.long	0x9fa030
-	.long	0x9fa044
-	.long	0x9fa054
-	.long	0x9fa06c
-	.long	0x9fa088
-	.long	0x9fa09c
-	.long	0x9fa0bc
-	.long	0x9fa0d0
-	.long	0x9fa0e0
-	.long	0x9fa0f4
-	.long	0x9fa11c
-	.long	0x9fa1f0
-	.long	0x9fa20c
-	.long	0x9fa224
-	.long	0x9fa23c
-	.long	0x9fa24c
-	.long	0x9fa258
-	.long	0x9fa26c
-	.long	0x9fa27c
-	.long	0x9fa284
-	.long	0x9fa2a0
-	.long	0x9fa2b8
-	.long	0x9fa2d4
-	.long	0x9fa2e8
-	.long	0x9fa2fc
-	.long	0x9fa314
-	.long	0x9fa334
-	.long	0x9fa348
-	.long	0x9fa368
-	.long	0x9fa384
-	.long	0x9fa394
-	.long	0x9fa40c
-	.long	0x9fa484
-	.long	0x9fa4fc
-	.long	0x9fa50c
-	.long	0x9fa524
-	.long	0x9fa544
-	.long	0x9fa568
-	.long	0x9fa584
-	.long	0x9fa5a0
-	.long	0x9fa5c0
-	.long	0x9fa5d8
-	.long	0x9fa5f0
-	.long	0x9fa60c
-	.long	0x9fa628
-	.long	0x9fa63c
-	.long	0x9fa658
-	.long	0x9fa674
-	.long	0x9fa68c
-	.long	0x9fa6a4
-	.long	0x9fa6b8
-	.long	0x9fa6c8
-	.long	0x9fa6d8
-	.long	0x9fa6f4
-	.long	0x9fa710
-	.long	0x9fa72c
-	.long	0x9fa744
-	.long	0x9fa758
-	.long	0x9fa76c
-	.long	0x9fa784
-	.long	0x9fa79c
-	.long	0x9fa7b0
-	.long	0x9fa7c0
-	.long	0x9fa7dc
-	.long	0x9fa7ec
-	.long	0x9fa7fc
-	.long	0x9fa814
-	.long	0x9fa834
-	.long	0x9fa848
-	.long	0x9fa858
-	.long	0x9fa86c
-	.long	0x9fa87c
-	.long	0x9fa890
-	.long	0x9fa8a8
-	.long	0x9fa8c0
-	.long	0x9fa8d4
-	.long	0x9faef4
-	.long	0x9faf08
-	.long	0x9faf20
-	.long	0x9faf3c
-	.long	0x9faf58
-	.long	0x9faf74
-	.long	0x9faf80
-	.long	0x9faf9c
-	.long	0x9fafb8
-	.long	0x9fafd8
-	.long	0x9fafe8
-	.long	0x9fb060
-	.long	0x9fb090
-	.long	0x9fb0ac
-	.long	0x9fb0bc
-	.long	0x9fb0cc
+	.long	0x9f8104
+	.long	0x9f8114
+	.long	0x9f8134
+	.long	0x9f8154
+	.long	0x9f8164
+	.long	0x9f8184
+	.long	0x9f8194
+	.long	0x9f8214
+	.long	0x9f8224
+	.long	0x9f82bc
+	.long	0x9f82d0
+	.long	0x9f833c
+	.long	0x9f8398
+	.long	0x9f83b0
+	.long	0x9f83f4
+	.long	0x9f8404
+	.long	0x9f8420
+	.long	0x9f8434
+	.long	0x9f84ac
+	.long	0x9f84bc
+	.long	0x9f84c8
+	.long	0x9f8570
+	.long	0x9f8598
+	.long	0x9f8640
+	.long	0x9f8668
+	.long	0x9f8690
+	.long	0x9f8738
+	.long	0x9f8760
+	.long	0x9f8808
+	.long	0x9f8830
+	.long	0x9f88d8
+	.long	0x9f8900
+	.long	0x9f89a8
+	.long	0x9f89d0
+	.long	0x9f8a78
+	.long	0x9f8aa0
+	.long	0x9f8b48
+	.long	0x9f8b70
+	.long	0x9f8b94
+	.long	0x9f9400
+	.long	0x9f9418
+	.long	0x9f9490
+	.long	0x9f94b0
+	.long	0x9f94c0
+	.long	0x9f94cc
+	.long	0x9f94d2
+	.long	0x9f94d8
+	.long	0x9f9520
+	.long	0x9f9534
+	.long	0x9f954c
+	.long	0x9f956c
+	.long	0x9f958c
+	.long	0x9f964c
+	.long	0x9f9728
+	.long	0x9f9ed0
+	.long	0x9f9ed8
+	.long	0x9f9f50
+	.long	0x9f9fc8
+	.long	0x9f9fdc
+	.long	0x9f9ff4
+	.long	0x9fa00c
+	.long	0x9fa020
+	.long	0x9fa034
+	.long	0x9fa048
+	.long	0x9fa058
+	.long	0x9fa070
+	.long	0x9fa08c
+	.long	0x9fa0a0
+	.long	0x9fa0c0
+	.long	0x9fa0d4
+	.long	0x9fa0e4
+	.long	0x9fa0f8
+	.long	0x9fa120
+	.long	0x9fa1f4
+	.long	0x9fa210
+	.long	0x9fa228
+	.long	0x9fa240
+	.long	0x9fa250
+	.long	0x9fa25c
+	.long	0x9fa270
+	.long	0x9fa280
+	.long	0x9fa288
+	.long	0x9fa2a4
+	.long	0x9fa2bc
+	.long	0x9fa2d8
+	.long	0x9fa2ec
+	.long	0x9fa300
+	.long	0x9fa318
+	.long	0x9fa338
+	.long	0x9fa34c
+	.long	0x9fa36c
+	.long	0x9fa388
+	.long	0x9fa398
+	.long	0x9fa410
+	.long	0x9fa488
+	.long	0x9fa500
+	.long	0x9fa510
+	.long	0x9fa528
+	.long	0x9fa548
+	.long	0x9fa56c
+	.long	0x9fa588
+	.long	0x9fa5a4
+	.long	0x9fa5c4
+	.long	0x9fa5dc
+	.long	0x9fa5f4
+	.long	0x9fa610
+	.long	0x9fa62c
+	.long	0x9fa640
+	.long	0x9fa65c
+	.long	0x9fa678
+	.long	0x9fa690
+	.long	0x9fa6a8
+	.long	0x9fa6bc
+	.long	0x9fa6cc
+	.long	0x9fa6dc
+	.long	0x9fa6f8
+	.long	0x9fa714
+	.long	0x9fa730
+	.long	0x9fa748
+	.long	0x9fa75c
+	.long	0x9fa770
+	.long	0x9fa788
+	.long	0x9fa7a0
+	.long	0x9fa7b4
+	.long	0x9fa7c4
+	.long	0x9fa7e0
+	.long	0x9fa7f0
+	.long	0x9fa800
+	.long	0x9fa818
+	.long	0x9fa838
+	.long	0x9fa84c
+	.long	0x9fa85c
+	.long	0x9fa870
+	.long	0x9fa880
+	.long	0x9fa894
+	.long	0x9fa8ac
+	.long	0x9fa8c4
+	.long	0x9fa8d8
+	.long	0x9faef8
+	.long	0x9faf0c
+	.long	0x9faf24
+	.long	0x9faf40
+	.long	0x9faf5c
+	.long	0x9faf78
+	.long	0x9faf84
+	.long	0x9fafa0
+	.long	0x9fafbc
+	.long	0x9fafdc
+	.long	0x9faff0
+	.long	0x9fb068
+	.long	0x9fb098
+	.long	0x9fb0b4
+	.long	0x9fb0c4
 	.long	0x9fb0d4
-	.long	0x9fb0d8
-	.long	0x9fb15c
-	.long	0x9fb184
-	.long	0x9fb194
-	.long	0x9fb20c
-	.long	0x9fb284
-	.long	0x9fb290
-	.long	0x9fb294
-	.long	0x9fb2b0
+	.long	0x9fb0dc
+	.long	0x9fb0e0
+	.long	0x9fb164
+	.long	0x9fb18c
+	.long	0x9fb19c
+	.long	0x9fb214
+	.long	0x9fb28c
+	.long	0x9fb298
+	.long	0x9fb29c
 	.long	0x9fb2b8
-	.long	0x9fb2d0
-	.long	0x9fb2dc
-	.long	0x9fb2f0
-	.long	0x9fb310
-	.long	0x9fb32c
-	.long	0x9fb344
-	.long	0x9fb350
+	.long	0x9fb2c0
+	.long	0x9fb2d8
+	.long	0x9fb2e4
+	.long	0x9fb2f8
+	.long	0x9fb318
+	.long	0x9fb334
+	.long	0x9fb34c
 	.long	0x9fb358
-	.long	0x9fb368
-	.long	0x9fb378
-	.long	0x9fb388
-	.long	0x9fb398
-	.long	0x9fb3a8
-	.long	0x9fb3b8
-	.long	0x9fb3c8
-	.long	0x9fb3d8
-	.long	0x9fb3e8
-	.long	0x9fb3f8
-	.long	0x9fb408
-	.long	0x9fb418
-	.long	0x9fb428
-	.long	0x9fb438
-	.long	0x9fb448
-	.long	0x9fb44c
-	.long	0x9fb45c
-	.long	0x9fb470
-	.long	0x9fb510
-	.long	0x9fb5b0
-	.long	0x9fb5c0
+	.long	0x9fb360
+	.long	0x9fb370
+	.long	0x9fb380
+	.long	0x9fb390
+	.long	0x9fb3a0
+	.long	0x9fb3b0
+	.long	0x9fb3c0
+	.long	0x9fb3d0
+	.long	0x9fb3e0
+	.long	0x9fb3f0
+	.long	0x9fb400
+	.long	0x9fb410
+	.long	0x9fb420
+	.long	0x9fb430
+	.long	0x9fb440
+	.long	0x9fb450
+	.long	0x9fb454
+	.long	0x9fb464
+	.long	0x9fb478
+	.long	0x9fb518
+	.long	0x9fb5b8
 	.long	0x9fb5c8
 	.long	0x9fb5d0
-	.long	0x9fb618
-	.long	0x9fb660
-	.long	0x9fb6a8
-	.long	0x9fb6f0
-	.long	0x9fb738
-	.long	0x9fb748
-	.long	0x9fb7c0
-	.long	0x9fb838
-	.long	0x9fb878
-	.long	0x9fb888
-	.long	0x9fb900
-	.long	0x9fb90c
-	.long	0x9fb920
-	.long	0x9fb998
-	.long	0x9fba10
-	.long	0x9fba1c
-	.long	0x9fba38
-	.long	0x9fba58
-	.long	0x9fbad0
-	.long	0x9fbaf0
-	.long	0x9fbb08
-	.long	0x9fbb20
-	.long	0x9fbb2c
-	.long	0x9fbb4c
-	.long	0x9fbb64
-	.long	0x9fbb7c
-	.long	0x9fbb88
-	.long	0x9fbba0
-	.long	0x9fbc18
-	.long	0x9fbc2c
-	.long	0x9fbc40
-	.long	0x9fbc54
-	.long	0x9fbc7c
-	.long	0x9fbcf4
-	.long	0x9fbd1c
-	.long	0x9fbd3c
-	.long	0x9fbd5c
-	.long	0x9fbd7c
-	.long	0x9fbd90
-	.long	0x9fbda8
-	.long	0x9fbdcc
-	.long	0x9fbdd8
-	.long	0x9fbdf4
-	.long	0x9fbe14
-	.long	0x9fbe30
-	.long	0x9fbe50
-	.long	0x9fbe70
-	.long	0x9fbe84
-	.long	0x9fbe94
-	.long	0x9fbea4
-	.long	0x9fbebc
-	.long	0x9fbed4
-	.long	0x9fbef0
-	.long	0x9fbf04
-	.long	0x9fbf6c
-	.long	0x9fbf78
-	.long	0x9fbf88
-	.long	0x9fc000
-	.long	0x9fc034
-	.long	0x9fc0ac
-	.long	0x9fc108
+	.long	0x9fb5d8
+	.long	0x9fb620
+	.long	0x9fb668
+	.long	0x9fb6b0
+	.long	0x9fb6f8
+	.long	0x9fb740
+	.long	0x9fb750
+	.long	0x9fb7c8
+	.long	0x9fb840
+	.long	0x9fb880
+	.long	0x9fb890
+	.long	0x9fb908
+	.long	0x9fb914
+	.long	0x9fb928
+	.long	0x9fb9a0
+	.long	0x9fba18
+	.long	0x9fba24
+	.long	0x9fba40
+	.long	0x9fba60
+	.long	0x9fbad8
+	.long	0x9fbaf8
+	.long	0x9fbb10
+	.long	0x9fbb28
+	.long	0x9fbb34
+	.long	0x9fbb54
+	.long	0x9fbb6c
+	.long	0x9fbb84
+	.long	0x9fbb90
+	.long	0x9fbba8
+	.long	0x9fbc20
+	.long	0x9fbc34
+	.long	0x9fbc48
+	.long	0x9fbc5c
+	.long	0x9fbc84
+	.long	0x9fbcfc
+	.long	0x9fbd24
+	.long	0x9fbd44
+	.long	0x9fbd64
+	.long	0x9fbd84
+	.long	0x9fbd98
+	.long	0x9fbdb0
+	.long	0x9fbdd4
+	.long	0x9fbde0
+	.long	0x9fbdfc
+	.long	0x9fbe1c
+	.long	0x9fbe38
+	.long	0x9fbe58
+	.long	0x9fbe78
+	.long	0x9fbe8c
+	.long	0x9fbe9c
+	.long	0x9fbeac
+	.long	0x9fbec4
+	.long	0x9fbedc
+	.long	0x9fbef8
+	.long	0x9fbf0c
+	.long	0x9fbf74
+	.long	0x9fbf80
+	.long	0x9fbf90
+	.long	0x9fc008
+	.long	0x9fc03c
+	.long	0x9fc0b4
 	.long	0x9fc110
-	.long	0x9fc188
-	.long	0x9fc198
-	.long	0x9fc210
-	.long	0x9fc24c
-	.long	0x9fc25c
-	.long	0x9fc29c
-	.long	0x9fc2c4
-	.long	0x9fc2e8
-	.long	0x9fc2fc
-	.long	0x9fc308
-	.long	0x9fc31c
-	.long	0x9fc32c
-	.long	0x9fc3a4
-	.long	0x9fc3b8
-	.long	0x9fc3d8
-	.long	0x9fc3f8
-	.long	0x9fc418
-	.long	0x9fc438
-	.long	0x9fc4b0
-	.long	0x9fc4cc
-	.long	0x9fc4e8
-	.long	0x9fc504
-	.long	0xa03b80
-	.long	0xa03bf8
-	.long	0xa03c0c
-	.long	0xa0400c
-	.long	0xa0401c
-	.long	0xa0403c
-	.long	0xa04050
-	.long	0xa0407c
-	.long	0xa040f4
-	.long	0xa04134
-	.long	0xa04148
-	.long	0xa04164
-	.long	0xa0417c
-	.long	0xa04190
-	.long	0xa041a4
+	.long	0x9fc118
+	.long	0x9fc190
+	.long	0x9fc1a0
+	.long	0x9fc218
+	.long	0x9fc254
+	.long	0x9fc264
+	.long	0x9fc2a4
+	.long	0x9fc2cc
+	.long	0x9fc2f0
+	.long	0x9fc304
+	.long	0x9fc310
+	.long	0x9fc324
+	.long	0x9fc334
+	.long	0x9fc3ac
+	.long	0x9fc3c0
+	.long	0x9fc3e0
+	.long	0x9fc400
+	.long	0x9fc420
+	.long	0x9fc440
+	.long	0x9fc4b8
+	.long	0x9fc4d4
+	.long	0x9fc4f0
+	.long	0x9fc50c
+	.long	0xa03b88
+	.long	0xa03c00
+	.long	0xa03c14
+	.long	0xa04014
+	.long	0xa04024
+	.long	0xa04044
+	.long	0xa04058
+	.long	0xa04084
+	.long	0xa040fc
+	.long	0xa0413c
+	.long	0xa04150
+	.long	0xa0416c
+	.long	0xa04184
+	.long	0xa04198
+	.long	0xa041ac
 	.long	0xa04200
 	.long	0xa0422c
 	.long	0xa04240
@@ -70429,7 +70429,7 @@ kallsyms_offsets:
 	.long	0xc43850
 	.long	0xc43850
 	.long	0xc43850
-	.long	0xc438d5
+	.long	0xc438d6
 	.long	0xc438d8
 	.long	0xcf8000
 	.long	0xcf8000

+ 290 - 290
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_kallsyms2.S

@@ -34661,301 +34661,301 @@ kallsyms_offsets:
 	.long	0x9f8000
 	.long	0x9f8010
 	.long	0x9f806c
-	.long	0x9f8100
-	.long	0x9f8110
-	.long	0x9f8130
-	.long	0x9f8150
-	.long	0x9f8160
-	.long	0x9f8180
-	.long	0x9f8190
-	.long	0x9f8210
-	.long	0x9f8220
-	.long	0x9f82b8
-	.long	0x9f82cc
-	.long	0x9f8338
-	.long	0x9f8394
-	.long	0x9f83ac
-	.long	0x9f83f0
-	.long	0x9f8400
-	.long	0x9f841c
-	.long	0x9f8430
-	.long	0x9f84a8
-	.long	0x9f84b8
-	.long	0x9f84c4
-	.long	0x9f856c
-	.long	0x9f8594
-	.long	0x9f863c
-	.long	0x9f8664
-	.long	0x9f868c
-	.long	0x9f8734
-	.long	0x9f875c
-	.long	0x9f8804
-	.long	0x9f882c
-	.long	0x9f88d4
-	.long	0x9f88fc
-	.long	0x9f89a4
-	.long	0x9f89cc
-	.long	0x9f8a74
-	.long	0x9f8a9c
-	.long	0x9f8b44
-	.long	0x9f8b6c
-	.long	0x9f8b90
-	.long	0x9f93fc
-	.long	0x9f9414
-	.long	0x9f948c
-	.long	0x9f94ac
-	.long	0x9f94bc
-	.long	0x9f94c8
-	.long	0x9f94ce
-	.long	0x9f94d4
-	.long	0x9f951c
-	.long	0x9f9530
-	.long	0x9f9548
-	.long	0x9f9568
-	.long	0x9f9588
-	.long	0x9f9648
-	.long	0x9f9724
-	.long	0x9f9ecc
-	.long	0x9f9ed4
-	.long	0x9f9f4c
-	.long	0x9f9fc4
-	.long	0x9f9fd8
-	.long	0x9f9ff0
-	.long	0x9fa008
-	.long	0x9fa01c
-	.long	0x9fa030
-	.long	0x9fa044
-	.long	0x9fa054
-	.long	0x9fa06c
-	.long	0x9fa088
-	.long	0x9fa09c
-	.long	0x9fa0bc
-	.long	0x9fa0d0
-	.long	0x9fa0e0
-	.long	0x9fa0f4
-	.long	0x9fa11c
-	.long	0x9fa1f0
-	.long	0x9fa20c
-	.long	0x9fa224
-	.long	0x9fa23c
-	.long	0x9fa24c
-	.long	0x9fa258
-	.long	0x9fa26c
-	.long	0x9fa27c
-	.long	0x9fa284
-	.long	0x9fa2a0
-	.long	0x9fa2b8
-	.long	0x9fa2d4
-	.long	0x9fa2e8
-	.long	0x9fa2fc
-	.long	0x9fa314
-	.long	0x9fa334
-	.long	0x9fa348
-	.long	0x9fa368
-	.long	0x9fa384
-	.long	0x9fa394
-	.long	0x9fa40c
-	.long	0x9fa484
-	.long	0x9fa4fc
-	.long	0x9fa50c
-	.long	0x9fa524
-	.long	0x9fa544
-	.long	0x9fa568
-	.long	0x9fa584
-	.long	0x9fa5a0
-	.long	0x9fa5c0
-	.long	0x9fa5d8
-	.long	0x9fa5f0
-	.long	0x9fa60c
-	.long	0x9fa628
-	.long	0x9fa63c
-	.long	0x9fa658
-	.long	0x9fa674
-	.long	0x9fa68c
-	.long	0x9fa6a4
-	.long	0x9fa6b8
-	.long	0x9fa6c8
-	.long	0x9fa6d8
-	.long	0x9fa6f4
-	.long	0x9fa710
-	.long	0x9fa72c
-	.long	0x9fa744
-	.long	0x9fa758
-	.long	0x9fa76c
-	.long	0x9fa784
-	.long	0x9fa79c
-	.long	0x9fa7b0
-	.long	0x9fa7c0
-	.long	0x9fa7dc
-	.long	0x9fa7ec
-	.long	0x9fa7fc
-	.long	0x9fa814
-	.long	0x9fa834
-	.long	0x9fa848
-	.long	0x9fa858
-	.long	0x9fa86c
-	.long	0x9fa87c
-	.long	0x9fa890
-	.long	0x9fa8a8
-	.long	0x9fa8c0
-	.long	0x9fa8d4
-	.long	0x9faef4
-	.long	0x9faf08
-	.long	0x9faf20
-	.long	0x9faf3c
-	.long	0x9faf58
-	.long	0x9faf74
-	.long	0x9faf80
-	.long	0x9faf9c
-	.long	0x9fafb8
-	.long	0x9fafd8
-	.long	0x9fafe8
-	.long	0x9fb060
-	.long	0x9fb090
-	.long	0x9fb0ac
-	.long	0x9fb0bc
-	.long	0x9fb0cc
+	.long	0x9f8104
+	.long	0x9f8114
+	.long	0x9f8134
+	.long	0x9f8154
+	.long	0x9f8164
+	.long	0x9f8184
+	.long	0x9f8194
+	.long	0x9f8214
+	.long	0x9f8224
+	.long	0x9f82bc
+	.long	0x9f82d0
+	.long	0x9f833c
+	.long	0x9f8398
+	.long	0x9f83b0
+	.long	0x9f83f4
+	.long	0x9f8404
+	.long	0x9f8420
+	.long	0x9f8434
+	.long	0x9f84ac
+	.long	0x9f84bc
+	.long	0x9f84c8
+	.long	0x9f8570
+	.long	0x9f8598
+	.long	0x9f8640
+	.long	0x9f8668
+	.long	0x9f8690
+	.long	0x9f8738
+	.long	0x9f8760
+	.long	0x9f8808
+	.long	0x9f8830
+	.long	0x9f88d8
+	.long	0x9f8900
+	.long	0x9f89a8
+	.long	0x9f89d0
+	.long	0x9f8a78
+	.long	0x9f8aa0
+	.long	0x9f8b48
+	.long	0x9f8b70
+	.long	0x9f8b94
+	.long	0x9f9400
+	.long	0x9f9418
+	.long	0x9f9490
+	.long	0x9f94b0
+	.long	0x9f94c0
+	.long	0x9f94cc
+	.long	0x9f94d2
+	.long	0x9f94d8
+	.long	0x9f9520
+	.long	0x9f9534
+	.long	0x9f954c
+	.long	0x9f956c
+	.long	0x9f958c
+	.long	0x9f964c
+	.long	0x9f9728
+	.long	0x9f9ed0
+	.long	0x9f9ed8
+	.long	0x9f9f50
+	.long	0x9f9fc8
+	.long	0x9f9fdc
+	.long	0x9f9ff4
+	.long	0x9fa00c
+	.long	0x9fa020
+	.long	0x9fa034
+	.long	0x9fa048
+	.long	0x9fa058
+	.long	0x9fa070
+	.long	0x9fa08c
+	.long	0x9fa0a0
+	.long	0x9fa0c0
+	.long	0x9fa0d4
+	.long	0x9fa0e4
+	.long	0x9fa0f8
+	.long	0x9fa120
+	.long	0x9fa1f4
+	.long	0x9fa210
+	.long	0x9fa228
+	.long	0x9fa240
+	.long	0x9fa250
+	.long	0x9fa25c
+	.long	0x9fa270
+	.long	0x9fa280
+	.long	0x9fa288
+	.long	0x9fa2a4
+	.long	0x9fa2bc
+	.long	0x9fa2d8
+	.long	0x9fa2ec
+	.long	0x9fa300
+	.long	0x9fa318
+	.long	0x9fa338
+	.long	0x9fa34c
+	.long	0x9fa36c
+	.long	0x9fa388
+	.long	0x9fa398
+	.long	0x9fa410
+	.long	0x9fa488
+	.long	0x9fa500
+	.long	0x9fa510
+	.long	0x9fa528
+	.long	0x9fa548
+	.long	0x9fa56c
+	.long	0x9fa588
+	.long	0x9fa5a4
+	.long	0x9fa5c4
+	.long	0x9fa5dc
+	.long	0x9fa5f4
+	.long	0x9fa610
+	.long	0x9fa62c
+	.long	0x9fa640
+	.long	0x9fa65c
+	.long	0x9fa678
+	.long	0x9fa690
+	.long	0x9fa6a8
+	.long	0x9fa6bc
+	.long	0x9fa6cc
+	.long	0x9fa6dc
+	.long	0x9fa6f8
+	.long	0x9fa714
+	.long	0x9fa730
+	.long	0x9fa748
+	.long	0x9fa75c
+	.long	0x9fa770
+	.long	0x9fa788
+	.long	0x9fa7a0
+	.long	0x9fa7b4
+	.long	0x9fa7c4
+	.long	0x9fa7e0
+	.long	0x9fa7f0
+	.long	0x9fa800
+	.long	0x9fa818
+	.long	0x9fa838
+	.long	0x9fa84c
+	.long	0x9fa85c
+	.long	0x9fa870
+	.long	0x9fa880
+	.long	0x9fa894
+	.long	0x9fa8ac
+	.long	0x9fa8c4
+	.long	0x9fa8d8
+	.long	0x9faef8
+	.long	0x9faf0c
+	.long	0x9faf24
+	.long	0x9faf40
+	.long	0x9faf5c
+	.long	0x9faf78
+	.long	0x9faf84
+	.long	0x9fafa0
+	.long	0x9fafbc
+	.long	0x9fafdc
+	.long	0x9faff0
+	.long	0x9fb068
+	.long	0x9fb098
+	.long	0x9fb0b4
+	.long	0x9fb0c4
 	.long	0x9fb0d4
-	.long	0x9fb0d8
-	.long	0x9fb15c
-	.long	0x9fb184
-	.long	0x9fb194
-	.long	0x9fb20c
-	.long	0x9fb284
-	.long	0x9fb290
-	.long	0x9fb294
-	.long	0x9fb2b0
+	.long	0x9fb0dc
+	.long	0x9fb0e0
+	.long	0x9fb164
+	.long	0x9fb18c
+	.long	0x9fb19c
+	.long	0x9fb214
+	.long	0x9fb28c
+	.long	0x9fb298
+	.long	0x9fb29c
 	.long	0x9fb2b8
-	.long	0x9fb2d0
-	.long	0x9fb2dc
-	.long	0x9fb2f0
-	.long	0x9fb310
-	.long	0x9fb32c
-	.long	0x9fb344
-	.long	0x9fb350
+	.long	0x9fb2c0
+	.long	0x9fb2d8
+	.long	0x9fb2e4
+	.long	0x9fb2f8
+	.long	0x9fb318
+	.long	0x9fb334
+	.long	0x9fb34c
 	.long	0x9fb358
-	.long	0x9fb368
-	.long	0x9fb378
-	.long	0x9fb388
-	.long	0x9fb398
-	.long	0x9fb3a8
-	.long	0x9fb3b8
-	.long	0x9fb3c8
-	.long	0x9fb3d8
-	.long	0x9fb3e8
-	.long	0x9fb3f8
-	.long	0x9fb408
-	.long	0x9fb418
-	.long	0x9fb428
-	.long	0x9fb438
-	.long	0x9fb448
-	.long	0x9fb44c
-	.long	0x9fb45c
-	.long	0x9fb470
-	.long	0x9fb510
-	.long	0x9fb5b0
-	.long	0x9fb5c0
+	.long	0x9fb360
+	.long	0x9fb370
+	.long	0x9fb380
+	.long	0x9fb390
+	.long	0x9fb3a0
+	.long	0x9fb3b0
+	.long	0x9fb3c0
+	.long	0x9fb3d0
+	.long	0x9fb3e0
+	.long	0x9fb3f0
+	.long	0x9fb400
+	.long	0x9fb410
+	.long	0x9fb420
+	.long	0x9fb430
+	.long	0x9fb440
+	.long	0x9fb450
+	.long	0x9fb454
+	.long	0x9fb464
+	.long	0x9fb478
+	.long	0x9fb518
+	.long	0x9fb5b8
 	.long	0x9fb5c8
 	.long	0x9fb5d0
-	.long	0x9fb618
-	.long	0x9fb660
-	.long	0x9fb6a8
-	.long	0x9fb6f0
-	.long	0x9fb738
-	.long	0x9fb748
-	.long	0x9fb7c0
-	.long	0x9fb838
-	.long	0x9fb878
-	.long	0x9fb888
-	.long	0x9fb900
-	.long	0x9fb90c
-	.long	0x9fb920
-	.long	0x9fb998
-	.long	0x9fba10
-	.long	0x9fba1c
-	.long	0x9fba38
-	.long	0x9fba58
-	.long	0x9fbad0
-	.long	0x9fbaf0
-	.long	0x9fbb08
-	.long	0x9fbb20
-	.long	0x9fbb2c
-	.long	0x9fbb4c
-	.long	0x9fbb64
-	.long	0x9fbb7c
-	.long	0x9fbb88
-	.long	0x9fbba0
-	.long	0x9fbc18
-	.long	0x9fbc2c
-	.long	0x9fbc40
-	.long	0x9fbc54
-	.long	0x9fbc7c
-	.long	0x9fbcf4
-	.long	0x9fbd1c
-	.long	0x9fbd3c
-	.long	0x9fbd5c
-	.long	0x9fbd7c
-	.long	0x9fbd90
-	.long	0x9fbda8
-	.long	0x9fbdcc
-	.long	0x9fbdd8
-	.long	0x9fbdf4
-	.long	0x9fbe14
-	.long	0x9fbe30
-	.long	0x9fbe50
-	.long	0x9fbe70
-	.long	0x9fbe84
-	.long	0x9fbe94
-	.long	0x9fbea4
-	.long	0x9fbebc
-	.long	0x9fbed4
-	.long	0x9fbef0
-	.long	0x9fbf04
-	.long	0x9fbf6c
-	.long	0x9fbf78
-	.long	0x9fbf88
-	.long	0x9fc000
-	.long	0x9fc034
-	.long	0x9fc0ac
-	.long	0x9fc108
+	.long	0x9fb5d8
+	.long	0x9fb620
+	.long	0x9fb668
+	.long	0x9fb6b0
+	.long	0x9fb6f8
+	.long	0x9fb740
+	.long	0x9fb750
+	.long	0x9fb7c8
+	.long	0x9fb840
+	.long	0x9fb880
+	.long	0x9fb890
+	.long	0x9fb908
+	.long	0x9fb914
+	.long	0x9fb928
+	.long	0x9fb9a0
+	.long	0x9fba18
+	.long	0x9fba24
+	.long	0x9fba40
+	.long	0x9fba60
+	.long	0x9fbad8
+	.long	0x9fbaf8
+	.long	0x9fbb10
+	.long	0x9fbb28
+	.long	0x9fbb34
+	.long	0x9fbb54
+	.long	0x9fbb6c
+	.long	0x9fbb84
+	.long	0x9fbb90
+	.long	0x9fbba8
+	.long	0x9fbc20
+	.long	0x9fbc34
+	.long	0x9fbc48
+	.long	0x9fbc5c
+	.long	0x9fbc84
+	.long	0x9fbcfc
+	.long	0x9fbd24
+	.long	0x9fbd44
+	.long	0x9fbd64
+	.long	0x9fbd84
+	.long	0x9fbd98
+	.long	0x9fbdb0
+	.long	0x9fbdd4
+	.long	0x9fbde0
+	.long	0x9fbdfc
+	.long	0x9fbe1c
+	.long	0x9fbe38
+	.long	0x9fbe58
+	.long	0x9fbe78
+	.long	0x9fbe8c
+	.long	0x9fbe9c
+	.long	0x9fbeac
+	.long	0x9fbec4
+	.long	0x9fbedc
+	.long	0x9fbef8
+	.long	0x9fbf0c
+	.long	0x9fbf74
+	.long	0x9fbf80
+	.long	0x9fbf90
+	.long	0x9fc008
+	.long	0x9fc03c
+	.long	0x9fc0b4
 	.long	0x9fc110
-	.long	0x9fc188
-	.long	0x9fc198
-	.long	0x9fc210
-	.long	0x9fc24c
-	.long	0x9fc25c
-	.long	0x9fc29c
-	.long	0x9fc2c4
-	.long	0x9fc2e8
-	.long	0x9fc2fc
-	.long	0x9fc308
-	.long	0x9fc31c
-	.long	0x9fc32c
-	.long	0x9fc3a4
-	.long	0x9fc3b8
-	.long	0x9fc3d8
-	.long	0x9fc3f8
-	.long	0x9fc418
-	.long	0x9fc438
-	.long	0x9fc4b0
-	.long	0x9fc4cc
-	.long	0x9fc4e8
-	.long	0x9fc504
-	.long	0xa03b80
-	.long	0xa03bf8
-	.long	0xa03c0c
-	.long	0xa0400c
-	.long	0xa0401c
-	.long	0xa0403c
-	.long	0xa04050
-	.long	0xa0407c
-	.long	0xa040f4
-	.long	0xa04134
-	.long	0xa04148
-	.long	0xa04164
-	.long	0xa0417c
-	.long	0xa04190
-	.long	0xa041a4
+	.long	0x9fc118
+	.long	0x9fc190
+	.long	0x9fc1a0
+	.long	0x9fc218
+	.long	0x9fc254
+	.long	0x9fc264
+	.long	0x9fc2a4
+	.long	0x9fc2cc
+	.long	0x9fc2f0
+	.long	0x9fc304
+	.long	0x9fc310
+	.long	0x9fc324
+	.long	0x9fc334
+	.long	0x9fc3ac
+	.long	0x9fc3c0
+	.long	0x9fc3e0
+	.long	0x9fc400
+	.long	0x9fc420
+	.long	0x9fc440
+	.long	0x9fc4b8
+	.long	0x9fc4d4
+	.long	0x9fc4f0
+	.long	0x9fc50c
+	.long	0xa03b88
+	.long	0xa03c00
+	.long	0xa03c14
+	.long	0xa04014
+	.long	0xa04024
+	.long	0xa04044
+	.long	0xa04058
+	.long	0xa04084
+	.long	0xa040fc
+	.long	0xa0413c
+	.long	0xa04150
+	.long	0xa0416c
+	.long	0xa04184
+	.long	0xa04198
+	.long	0xa041ac
 	.long	0xa04200
 	.long	0xa0422c
 	.long	0xa04240
@@ -70429,7 +70429,7 @@ kallsyms_offsets:
 	.long	0xd43850
 	.long	0xd43850
 	.long	0xd43850
-	.long	0xd438d5
+	.long	0xd438d6
 	.long	0xd438d8
 	.long	0xdf8000
 	.long	0xdf8000

BIN
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_vmlinux1


BIN
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.tmp_vmlinux2


+ 1 - 1
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/.version

@@ -1 +1 @@
-335
+338

+ 157 - 243
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/arch/arm/boot/dts/.am335x-evm.dtb.dts.tmp

@@ -2,7 +2,7 @@
 # 1 "<built-in>"
 # 1 "<command-line>"
 # 1 "arch/arm/boot/dts/am335x-evm.dts"
-# 9 "arch/arm/boot/dts/am335x-evm.dts"
+# 17 "arch/arm/boot/dts/am335x-evm.dts"
 /dts-v1/;
 
 # 1 "arch/arm/boot/dts/am33xx.dtsi" 1
@@ -1148,9 +1148,9 @@
 };
 
 /include/ "am33xx-clocks.dtsi"
-# 12 "arch/arm/boot/dts/am335x-evm.dts" 2
+# 20 "arch/arm/boot/dts/am335x-evm.dts" 2
 # 1 "./arch/arm/boot/dts/include/dt-bindings/interrupt-controller/irq.h" 1
-# 13 "arch/arm/boot/dts/am335x-evm.dts" 2
+# 21 "arch/arm/boot/dts/am335x-evm.dts" 2
 
 / {
  model = "TI AM335x EVM";
@@ -1162,19 +1162,17 @@
   };
  };
 
- memory@80000000 {
+ memory {
   device_type = "memory";
 
-
   reg = <0x80000000 0x20000000>;
-
  };
 
  chosen {
   bootargs = "console=ttyS0,115200n8 root=/dev/ram0";
  };
 
- vbat: fixedregulator0 {
+ vbat: fixedregulator@0 {
   compatible = "regulator-fixed";
   regulator-name = "vbat";
   regulator-min-microvolt = <5000000>;
@@ -1182,7 +1180,7 @@
   regulator-boot-on;
  };
 
- lis3_reg: fixedregulator1 {
+ lis3_reg: fixedregulator@1 {
   compatible = "regulator-fixed";
   regulator-name = "lis3_reg";
   regulator-boot-on;
@@ -1190,283 +1188,236 @@
 };
 
 
-
 &am33xx_pinmux {
  pinctrl-names = "default";
  pinctrl-0 = <&InitialGPIO>;
  pinctrl-1 = <&clkout2_pin>;
+
  InitialGPIO: InitialGPIO {
   pinctrl-single,pins = <
-   0x110 (((1 << 3)) | 7)
-   0x08C (((1 << 3)) | 7)
-   0x08C (((1 << 3)) | 7)
-   0x080 (((1 << 3)) | 7)
-   0x040 (((1 << 3)) | 7)
-   0x050 (((1 << 3)) | 7)
-   0x058 (((1 << 3)) | 7)
-   0x05C (((1 << 5) | (1 << 3)) | 7)
-   0x064 (((1 << 5) | (1 << 3)) | 7)
-   0x068 (((1 << 5) | (1 << 3)) | 7)
-   0x190 (((1 << 3)) | 7)
-   0x194 (((1 << 5) | (1 << 3)) | 7)
-   0x194 (((1 << 3)) | 7)
-   0x1AC (((1 << 5) | (1 << 3)) | 7)
+
+
+
+   0x144 (((1 << 5) | (1 << 3)) | 7)
    0x1B0 (((1 << 3)) | 7)
-   0x1A0 (((1 << 3)) | 7)
-   0x1A4 (((1 << 3)) | 7)
-   0x198 (((1 << 3)) | 7)
-   0x1A8 (((1 << 3)) | 7)
-   0x1B4 (((1 << 3)) | 7)
-   0x138 (((1 << 5) | (1 << 3)) | 7)
-   0x088 (((1 << 3)) | 7)
-   0x078 (((1 << 3)) | 7)
-   0x084 (((1 << 3)) | 7)
+   0x1B4 (((1 << 5) | (1 << 3)) | 7)
+
 
+   0x08C (((1 << 3)) | 7)
+   0x0A0 (((1 << 3)) | 7)
+   0x0A4 (((1 << 3)) | 7)
+   0x0A8 (((1 << 3)) | 7)
+   0x0AC (((1 << 3)) | 7)
+   0x0B0 (((1 << 3)) | 7)
+   0x0B4 (((1 << 3)) | 7)
+   0x0E8 (((1 << 5) | (1 << 3)) | 7)
+   0x0E0 (((1 << 3)) | 7)
+
+   0x1A8 (((1 << 3)) | 7)
   >;
  };
 
- i2c0_pins_default: i2c0_pins_default {
+ i2c0_pins: pinmux_i2c0_pins {
   pinctrl-single,pins = <
-   ((((0x98c)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x988)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
+   0x188 (((1 << 5) | (1 << 4)) | 0)
+   0x18c (((1 << 5) | (1 << 4)) | 0)
   >;
  };
 
-
-        i2c1_pins: pinmux_i2c1_pins {
-                pinctrl-single,pins = <
-                        0x158 (((1 << 5) | (1 << 4)) | 2)
-                        0x15c (((1 << 5) | (1 << 4)) | 2)
-                >;
-        };
-
-
-
- uart0_pins_default: uart0_pins_default {
+ i2c1_pins: pinmux_i2c1_pins {
   pinctrl-single,pins = <
-   ((((0x970)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x974)) & 0xffff) - (0x0800)) (0 | 0)
+   0x158 (((1 << 5) | (1 << 4)) | 2)
+   0x15c (((1 << 5) | (1 << 4)) | 2)
   >;
  };
 
- uart1_pins_default: uart1_pins_default {
+ uart0_pins: pinmux_uart0_pins {
   pinctrl-single,pins = <
-   ((((0x980)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x984)) & 0xffff) - (0x0800)) (0 | 0)
-   ((((0x978)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 3)) | 0)
-   ((((0x97c)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
+   0x170 (((1 << 5) | (1 << 4)) | 0)
+   0x174 (0 | 0)
   >;
  };
 
- uart2_pins_default: uart2_pins_default {
+ uart1_pins: pinmux_uart1_pins {
   pinctrl-single,pins = <
-   ((((0x92c)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 1)
-   ((((0x930)) & 0xffff) - (0x0800)) (0 | 1)
+   0x184 (0 | 0)
+   0x180 (((1 << 5) | (1 << 4)) | 0)
   >;
  };
 
- uart3_pins_default: uart3_pins_default {
+ uart2_pins: pinmux_uart2_pins {
   pinctrl-single,pins = <
-   ((((0x934)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 1)
-   ((((0x964)) & 0xffff) - (0x0800)) (0 | 1)
+   0x150 (((1 << 5) | (1 << 4)) | 1)
+   0x154 (0 | 1)
   >;
  };
 
- uart5_pins_default: uart5_pins_default {
+ uart3_pins: pinmux_uart3_pins {
   pinctrl-single,pins = <
-   ((((0x908)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 3)
-   ((((0x918)) & 0xffff) - (0x0800)) (0 | 3)
+   0x160 (((1 << 5) | (1 << 4)) | 1)
+   0x164 (0 | 1)
   >;
  };
-
+# 136 "arch/arm/boot/dts/am335x-evm.dts"
  clkout2_pin: pinmux_clkout2_pin {
   pinctrl-single,pins = <
-   ((((0x9b4)) & 0xffff) - (0x0800)) (0 | 3)
+   0x1b4 (0 | 3)
   >;
  };
 
  nandflash_pins_default: nandflash_pins_default {
   pinctrl-single,pins = <
-   ((((0x81c)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x818)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x814)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x810)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x80c)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x808)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x804)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x800)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x870)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x874)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
-   ((((0x890)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
-   ((((0x894)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
-   ((((0x898)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
-   ((((0x89c)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
-   ((((0x87c)) & 0xffff) - (0x0800)) (((1 << 3)) | 0)
+   0x0 (((1 << 5) | (1 << 4)) | 0)
+   0x4 (((1 << 5) | (1 << 4)) | 0)
+   0x8 (((1 << 5) | (1 << 4)) | 0)
+   0xc (((1 << 5) | (1 << 4)) | 0)
+   0x10 (((1 << 5) | (1 << 4)) | 0)
+   0x14 (((1 << 5) | (1 << 4)) | 0)
+   0x18 (((1 << 5) | (1 << 4)) | 0)
+   0x1c (((1 << 5) | (1 << 4)) | 0)
+   0x70 (((1 << 5) | (1 << 4)) | 0)
+   0x74 (((1 << 5) | (1 << 4)) | 7)
+   0x7c (((1 << 3)) | 0)
+   0x90 (((1 << 3)) | 0)
+   0x94 (((1 << 3)) | 0)
+   0x98 (((1 << 3)) | 0)
+   0x9c (((1 << 3)) | 0)
   >;
  };
 
-
  nandflash_pins_sleep: nandflash_pins_sleep {
   pinctrl-single,pins = <
-   ((((0x81c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x818)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x814)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x810)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x80c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x808)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x804)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x800)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x870)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x874)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x890)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x894)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x898)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x89c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x87c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
+   0x0 (((1 << 5)) | 7)
+   0x4 (((1 << 5)) | 7)
+   0x8 (((1 << 5)) | 7)
+   0xc (((1 << 5)) | 7)
+   0x10 (((1 << 5)) | 7)
+   0x14 (((1 << 5)) | 7)
+   0x18 (((1 << 5)) | 7)
+   0x1c (((1 << 5)) | 7)
+   0x70 (((1 << 5)) | 7)
+   0x74 (((1 << 5)) | 7)
+   0x7c (((1 << 5)) | 7)
+   0x90 (((1 << 5)) | 7)
+   0x94 (((1 << 5)) | 7)
+   0x98 (((1 << 5)) | 7)
+   0x9c (((1 << 5)) | 7)
   >;
  };
 
  cpsw_default: cpsw_default {
   pinctrl-single,pins = <
-   ((((0x90c)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x914)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x928)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x924)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x940)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x93c)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x944)) & 0xffff) - (0x0800)) (((1 << 5)) | 0)
-
-   ((((0x90c)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x914)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x928)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x924)) & 0xffff) - (0x0800)) (0 | 1)
-   ((((0x940)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x93c)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x944)) & 0xffff) - (0x0800)) (((1 << 5)) | 0)
-  >;
- };
 
 
- cpsw_sleep: cpsw_sleep {
-  pinctrl-single,pins = <
-   ((((0x90c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x914)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x928)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x924)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x940)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x93c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x944)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-
-
-   ((((0x90c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x914)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x928)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x924)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x940)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x93c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x944)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-  >;
- };
 
- davinci_mdio_default: davinci_mdio_default {
-  pinctrl-single,pins = <
-   ((((0x94c)) & 0xffff) - (0x0800)) (((1 << 4)) | 0 | 0)
-   ((((0x948)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-  >;
- };
 
+   0x110 (((1 << 5) | (1 << 4)) | 0)
+   0x118 (((1 << 5) | (1 << 4)) | 0)
+   0x12c (((1 << 5) | (1 << 4)) | 0)
+   0x130 (((1 << 5) | (1 << 4)) | 0)
+   0x134 (((1 << 5) | (1 << 4)) | 0)
+   0x138 (((1 << 5) | (1 << 4)) | 0)
+   0x13c (((1 << 5) | (1 << 4)) | 0)
+   0x140 (((1 << 5) | (1 << 4)) | 0)
+   0x114 (0 | 0)
+   0x11c (0 | 0)
+   0x120 (0 | 0)
+   0x124 (0 | 0)
+   0x128 (0 | 0)
 
- davinci_mdio_sleep: davinci_mdio_sleep {
-  pinctrl-single,pins = <
-   ((((0x94c)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
-   ((((0x948)) & 0xffff) - (0x0800)) (((1 << 5)) | 7)
   >;
  };
 
- mmc1_pins_default: mmc1_pins_default {
+ cpsw_sleep: cpsw_sleep {
   pinctrl-single,pins = <
-   ((((0x900)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x904)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x8fc)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x8f8)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x8f4)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x8f0)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x960)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 3)) | 7)
+
+   0x114 (((1 << 5)) | 7)
+   0x118 (((1 << 5)) | 7)
+   0x11c (((1 << 5)) | 7)
+   0x120 (((1 << 5)) | 7)
+   0x124 (((1 << 5)) | 7)
+   0x128 (((1 << 5)) | 7)
+   0x12c (((1 << 5)) | 7)
+   0x130 (((1 << 5)) | 7)
+   0x134 (((1 << 5)) | 7)
+   0x138 (((1 << 5)) | 7)
+   0x13c (((1 << 5)) | 7)
+   0x140 (((1 << 5)) | 7)
+
   >;
  };
 
- dcan0_pins_default: dcan0_pins_default {
+
+ davinci_mdio_default: davinci_mdio_default {
   pinctrl-single,pins = <
-   ((((0x920)) & 0xffff) - (0x0800)) (((1 << 5)) | 1)
-   ((((0x91c)) & 0xffff) - (0x0800)) (((1 << 4)) | 1)
+
+   0x148 (((1 << 5) | (1 << 4)) | 0 | 0)
+   0x14c (((1 << 4)) | 0)
   >;
  };
 
- dcan1_pins_default: dcan1_pins_default {
+ davinci_mdio_sleep: davinci_mdio_sleep {
   pinctrl-single,pins = <
-   ((((0x96c)) & 0xffff) - (0x0800)) (((1 << 5)) | 2)
-   ((((0x968)) & 0xffff) - (0x0800)) (((1 << 4)) | 2)
+
+   0x148 (((1 << 5)) | 7)
+   0x14c (((1 << 5)) | 7)
   >;
  };
 
-
-
- spi0_pins_default: spi0_pins_default {
+ mmc1_pins_default: pinmux_mmc1_pins {
   pinctrl-single,pins = <
-   ((((0x950)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x954)) & 0xffff) - (0x0800)) (((1 << 5) | (1 << 4)) | 0)
-   ((((0x958)) & 0xffff) - (0x0800)) (((1 << 4)) | 0)
-   ((((0x95c)) & 0xffff) - (0x0800)) (((1 << 4)) | 0)
+   0x0F0 (((1 << 5) | (1 << 4)) | 0)
+   0x0F4 (((1 << 5) | (1 << 4)) | 0)
+   0x0F8 (((1 << 5) | (1 << 4)) | 0)
+   0x0FC (((1 << 5) | (1 << 4)) | 0)
+   0x100 (((1 << 5) | (1 << 4)) | 0)
+   0x104 (((1 << 5) | (1 << 4)) | 0)
+   0x1AC (((1 << 5) | (1 << 4)) | 7)
   >;
  };
 
- ehrpwm1_pins: ehrpwm1_pins {
+ dcan0_pins_default: dcan0_pins_default {
   pinctrl-single,pins = <
-   0x048 (((1 << 3)) | 6)
+   0x178 (((1 << 4)) | 2)
+   0x17C (((1 << 5)) | 2)
   >;
  };
-
+# 280 "arch/arm/boot/dts/am335x-evm.dts"
 };
 
 
+
 &uart0 {
  pinctrl-names = "default";
- pinctrl-0 = <&uart0_pins_default>;
+ pinctrl-0 = <&uart0_pins>;
 
  status = "okay";
 };
 
 &uart1 {
  pinctrl-names = "default";
- pinctrl-0 = <&uart1_pins_default>;
+ pinctrl-0 = <&uart1_pins>;
 
  status = "okay";
 };
 
 &uart2 {
  pinctrl-names = "default";
- pinctrl-0 = <&uart2_pins_default>;
+ pinctrl-0 = <&uart2_pins>;
 
  status = "okay";
 };
 
 &uart3 {
  pinctrl-names = "default";
- pinctrl-0 = <&uart3_pins_default>;
-
- status = "okay";
-};
-
-&uart5 {
- pinctrl-names = "default";
- pinctrl-0 = <&uart5_pins_default>;
+ pinctrl-0 = <&uart3_pins>;
 
  status = "okay";
 };
-
+# 319 "arch/arm/boot/dts/am335x-evm.dts"
 &i2c0 {
  pinctrl-names = "default";
- pinctrl-0 = <&i2c0_pins_default>;
+ pinctrl-0 = <&i2c0_pins>;
 
  status = "okay";
  clock-frequency = <400000>;
@@ -1479,25 +1430,22 @@
 
 
 
-
 };
 
-
 &i2c1 {
-        pinctrl-names = "default";
-        pinctrl-0 = <&i2c1_pins>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins>;
 
-        status = "okay";
-        clock-frequency = <400000>;
+ status = "okay";
+ clock-frequency = <400000>;
 
-        rtc0: rtc@51 {
+ rtc0: rtc@51 {
                 compatible = "nxp,pcf85063";
                 reg = <0x51>;
         };
 
 };
 
-
 &usb {
  status = "okay";
 };
@@ -1530,9 +1478,9 @@
 &elm {
  status = "okay";
 };
-# 406 "arch/arm/boot/dts/am335x-evm.dts"
+# 403 "arch/arm/boot/dts/am335x-evm.dts"
 &gpmc {
-  status = "okay";
+ status = "okay";
  pinctrl-names = "default", "sleep";
  pinctrl-0 = <&nandflash_pins_default>;
  pinctrl-1 = <&nandflash_pins_sleep>;
@@ -1636,7 +1584,6 @@
  };
 };
 
-
 # 1 "arch/arm/boot/dts/tps65910.dtsi" 1
 # 14 "arch/arm/boot/dts/tps65910.dtsi"
 &tps {
@@ -1717,8 +1664,8 @@
   };
  };
 };
-# 513 "arch/arm/boot/dts/am335x-evm.dts" 2
-# 533 "arch/arm/boot/dts/am335x-evm.dts"
+# 509 "arch/arm/boot/dts/am335x-evm.dts" 2
+
 &tps {
  vcc1-supply = <&vbat>;
  vcc2-supply = <&vbat>;
@@ -1801,7 +1748,6 @@
  pinctrl-0 = <&cpsw_default>;
  pinctrl-1 = <&cpsw_sleep>;
  status = "okay";
- dual_emac;
 };
 
 &davinci_mdio {
@@ -1809,32 +1755,26 @@
  pinctrl-0 = <&davinci_mdio_default>;
  pinctrl-1 = <&davinci_mdio_sleep>;
  status = "okay";
-};
 
-&cpsw_emac0 {
- phy_id = <&davinci_mdio>, <0>;
-  phy-mode = "rmii";
 };
 
-&cpsw_emac1 {
+&cpsw_emac0 {
  phy_id = <&davinci_mdio>, <1>;
-  phy-mode = "rmii";
+  phy-mode = "mii";
+
 };
+# 615 "arch/arm/boot/dts/am335x-evm.dts"
+&tscadc {
+ status = "okay";
+
+
+
 
 
 
-&tscadc {
- status = "okay";
- tsc {
-  ti,wires = <4>;
-  ti,x-plate-resistance = <200>;
-  ti,coordinate-readouts = <5>;
-  ti,wire-config = <0x00 0x11 0x22 0x33>;
-  ti,charge-delay = <0x400>;
- };
 
  adc {
-  ti,adc-channels = <4 5 6 7>;
+  ti,adc-channels = <0 1 2 3 4 5 6 7>;
  };
 };
 
@@ -1844,9 +1784,15 @@
  bus-width = <4>;
  pinctrl-names = "default";
  pinctrl-0 = <&mmc1_pins_default>;
- cd-gpios = <&gpio0 6 1>;
+ cd-gpios = <&gpio3 21 1>;
 };
 
+&edma {
+ ti,edma-xbar-event-map = /bits/ 16 <1 12
+         2 13>;
+};
+
+
 &sham {
  status = "okay";
 };
@@ -1855,7 +1801,7 @@
  status = "okay";
 };
 
-&wkup_m3_ipc {
+&wkup_m3 {
  ti,scale-data-fw = "am335x-evm-scale-data.bin";
 };
 
@@ -1864,35 +1810,3 @@
  pinctrl-names = "default";
  pinctrl-0 = <&dcan0_pins_default>;
 };
-
-&dcan1 {
- status = "okay";
- pinctrl-names = "default";
- pinctrl-0 = <&dcan1_pins_default>;
-};
-
-&epwmss1 {
- status = "okay";
-
- ehrpwm1: pwm@48302200 {
-  status = "okay";
-  pinctrl-names = "default";
-  pinctrl-0 = <&ehrpwm1_pins>;
- };
-};
-# 702 "arch/arm/boot/dts/am335x-evm.dts"
-&spi0 {
- status = "okay";
- pinctrl-names = "default";
- pinctrl-0 = <&spi0_pins_default>;
- qca7000@0 {
-  compatible = "qca,qca7000";
-  reg = <0>;
-  interrupt-parent = <&gpio0>;
-  interrupts = <19 1>;
-  spi-cpha;
-  spi-cpol;
-  spi-max-frequency = <10000000>;
-  qca,legacy-mode = <0>;
- };
-};

+ 219 - 289
board-support/linux-4.9.59+gitAUTOINC+a75d8e9305-ga75d8e9305/arch/arm/boot/dts/am335x-evm.dts

@@ -4,8 +4,16 @@
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
- */
+ 
+#define PIN_OUTPUT		(PULL_DISABLE)
+#define PIN_OUTPUT_PULLUP	(PULL_UP)
+#define PIN_OUTPUT_PULLDOWN	0
+#define PIN_INPUT		(INPUT_EN | PULL_DISABLE)
+#define PIN_INPUT_PULLUP	(INPUT_EN | PULL_UP)
+#define PIN_INPUT_PULLDOWN	(INPUT_EN)
+
 
+ */
 /dts-v1/;
 
 #include "am33xx.dtsi"
@@ -21,19 +29,17 @@
 		};
 	};
 
-	memory@80000000 {
+	memory {
 		device_type = "memory";
-		/* +++ Seamus,512MB DDR ,20190318 ---*/
 		/*reg = <0x80000000 0x10000000>;*/ /* 256 MB */
-		reg = <0x80000000 0x20000000>; /* 512 MB */ 
-		/* --- Seamus,ramdisk ,20190318 ---*/
-	};
-	/* +++ Seamus,512MB DDR ,20190318 ---*/
-	chosen {		  
-		bootargs = "console=ttyS0,115200n8 root=/dev/ram0";
-	};
-	/* --- Seamus,ramdisk ,20190318 ---*/
-	vbat: fixedregulator0 {
+		reg = <0x80000000 0x20000000>; /* 512 MB */ /* +++ vern,512MB DDR ,20181030 ---*/
+	};
+	/* +++ vern,ramdisk,20181030 +++*/
+	chosen {  
+		bootargs = "console=ttyS0,115200n8 root=/dev/ram0";  
+	};  
+	/* --- vern,ramdisk ,20181030 ---*/
+	vbat: fixedregulator@0 {
 		compatible = "regulator-fixed";
 		regulator-name = "vbat";
 		regulator-min-microvolt = <5000000>;
@@ -41,291 +47,278 @@
 		regulator-boot-on;
 	};
 
-	lis3_reg: fixedregulator1 {
+	lis3_reg: fixedregulator@1 {
 		compatible = "regulator-fixed";
 		regulator-name = "lis3_reg";
 		regulator-boot-on;
 	};
 };
 
-
-/* +++ Seamus,Pinmux ,20190318 +++*/
+/******************** Pin Mux ********************/
 &am33xx_pinmux {
 	pinctrl-names = "default";
 	pinctrl-0 = <&InitialGPIO>; 
 	pinctrl-1 = <&clkout2_pin>;
+	
 	InitialGPIO: InitialGPIO {
 		pinctrl-single,pins = <
-			0x110 (PIN_OUTPUT | MUX_MODE7)	/* MII1_RX_ER.GPIO3_2 */
-			0x08C (PIN_OUTPUT | MUX_MODE7)	/* GPMC_CLK.GPIO2_1 */
-			0x08C (PIN_OUTPUT | MUX_MODE7)	/* GPMC_CLK.GPIO2_1 */
-			0x080 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_CSn1.GPIO1_30 */
-			0x040 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_A0.GPIO1_16 */
-			0x050 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_A4.GPIO1_20 */
-			0x058 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_A6.GPIO1_22 */
-			0x05C (PIN_INPUT | MUX_MODE7)	/* GPMC_A7.GPIO1_23 */
-			0x064 (PIN_INPUT | MUX_MODE7)	/* GPMC_A9.GPIO1_25 */
-			0x068 (PIN_INPUT | MUX_MODE7)	/* GPMC_A10.GPIO1_26 */
-			0x190 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_ACLKX.GPIO3_14 */
-			0x194 (PIN_INPUT | MUX_MODE7)	/* MCASP0_FSX.GPIO3_15 */
-			0x194 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_AHCLKR.GPIO3_17 */
-			0x1AC (PIN_INPUT | MUX_MODE7)	/* MCASP0_AHCLKX.GPIO3_21 */
-			0x1B0 (PIN_OUTPUT | MUX_MODE7)	/* XDMA_EVENT_INTR0.GPIO0_19 */
-			0x1A0 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_ACLKR.GPIO3_18 */
-			0x1A4 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_FSR.GPIO3_19 */
-			0x198 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_AXR0.GPIO3_16 */
-			0x1A8 (PIN_OUTPUT | MUX_MODE7)	/* MCASP0_AXR1.GPIO3_20 */
-			0x1B4 (PIN_OUTPUT | MUX_MODE7)	/* XDMA_EVENT_INTR1.GPIO0_20 */
-			0x138 (PIN_INPUT | MUX_MODE7)	/* MII1_RXD2.GPIO2_19*/
-			0x088 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_CSn3.GPIO2_0*/
-			0x078 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_ben1.GPIO1_28*/
-			0x084 (PIN_OUTPUT | MUX_MODE7)	/* GPMC_CSn2.GPIO1_31*/
-
+		
+			/** Offset: 0x800 */
+			/** GPIO 0 */ 
+			0x144 (PIN_INPUT | MUX_MODE7)    			/* RMII1_REF_CLK		=>	GPIO0_29 */	/*USB 0 OCP detection*/
+			0x1B0 (PIN_OUTPUT | MUX_MODE7)			/*XDMA_EVENT_INTR0	=>	GPIO0_19 */	/*AM_RFID_RST*/
+			0x1B4 (PIN_INPUT | MUX_MODE7)			/*XDMA_EVENT_INTR1	=>	GPIO0_20 */	/*AM_RFID_ICC*/
+			/** GPIO 1 */			
+			/** GPIO 2 */
+			0x08C (PIN_OUTPUT | MUX_MODE7)			/*GPMC_CLK	=>	GPIO2_1*/	/*Speaker*/
+			0x0A0 (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA0	=>	GPIO2_6*/	/*Panel LED control-BB_LEDR1*/
+			0x0A4 (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA1	=>	GPIO2_7*/	/*Panel LED control-BB_LEDG1*/
+			0x0A8 (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA2	=>	GPIO2_8*/	/*Panel LED control-BB_LEDB1*/
+			0x0AC (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA3	=>	GPIO2_9*/	/*Panel LED control-BB_LEDR2*/
+			0x0B0 (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA4	=>	GPIO2_10*/	/*Panel LED control-BB_LEDG2*/
+			0x0B4 (PIN_OUTPUT | MUX_MODE7)			/*LCD_DATA5	=>	GPIO2_11*/	/*Panel LED control-BB_LEDB2*/
+			0x0E8 (PIN_INPUT | MUX_MODE7)			/*LCD_PCLK	=>	GPIO2_24*/	/*communication board proximity*/
+			0x0E0 (PIN_OUTPUT | MUX_MODE7)			/*LCD_VSYNC	=>	GPIO2_22*/	/*Breath LED*/
+			/** GPIO 3 */
+			0x1A8 (PIN_OUTPUT | MUX_MODE7)			/* MCASP0_AXR1	=>	GPIO3_20 */	/*control MCU to output CP PWM*/
 		>;
 	};
-
-	i2c0_pins_default: i2c0_pins_default {
+	
+	i2c0_pins: pinmux_i2c0_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x98c, PIN_INPUT_PULLUP | MUX_MODE0) /* (C16) I2C0_SCL.I2C0_SCL */
-			AM33XX_IOPAD(0x988, PIN_INPUT_PULLUP | MUX_MODE0) /* (C17) I2C0_SDA.I2C0_SDA */
+			0x188 (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
+			0x18c (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_scl.i2c0_scl */
 		>;
 	};
-
 #if 1
-        i2c1_pins: pinmux_i2c1_pins {
-                pinctrl-single,pins = <
-                        0x158 (PIN_INPUT_PULLUP | MUX_MODE2)    /* spi0_d1.i2c1_sda */
-                        0x15c (PIN_INPUT_PULLUP | MUX_MODE2)    /* spi0_cs0.i2c1_scl */
-                >;
-        };
+	i2c1_pins: pinmux_i2c1_pins {
+		pinctrl-single,pins = <
+			0x158 (PIN_INPUT_PULLUP | MUX_MODE2)	/* spi0_d1.i2c1_sda */
+			0x15c (PIN_INPUT_PULLUP | MUX_MODE2)	/* spi0_cs0.i2c1_scl */
+		>;
+	};
 #endif
-
-
-	uart0_pins_default: uart0_pins_default {
+	uart0_pins: pinmux_uart0_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) /* (E15) uart0_rxd.uart0_rxd */
-			AM33XX_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* (E16) uart0_txd.uart0_txd */
+			0x170 (PIN_INPUT_PULLUP | MUX_MODE0)		/* uart0_rxd	=>	uart0_rxd */
+			0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* uart0_txd	=>	uart0_txd */
 		>;
 	};
 	
-	uart1_pins_default: uart1_pins_default {
+	uart1_pins: pinmux_uart1_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE0) /* (D16) uart1_rxd.uart1_rxd */
-			AM33XX_IOPAD(0x984, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* (D15) uart1_txd.uart1_txd */
-			AM33XX_IOPAD(0x978, PIN_INPUT | MUX_MODE0) /* (D18) uart1_ctsn.uart1_ctsn */
-			AM33XX_IOPAD(0x97c, PIN_OUTPUT | MUX_MODE0) /* (D17) uart1_rtsn.uart1_rtsn */
+			0x184 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) 		/* uart1_txd	=>	uart1_txd */
+			0x180 (PIN_INPUT_PULLUP | MUX_MODE0)			/* uart1_rxd	=>	uart1_rxd */
 		>;
 	};
-	
-	uart2_pins_default: uart2_pins_default {
+
+	uart2_pins: pinmux_uart2_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x92c, PIN_INPUT_PULLUP | MUX_MODE1) /* (K18) gmii1_txclk.uart2_rxd */
-			AM33XX_IOPAD(0x930, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (L18) gmii1_rxclk.uart2_txd */
+			0x150 (PIN_INPUT_PULLUP | MUX_MODE1)			/* SPI0_SCLK	=>	UART2_RXD */
+			0x154 (PIN_OUTPUT_PULLDOWN | MUX_MODE1)		/* SPI0_D0	=>	UART2_TXD */
 		>;
 	};
 	
-	uart3_pins_default: uart3_pins_default {
+	uart3_pins: pinmux_uart3_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x934, PIN_INPUT_PULLUP | MUX_MODE1) /* (L17) gmii1_rxd3.uart3_rxd */
-			AM33XX_IOPAD(0x964, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (C18) eCAP0_in_PWM0_out.uart3_txd */
+			0x160 (PIN_INPUT_PULLUP | MUX_MODE1)		/* SPI0_CS1				=>	uart3_rxd */
+			0x164 (PIN_OUTPUT_PULLDOWN | MUX_MODE1)	/* ECAP0_IN_PWM0_OUT		=>	uart3_txd */
 		>;
 	};
-
-	uart5_pins_default: uart5_pins_default {
+#if 0
+	uart5_pins: pinmux_uart5_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x908, PIN_INPUT_PULLUP | MUX_MODE3) /* (H16) gmii1_col.uart5_rxd */
-			AM33XX_IOPAD(0x918, PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* (J17) gmii1_rxdv.uart5_txd */
+			0x0C0 (PIN_INPUT_PULLUP | MUX_MODE4)		/* LCD_DATA8	=>	UART5_RXD*/
+			0x0C4 (PIN_OUTPUT_PULLDOWN | MUX_MODE4)	/* LCD_DATA9	=>	UART5_TXD*/
 		>;
 	};
-	
+#endif	
 	clkout2_pin: pinmux_clkout2_pin {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x9b4, PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
+			0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
 		>;
 	};
-	
+
 	nandflash_pins_default: nandflash_pins_default {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE0) /* (T9) gpmc_ad7.gpmc_ad7 */
-			AM33XX_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE0) /* (R9) gpmc_ad6.gpmc_ad6 */
-			AM33XX_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE0) /* (V8) gpmc_ad5.gpmc_ad5 */
-			AM33XX_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE0) /* (U8) gpmc_ad4.gpmc_ad4 */
-			AM33XX_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE0) /* (T8) gpmc_ad3.gpmc_ad3 */
-			AM33XX_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE0) /* (R8) gpmc_ad2.gpmc_ad2 */
-			AM33XX_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE0) /* (V7) gpmc_ad1.gpmc_ad1 */
-			AM33XX_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE0) /* (U7) gpmc_ad0.gpmc_ad0 */
-			AM33XX_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0) /* (T17) gpmc_wait0.gpmc_wait0 */
-			AM33XX_IOPAD(0x874, PIN_OUTPUT | MUX_MODE0) /* (U17) gpmc_wpn.gpmc_wpn */
-			AM33XX_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0) /* (R7) gpmc_advn_ale.gpmc_advn_ale */
-			AM33XX_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0) /* (T7) gpmc_oen_ren.gpmc_oen_ren */
-			AM33XX_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0) /* (U6) gpmc_wen.gpmc_wen */
-			AM33XX_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0) /* (T6) gpmc_be0n_cle.gpmc_be0n_cle */
-			AM33XX_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0) /* (V6) gpmc_csn0.gpmc_csn0 */
+			0x0 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad0.gpmc_ad0 */
+			0x4 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad1.gpmc_ad1 */
+			0x8 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad2.gpmc_ad2 */
+			0xc (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad3.gpmc_ad3 */
+			0x10 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad4.gpmc_ad4 */
+			0x14 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad5.gpmc_ad5 */
+			0x18 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad6.gpmc_ad6 */
+			0x1c (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_ad7.gpmc_ad7 */
+			0x70 (PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_wait0.gpmc_wait0 */
+			0x74 (PIN_INPUT_PULLUP | MUX_MODE7)	/* gpmc_wpn.gpio0_31 */
+			0x7c (PIN_OUTPUT | MUX_MODE0)		/* gpmc_csn0.gpmc_csn0  */
+			0x90 (PIN_OUTPUT | MUX_MODE0)		/* gpmc_advn_ale.gpmc_advn_ale */
+			0x94 (PIN_OUTPUT | MUX_MODE0)		/* gpmc_oen_ren.gpmc_oen_ren */
+			0x98 (PIN_OUTPUT | MUX_MODE0)		/* gpmc_wen.gpmc_wen */
+			0x9c (PIN_OUTPUT | MUX_MODE0)		/* gpmc_be0n_cle.gpmc_be0n_cle */
 		>;
 	};
 
-	/* Optional sleep pin settings. Must manually enter values in the below skeleton. */
 	nandflash_pins_sleep: nandflash_pins_sleep {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x81c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T9) gpmc_ad7.gpmc_ad7 */
-			AM33XX_IOPAD(0x818,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (R9) gpmc_ad6.gpmc_ad6 */
-			AM33XX_IOPAD(0x814,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V8) gpmc_ad5.gpmc_ad5 */
-			AM33XX_IOPAD(0x810,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U8) gpmc_ad4.gpmc_ad4 */
-			AM33XX_IOPAD(0x80c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T8) gpmc_ad3.gpmc_ad3 */
-			AM33XX_IOPAD(0x808,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (R8) gpmc_ad2.gpmc_ad2 */
-			AM33XX_IOPAD(0x804,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V7) gpmc_ad1.gpmc_ad1 */
-			AM33XX_IOPAD(0x800,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U7) gpmc_ad0.gpmc_ad0 */
-			AM33XX_IOPAD(0x870,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T17) gpmc_wait0.gpmc_wait0 */
-			AM33XX_IOPAD(0x874,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U17) gpmc_wpn.gpmc_wpn */
-			AM33XX_IOPAD(0x890,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (R7) gpmc_advn_ale.gpmc_advn_ale */
-			AM33XX_IOPAD(0x894,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T7) gpmc_oen_ren.gpmc_oen_ren */
-			AM33XX_IOPAD(0x898,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U6) gpmc_wen.gpmc_wen */
-			AM33XX_IOPAD(0x89c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T6) gpmc_be0n_cle.gpmc_be0n_cle */
-			AM33XX_IOPAD(0x87c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V6) gpmc_csn0.gpmc_csn0 */
+			0x0 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x4 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x8 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0xc (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x10 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x14 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x18 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x1c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x70 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x74 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x7c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x90 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x94 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x98 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x9c (PIN_INPUT_PULLDOWN | MUX_MODE7)
 		>;
 	};
-	
+
 	cpsw_default: cpsw_default {
-		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (H17) gmii1_crs.rmii1_crs_dv */
-			AM33XX_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (J16) gmii1_txen.rmii1_txen */
-			AM33XX_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (K17) gmii1_txd0.rmii1_txd0 */
-			AM33XX_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (K16) gmii1_txd1.rmii1_txd1 */
-			AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (M16) gmii1_rxd0.rmii1_rxd0 */
-			AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (L15) gmii1_rxd1.rmii1_rxd1 */
-			AM33XX_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE0) /* (H18) rmii1_refclk.rmii1_refclk */
-			
-			AM33XX_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (H17) gmii1_crs.rmii1_crs_dv */
-			AM33XX_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (J16) gmii1_txen.rmii1_txen */
-			AM33XX_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (K17) gmii1_txd0.rmii1_txd0 */
-			AM33XX_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* (K16) gmii1_txd1.rmii1_txd1 */
-			AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (M16) gmii1_rxd0.rmii1_rxd0 */
-			AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (L15) gmii1_rxd1.rmii1_rxd1 */
-			AM33XX_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE0) /* (H18) rmii1_refclk.rmii1_refclk */
+		pinctrl-single,pins = <					
+		
+			/* Slave 1 */
+			//0x108 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* MII1_COL.gmii1_col */
+			//0x10C(PIN_INPUT_PULLDOWN | MUX_MODE0)		/* MII1_CRS.MII1_CRS */
+			0x110 (PIN_INPUT_PULLUP | MUX_MODE0)		/* MII1_RX_ER.gmii1_rxerr */
+			0x118 (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxdv.mii1_rxdv */
+			0x12c (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_txclk.mii1_txclk */
+			0x130 (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxclk.mii1_rxclk */
+			0x134 (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxd3.rgmii1_rd3 */
+			0x138 (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxd2.rgmii1_rd2 */
+			0x13c (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxd1.rgmii1_rd1 */
+			0x140 (PIN_INPUT_PULLUP | MUX_MODE0)		/* mii1_rxd0.rgmii1_rd0 */	
+			0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txen.mii1_txen */
+			0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd3.rgmii1_td3 */
+			0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd2.rgmii1_td2 */
+			0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd1.rgmii1_td1 */
+			0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd0.rgmii1_td0 */      
+
 		>;
 	};
-	
-		/* Optional sleep pin settings. Must manually enter values in the below skeleton. */
+
 	cpsw_sleep: cpsw_sleep {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x90c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (H17) gmii1_crs.rmii1_crs_dv */
-			AM33XX_IOPAD(0x914,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (J16) gmii1_txen.rmii1_txen */
-			AM33XX_IOPAD(0x928,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (K17) gmii1_txd0.rmii1_txd0 */
-			AM33XX_IOPAD(0x924,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (K16) gmii1_txd1.rmii1_txd1 */
-			AM33XX_IOPAD(0x940,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (M16) gmii1_rxd0.rmii1_rxd0 */
-			AM33XX_IOPAD(0x93c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (L15) gmii1_rxd1.rmii1_rxd1 */
-			AM33XX_IOPAD(0x944,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (H18) rmii1_refclk.rmii1_refclk */
-			
+			/* Slave 1 reset value */
+			0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)		
 			
-			AM33XX_IOPAD(0x90c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (H17) gmii1_crs.rmii1_crs_dv */
-			AM33XX_IOPAD(0x914,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (J16) gmii1_txen.rmii1_txen */
-			AM33XX_IOPAD(0x928,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (K17) gmii1_txd0.rmii1_txd0 */
-			AM33XX_IOPAD(0x924,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (K16) gmii1_txd1.rmii1_txd1 */
-			AM33XX_IOPAD(0x940,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (M16) gmii1_rxd0.rmii1_rxd0 */
-			AM33XX_IOPAD(0x93c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (L15) gmii1_rxd1.rmii1_rxd1 */
-			AM33XX_IOPAD(0x944,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (H18) rmii1_refclk.rmii1_refclk */
 		>;
 	};
 
+
 	davinci_mdio_default: davinci_mdio_default {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* (M18) mdio_clk.mdio_clk */
-			AM33XX_IOPAD(0x948, PIN_INPUT_PULLUP | MUX_MODE0) /* (M17) mdio_data.mdio_data */
+			/* MDIO */
+			0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
+			0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
 		>;
 	};
 
-	/* Optional sleep pin settings. Must manually enter values in the below skeleton. */
 	davinci_mdio_sleep: davinci_mdio_sleep {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x94c,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (M18) mdio_clk.mdio_clk */
-			AM33XX_IOPAD(0x948,PIN_INPUT_PULLDOWN | MUX_MODE7) /* (M17) mdio_data.mdio_data */
+			/* MDIO reset value */
+			0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
+			0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
 		>;
 	};
-	
-	mmc1_pins_default: mmc1_pins_default {
+
+	mmc1_pins_default: pinmux_mmc1_pins {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* (G17) mmc0_clk.mmc0_clk */
-			AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* (G18) mmc0_cmd.mmc0_cmd */
-			AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* (G16) mmc0_dat0.mmc0_dat0 */
-			AM33XX_IOPAD(0x8f8, PIN_INPUT_PULLUP | MUX_MODE0) /* (G15) mmc0_dat1.mmc0_dat1 */
-			AM33XX_IOPAD(0x8f4, PIN_INPUT_PULLUP | MUX_MODE0) /* (F18) mmc0_dat2.mmc0_dat2 */
-			AM33XX_IOPAD(0x8f0, PIN_INPUT_PULLUP | MUX_MODE0) /* (F17) mmc0_dat3.mmc0_dat3 */
-			AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* (C15) spi0_cs1.mmc0_sdcd gpio0_6*/
+			0x0F0 (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_dat3.mmc0_dat3 */
+			0x0F4 (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_dat2.mmc0_dat2 */
+			0x0F8 (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_dat1.mmc0_dat1 */
+			0x0FC (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_dat0.mmc0_dat0 */
+			0x100 (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_clk.mmc0_clk */
+			0x104 (PIN_INPUT_PULLUP | MUX_MODE0)    	/* mmc0_cmd.mmc0_cmd */
+			0x1AC (PIN_INPUT_PULLUP | MUX_MODE7)	/* MCASP0_AHCLKX.GPIO3_21 */
 		>;
 	};
-	
+
 	dcan0_pins_default: dcan0_pins_default {
-		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE1) /* (K15) gmii1_txd2.dcan0_rx */
-			AM33XX_IOPAD(0x91c, PIN_OUTPUT_PULLUP | MUX_MODE1) /* (J18) gmii1_txd3.dcan0_tx */
+		pinctrl-single,pins = <		
+			0x178 (PIN_OUTPUT_PULLUP | MUX_MODE2)			/* uart1_ctsn	=>	d_can0_tx */
+			0x17C (PIN_INPUT_PULLDOWN | MUX_MODE2)		/* uart1_rtsn	=>	d_can0_rx */
 		>;
 	};
-	
+#if 0	
 	dcan1_pins_default: dcan1_pins_default {
 		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x96c, PIN_INPUT_PULLDOWN | MUX_MODE2) /* (E17) uart0_rtsn.dcan1_rx */
-			AM33XX_IOPAD(0x968, PIN_OUTPUT_PULLUP | MUX_MODE2) /* (E18) uart0_ctsn.dcan1_tx */
-		>;
-	};
-	
-	
-	
-	spi0_pins_default: spi0_pins_default {
-		pinctrl-single,pins = <
-			AM33XX_IOPAD(0x950, PIN_INPUT_PULLUP | MUX_MODE0) /* (A17) spi0_sclk.spi0_sclk */
-			AM33XX_IOPAD(0x954, PIN_INPUT_PULLUP | MUX_MODE0) /* (B17) spi0_d0.spi0_d0 */
-			AM33XX_IOPAD(0x958, PIN_OUTPUT_PULLUP | MUX_MODE0) /* (B16) spi0_d1.spi0_d1 */
-			AM33XX_IOPAD(0x95c, PIN_OUTPUT_PULLUP | MUX_MODE0) /* (A16) spi0_cs0.spi0_cs0 */
+			0x168 (PIN_OUTPUT_PULLUP | MUX_MODE2)		/* UART0_CTSn		=>	d_can1_tx */
+			0x16C (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* UART0_RTSn		=>	d_can1_rx */
 		>;
 	};
-	
+
 	ehrpwm1_pins: ehrpwm1_pins {
 		pinctrl-single,pins = <			
-			0x048 (PIN_OUTPUT | MUX_MODE6) /* GPMC_A2.eHRPWM1A */
+			0x0C8 (PIN_OUTPUT | MUX_MODE2) /* LCD_DATA10.eHRPWM1A */
 		>;
 	};
 	
+	ehrpwm2_pins: ehrpwm2_pins {
+		pinctrl-single,pins =< 
+			0x0A4 (PIN_OUTPUT | MUX_MODE3)	/* LCD_DATA1.eHRPWM2B */
+		>;                
+    };	
+	 
+#endif  
 };
 
 
+/******************** Peripheral Init ********************/			
 &uart0 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&uart0_pins_default>;
+	pinctrl-0 = <&uart0_pins>;
 
 	status = "okay";
 };
 
 &uart1 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&uart1_pins_default>;
+	pinctrl-0 = <&uart1_pins>;
 
 	status = "okay";
 };
 
 &uart2 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&uart2_pins_default>;
+	pinctrl-0 = <&uart2_pins>;
 
 	status = "okay";
 };
 
 &uart3 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&uart3_pins_default>;
+	pinctrl-0 = <&uart3_pins>;
 
 	status = "okay";
 };
-
+#if 0
 &uart5 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&uart5_pins_default>;
+	pinctrl-0 = <&uart5_pins>;
 
 	status = "okay";
 };
-
+#endif
 &i2c0 {
 	pinctrl-names = "default";
-	pinctrl-0 = <&i2c0_pins_default>;
+	pinctrl-0 = <&i2c0_pins>;
 
 	status = "okay";
 	clock-frequency = <400000>;
@@ -335,28 +328,25 @@
 	};
 
 /*	rtc0: rtc@51 {
-                compatible = "nxp,pcf85063";
-                reg = <0x51>;
-        };
-*/
+		compatible = "nxp,pcf85063";
+		reg = <0x51>;
+	};*/
 };
-
 #if 1
 &i2c1 {
-        pinctrl-names = "default";
-        pinctrl-0 = <&i2c1_pins>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c1_pins>;
 
-        status = "okay";
-        clock-frequency = <400000>;
+	status = "okay";
+	clock-frequency = <400000>;
 
-        rtc0: rtc@51 {
+	rtc0: rtc@51 {
                 compatible = "nxp,pcf85063";
                 reg = <0x51>;
         };
 
 };
 #endif
-
 &usb {
 	status = "okay";
 };
@@ -389,27 +379,34 @@
 &elm {
 	status = "okay";
 };
-
 #if 0
-&epwmss0 {
-	status = "okay";
+&epwmss1 {
+	status = "okay";      
 
-	ecap0: ecap@48300100 {
+	ehrpwm1: pwm@48302200 {
 		status = "okay";
 		pinctrl-names = "default";
-		pinctrl-0 = <&ecap0_pins>;
+		pinctrl-0 = <&ehrpwm1_pins>;
 	};
 };
-#endif
 
+&epwmss2 {
+	status = "okay";   
 
-&gpmc {
+	ehrpwm2: pwm@48304200 {
 		status = "okay";
+		pinctrl-names = "default";
+		pinctrl-0 = <&ehrpwm2_pins>;
+	};	   
+};
+#endif
+&gpmc {
+	status = "okay";
 	pinctrl-names = "default", "sleep";
 	pinctrl-0 = <&nandflash_pins_default>;
 	pinctrl-1 = <&nandflash_pins_sleep>;
 	/*ranges = <0 0 0x08000000 0x10000000>;*/	/* CS0: NAND */
-	ranges = <0 0 0x08000000 0x80000000>;	/*+++ Seamus,NAND,20190318 ---*/
+	ranges = <0 0 0x08000000 0x80000000>;	/*+++ vern,NAND,20181030 ---*/
 	nand@0,0 {
 		compatible = "ti,omap2-nand";
 		reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
@@ -508,27 +505,7 @@
 	};
 };
 
-
 #include "tps65910.dtsi"
-#if 0
-&mcasp1 {
-	#sound-dai-cells = <0>;
-	pinctrl-names = "default", "sleep";
-	pinctrl-0 = <&mcasp1_pins>;
-	pinctrl-1 = <&mcasp1_pins_sleep>;
-
-	status = "okay";
-
-	op-mode = <0>;          /* MCASP_IIS_MODE */
-	tdm-slots = <2>;
-	/* 4 serializers */
-	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
-		0 0 1 2
-	>;
-	tx-num-evt = <32>;
-	rx-num-evt = <32>;
-};
-#endif
 
 &tps {
 	vcc1-supply = <&vbat>;
@@ -612,7 +589,6 @@
 	pinctrl-0 = <&cpsw_default>;
 	pinctrl-1 = <&cpsw_sleep>;
 	status = "okay";
-	dual_emac;
 };
 
 &davinci_mdio {
@@ -620,32 +596,33 @@
 	pinctrl-0 = <&davinci_mdio_default>;
 	pinctrl-1 = <&davinci_mdio_sleep>;
 	status = "okay";
+	//reset-gpios = <&gpio3 14 GPIO_ACTIVE_LOW>;
 };
 
 &cpsw_emac0 {
-	phy_id = <&davinci_mdio>, <0>;
- 	phy-mode = "rmii";
-};
-
-&cpsw_emac1 {
 	phy_id = <&davinci_mdio>, <1>;
- 	phy-mode = "rmii";
-};
+ 	phy-mode = "mii";
 
+};
+#if 0
+&cpsw_emac1 {
+	phy_id = <&davinci_mdio>, <2>;
+ 	phy-mode = "mii";
 
+};
+#endif
 
 &tscadc {
 	status = "okay";
-	tsc {
+	/*tsc {
 		ti,wires = <4>;
 		ti,x-plate-resistance = <200>;
 		ti,coordinate-readouts = <5>;
 		ti,wire-config = <0x00 0x11 0x22 0x33>;
-		ti,charge-delay = <0x400>;
-	};
+	};*/
 
 	adc {
-		ti,adc-channels = <4 5 6 7>;
+		ti,adc-channels = <0 1 2 3 4 5 6 7>;
 	};
 };
 
@@ -655,9 +632,15 @@
 	bus-width = <4>;
 	pinctrl-names = "default";
 	pinctrl-0 = <&mmc1_pins_default>;
-	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
+	cd-gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
 };
 
+&edma {
+	ti,edma-xbar-event-map = /bits/ 16 <1 12
+					    2 13>;
+};
+
+
 &sham {
 	status = "okay";
 };
@@ -666,7 +649,7 @@
 	status = "okay";
 };
 
-&wkup_m3_ipc {
+&wkup_m3 {
 	ti,scale-data-fw = "am335x-evm-scale-data.bin";
 };
 
@@ -675,63 +658,10 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&dcan0_pins_default>;
 };
-
+#if 0
 &dcan1 {
 	status = "okay";	
 	pinctrl-names = "default";
 	pinctrl-0 = <&dcan1_pins_default>;
 };
-
-&epwmss1 {
-	status = "okay";      
-
-	ehrpwm1: pwm@48302200 {
-		status = "okay";
-		pinctrl-names = "default";
-		pinctrl-0 = <&ehrpwm1_pins>;
-	};
-};
-
-/*
-The QCA7000 acts as a SPI slave and uses Mode 3: CPOL=1, CPHA=1.
-SPI data width is 8 bit. The SPI CLK period should not be less than 83.3 ns
-The SPI should be used in burst mode, meaning that the chip select is held low during a complete SPI message.
- Note: The SPI lines between Host CPU and QCA7000 should be kept as short as possible.
-
-*/
-&spi0 {
-	status = "okay";	
-	pinctrl-names = "default";
-	pinctrl-0 = <&spi0_pins_default>;
-	qca7000@0 {
-		compatible = "qca,qca7000";
-		reg = <0>;
-		interrupt-parent = <&gpio0>; /* GPIO0_19 */
-		interrupts = <19 1>;  			/* GPIO2_0 */
-		spi-cpha; 					 /* SPI mode: CPHA=1 */
-		spi-cpol; 					 /* SPI mode: CPOL=1 */
-		spi-max-frequency = <10000000>;  /* freq: 10MHz */
-		qca,legacy-mode = <0>;            /* Burst mode */
-	}; 
-};
-
-
-#if 0
-&rtc {
-	clocks = <&clk_32768_ck>, <&clkdiv32k_ick>;
-	clock-names = "ext-clk", "int-clk";
-};
-
-
-&pruss_soc_bus {
-	status = "okay";
-
-	pruss: pruss@0 {
-		status = "okay";
-	};
-};
-
-&sgx {
-	status = "okay";
-};
 #endif

+ 7 - 2
board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/.config

@@ -255,7 +255,7 @@ CONFIG_BOOTSTAGE_STASH_SIZE=4096
 # CONFIG_SATA_BOOT is not set
 # CONFIG_SD_BOOT is not set
 # CONFIG_SPI_BOOT is not set
-CONFIG_BOOTDELAY=2
+CONFIG_BOOTDELAY=1
 
 #
 # Console
@@ -320,7 +320,12 @@ CONFIG_SYS_PROMPT="=> "
 # Autoboot options
 #
 CONFIG_AUTOBOOT=y
-# CONFIG_AUTOBOOT_KEYED is not set
+CONFIG_AUTOBOOT_KEYED=y
+CONFIG_AUTOBOOT_PROMPT="Press SPACE key 2 times to abort autoboot in %d seconds\n"
+# CONFIG_AUTOBOOT_ENCRYPTION is not set
+CONFIG_AUTOBOOT_DELAY_STR="d"
+CONFIG_AUTOBOOT_STOP_STR="  "
+# CONFIG_AUTOBOOT_KEYED_CTRLC is not set
 
 #
 # FASTBOOT

+ 12 - 9
board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/.config.old

@@ -255,7 +255,7 @@ CONFIG_BOOTSTAGE_STASH_SIZE=4096
 # CONFIG_SATA_BOOT is not set
 # CONFIG_SD_BOOT is not set
 # CONFIG_SPI_BOOT is not set
-CONFIG_BOOTDELAY=2
+CONFIG_BOOTDELAY=1
 
 #
 # Console
@@ -321,6 +321,13 @@ CONFIG_SYS_PROMPT="=> "
 #
 CONFIG_AUTOBOOT=y
 # CONFIG_AUTOBOOT_KEYED is not set
+CONFIG_AUTOBOOT_KEYED=y
+CONFIG_AUTOBOOT_PROMPT="Press Phihong to abort autoboot in %d seconds\n"
+# CONFIG_AUTOBOOT_ENCRYPTION is not set
+ CONFIG_AUTOBOOT_DELAY_STR="d"
+ CONFIG_AUTOBOOT_STOP_STR="Phihong"
+# CONFIG_AUTOBOOT_KEYED_CTRLC is not set
+
 
 #
 # FASTBOOT
@@ -608,14 +615,10 @@ CONFIG_MISC=y
 # MMC Host controller Support
 #
 CONFIG_DM_MMC=y
-CONFIG_DM_MMC_OPS=y
-CONFIG_SPL_MMC_TINY=y
-CONFIG_ROCKCHIP_DWMMC=y
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC_SDHCI_SDMA=y
-CONFIG_MMC_SDHCI_KONA=y
-CONFIG_MMC_SDHCI_S5P=y
-CONFIG_MMC_SDHCI_SPEAR=y
+# CONFIG_DM_MMC_OPS is not set
+# CONFIG_SPL_MMC_TINY is not set
+# CONFIG_ROCKCHIP_DWMMC is not set
+# CONFIG_MMC_SDHCI is not set
 
 #
 # MTD Support

+ 24 - 45
board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/arch/arm/dts/.am335x-evm.dtb.dts.tmp

@@ -1145,24 +1145,28 @@
  cpsw_default: cpsw_default {
   pinctrl-single,pins = <
 
-   0x114 (0 | 2)
-   0x118 (((1 << 5)) | 2)
-   0x11c (0 | 2)
-   0x120 (0 | 2)
-   0x124 (0 | 2)
-   0x128 (0 | 2)
-   0x12c (0 | 2)
-   0x130 (((1 << 5)) | 2)
-   0x134 (((1 << 5)) | 2)
-   0x138 (((1 << 5)) | 2)
-   0x13c (((1 << 5)) | 2)
-   0x140 (((1 << 5)) | 2)
+   0x110 (((1 << 5)) | 0)
+   0x118 (((1 << 5)) | 0)
+   0x12c (((1 << 5)) | 0)
+   0x130 (((1 << 5)) | 0)
+   0x134 (((1 << 5)) | 0)
+   0x138 (((1 << 5)) | 0)
+   0x13c (((1 << 5)) | 0)
+   0x140 (((1 << 5)) | 0)
+   0x114 (0 | 0)
+   0x11c (0 | 0)
+   0x120 (0 | 0)
+   0x124 (0 | 0)
+   0x128 (0 | 0)
   >;
  };
 
  cpsw_sleep: cpsw_sleep {
   pinctrl-single,pins = <
 
+   0x110 (((1 << 5)) | 7)
+
+
    0x114 (((1 << 5)) | 7)
    0x118 (((1 << 5)) | 7)
    0x11c (((1 << 5)) | 7)
@@ -1193,7 +1197,7 @@
    0x14c (((1 << 5)) | 7)
   >;
  };
-# 300 "<stdin>"
+# 304 "<stdin>"
  mmc1_pins_default: pinmux_mmc1_pins {
   pinctrl-single,pins = <
    0x0F0 (((1 << 5) | (1 << 4)) | 0)
@@ -1257,16 +1261,7 @@
    0xec (((1 << 3)) | 0)
   >;
  };
-
- am335x_evm_audio_pins: am335x_evm_audio_pins {
-  pinctrl-single,pins = <
-   0x10c (((1 << 5)) | 4)
-   0x110 (((1 << 5)) | 4)
-   0x108 (0 | 4)
-   0x144 (((1 << 5)) | 4)
-  >;
- };
-
+# 377 "<stdin>"
  dcan1_pins_default: dcan1_pins_default {
   pinctrl-single,pins = <
    0x168 (((1 << 3)) | 2)
@@ -1585,24 +1580,8 @@
   };
  };
 };
-# 612 "<stdin>" 2
-
-&mcasp1 {
-  pinctrl-names = "default";
-  pinctrl-0 = <&am335x_evm_audio_pins>;
-
-  status = "okay";
-
-  op-mode = <0>;
-  tdm-slots = <2>;
-
-  serial-dir = <
-   0 0 1 2
-  >;
-  tx-num-evt = <32>;
-  rx-num-evt = <32>;
-};
-
+# 616 "<stdin>" 2
+# 633 "<stdin>"
 &tps {
  vcc1-supply = <&vbat>;
  vcc2-supply = <&vbat>;
@@ -1695,13 +1674,13 @@
 };
 
 &cpsw_emac0 {
- phy_id = <&davinci_mdio>, <0>;
- phy-mode = "rgmii-txid";
+ phy_id = <&davinci_mdio>, <1>;
+ phy-mode = "mii";
 };
 
 &cpsw_emac1 {
- phy_id = <&davinci_mdio>, <1>;
- phy-mode = "rgmii-txid";
+ phy_id = <&davinci_mdio>, <2>;
+ phy-mode = "mii";
 };
 
 &tscadc {

+ 24 - 20
board-support/u-boot-2017.01+gitAUTOINC+340fb36f04-g340fb36f04/arch/arm/dts/am335x-evm.dts

@@ -241,24 +241,28 @@
 	cpsw_default: cpsw_default {
 		pinctrl-single,pins = <
 			/* Slave 1 */
-			0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txen.rgmii1_tctl */
-			0x118 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxdv.rgmii1_rctl */
-			0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd3.rgmii1_td3 */
-			0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd2.rgmii1_td2 */
-			0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_td1 */
-			0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_td0 */
-			0x12c (PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txclk.rgmii1_tclk */
-			0x130 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxclk.rgmii1_rclk */
-			0x134 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd3.rgmii1_rd3 */
-			0x138 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd2.rgmii1_rd2 */
-			0x13c (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rd1 */
-			0x140 (PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rd0 */
+			0x110 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* MII1_RX_ER.gmii1_rxerr */
+			0x118 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxdv.mii1_rxdv */
+			0x12c (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_txclk.mii1_txclk */
+			0x130 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxclk.mii1_rxclk */
+			0x134 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxd3.rgmii1_rd3 */
+			0x138 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxd2.rgmii1_rd2 */
+			0x13c (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxd1.rgmii1_rd1 */
+			0x140 (PIN_INPUT_PULLDOWN | MUX_MODE0)		/* mii1_rxd0.rgmii1_rd0 */	
+			0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txen.mii1_txen */
+			0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd3.rgmii1_td3 */
+			0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd2.rgmii1_td2 */
+			0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd1.rgmii1_td1 */
+			0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)		/* mii1_txd0.rgmii1_td0 */      
 		>;
 	};
 
 	cpsw_sleep: cpsw_sleep {
 		pinctrl-single,pins = <
 			/* Slave 1 reset value */
+			0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)		/* MII1_RX_ER.gmii1_rxerr */
+			//0x108 (PIN_INPUT_PULLDOWN | MUX_MODE7)		/* MII1_COL.gmii1_col */
+			//0x10C (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* MII1_CRS.gmii1_crs */
 			0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
 			0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
 			0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
@@ -360,7 +364,7 @@
 			0xec (PIN_OUTPUT | MUX_MODE0)		/* lcd_ac_bias_en.lcd_ac_bias_en */
 		>;
 	};
-
+#if 0
 	am335x_evm_audio_pins: am335x_evm_audio_pins {
 		pinctrl-single,pins = <
 			0x10c (PIN_INPUT_PULLDOWN | MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
@@ -369,7 +373,7 @@
 			0x144 (PIN_INPUT_PULLDOWN | MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
 		>;
 	};
-
+#endif
 	dcan1_pins_default: dcan1_pins_default {
 		pinctrl-single,pins = <
 			0x168 (PIN_OUTPUT | MUX_MODE2) /* uart0_ctsn.d_can1_tx */
@@ -609,7 +613,7 @@
 };
 
 #include "tps65910.dtsi"
-
+#if 0
 &mcasp1 {
 		pinctrl-names = "default";
 		pinctrl-0 = <&am335x_evm_audio_pins>;
@@ -625,7 +629,7 @@
 		tx-num-evt = <32>;
 		rx-num-evt = <32>;
 };
-
+#endif
 &tps {
 	vcc1-supply = <&vbat>;
 	vcc2-supply = <&vbat>;
@@ -718,13 +722,13 @@
 };
 
 &cpsw_emac0 {
-	phy_id = <&davinci_mdio>, <0>;
-	phy-mode = "rgmii-txid";
+	phy_id = <&davinci_mdio>, <1>;
+	phy-mode = "mii";
 };
 
 &cpsw_emac1 {
-	phy_id = <&davinci_mdio>, <1>;
-	phy-mode = "rgmii-txid";
+	phy_id = <&davinci_mdio>, <2>;
+	phy-mode = "mii";
 };
 
 &tscadc {