Commit Graph

386 Commits

Author SHA1 Message Date
Gregory Nutt
700f1a8e8c Eliminate some warnings found in build testing. 2017-10-08 16:27:17 -06:00
Gregory Nutt
2318f895df Fix some compile problems found during build testing. 2017-10-07 09:40:02 -06:00
Gregory Nutt
10e7105900 graphics/vnc/server: Fix an error in the VNC server introduced with recent big set of changes. 2017-10-07 08:30:50 -06:00
Gregory Nutt
936df1bcb5 Adds new OS internal functions nxsig_sleep() and nxsig_usleep. These differ from the standard sleep() and usleep() in that (1) they don't cause cancellation points, and (2) don't set the errno variable (if applicable). All calls to sleep() and usleep() changed to calls to nxsig_sleep() and nxsig_usleep().
Squashed commit of the following:

    Change all calls to usleep() in the OS proper to calls to nxsig_usleep()

    sched/signal:  Add a new OS internal function nxsig_usleep() that is functionally equivalent to usleep() but does not cause a cancellaption point and does not modify the errno variable.

    sched/signal:  Add a new OS internal function nxsig_sleep() that is functionally equivalent to sleep() but does not cause a cancellaption point.
2017-10-06 10:15:01 -06:00
Gregory Nutt
9568600ab1 Squashed commit of the following:
This commit backs out most of commit b4747286b1.  That change was added because sem_wait() would sometimes cause cancellation points inappropriated.  But with these recent changes, nxsem_wait() is used instead and it is not a cancellation point.

    In the OS, all calls to sem_wait() changed to nxsem_wait().  nxsem_wait() does not return errors via errno so each place where nxsem_wait() is now called must not examine the errno variable.

    In all OS functions (not libraries), change sem_wait() to nxsem_wait().  This will prevent the OS from creating bogus cancellation points and from modifying the per-task errno variable.

    sched/semaphore:  Add the function nxsem_wait().  This is a new internal OS interface.  It is functionally equivalent to sem_wait() except that (1) it is not a cancellation point, and (2) it does not set the per-thread errno value on return.
2017-10-04 15:22:27 -06:00
Gregory Nutt
42a0796615 Squashed commit of the following:
sched/semaphore:  Add nxsem_post() which is identical to sem_post() except that it never modifies the errno variable.  Changed all references to sem_post in the OS to nxsem_post().

    sched/semaphore:  Add nxsem_destroy() which is identical to sem_destroy() except that it never modifies the errno variable.  Changed all references to sem_destroy() in the OS to nxsem_destroy().

    libc/semaphore and sched/semaphore:  Add nxsem_getprotocol() and nxsem_setprotocola which are identical to sem_getprotocol() and set_setprotocol() except that they never modifies the errno variable.  Changed all references to sem_setprotocol in the OS to nxsem_setprotocol().  sem_getprotocol() was not used in the OS
2017-10-03 15:35:24 -06:00
Gregory Nutt
83cdb0c552 Squashed commit of the following:
libc/semaphore:  Add nxsem_getvalue() which is identical to sem_getvalue() except that it never modifies the errno variable.  Changed all references to sem_getvalue in the OS to nxsem_getvalue().

    sched/semaphore:  Rename all internal private functions from sem_xyz to nxsem_xyz.  The sem_ prefix is (will be) reserved only for the application semaphore interfaces.

    libc/semaphore:  Add nxsem_init() which is identical to sem_init() except that it never modifies the errno variable.  Changed all references to sem_init in the OS to nxsem_init().

    sched/semaphore:  Rename sem_tickwait() to nxsem_tickwait() so that it is clear this is an internal OS function.

    sched/semaphoate:  Rename sem_reset() to nxsem_reset() so that it is clear this is an internal OS function.
2017-10-03 12:52:31 -06:00
Gregory Nutt
2c2aa94b7d Squashed commit of the following:
net/: psock_recvfrom() is an internal interface and should not set the errno nor should it be a cancellation point.

    net/: psock_accept() is not a cancellation point.

    net/: psock_getsockopt() and psock_socket*9 are an internal interfaces and should not set the errno.

    net/: psock_getsockopt() is an internal interface and should not set the errno.

    net/: psock_listen() is an internal interface and should not set the errno.

    net/: psock_connect(( is an internal interface and should not set the errno nor should it be a cancellation point.

    net/: psock_bind() is an internal interface and should not set the errno.

    net/: psock_accept() is an internal interface and should not set the errno.
2017-09-30 08:18:08 -06:00
Gregory Nutt
44736b721c net/sockets: psock_send() is an internal OS interface an should not set the errno variable. 2017-09-29 17:48:15 -06:00
Gregory Nutt
a0956c9e5b graphics/: Remove dangling space at the end of lines. 2017-06-28 13:28:52 -06:00
Gregory Nutt
0de294a586 Fix lots of occurrences of 'the the', 'the there', 'the these', 'the then', 'the they. 2017-05-11 13:35:56 -06:00
Gregory Nutt
d5207efb5a Be consistent... Use Name: consistent in function headers vs Function: 2017-04-21 16:33:14 -06:00
Gregory Nutt
b553704334 Update README; Remove comment blocks before empty sections. 2017-01-08 14:01:16 -06:00
Gregory Nutt
749eb6b7cd Update README; Remove comment blocks before empty sections. 2017-01-08 11:36:06 -06:00
Gregory Nutt
f3ae51592c Update README; Remove comment blocks before empty sections. 2017-01-08 11:20:16 -06:00
Gregory Nutt
725ba1602a Font cache: misc fixes and improvements 2017-01-06 11:06:50 -06:00
Gregory Nutt
0b52e6f571 Font cache: Replace fixed-size array with variable size link list. 2017-01-06 09:07:25 -06:00
Gregory Nutt
dc05af6436 Graphics: Initial separation of font cache from graphics/nxterm. Now in libnx/nxfronts 2017-01-05 18:36:29 -06:00
Gregory Nutt
d91cf5736e With last changes the Tom Thumb 3x5 font is now 4x6 2017-01-04 10:31:53 -06:00
Alan Carvalho de Assis
6c826bb209 Add support for Tom Thumb small mono-space font 2017-01-03 11:11:47 -06:00
Gregory Nutt
86b5f3b9ed boardctl: Add new command to start the NX server as a kernel thread. Also refresh more configurations. 2016-12-01 15:05:57 -06:00
Gregory Nutt
6dda185e8a NX: Remove configuration CONFIG_NX_NXSTART. nx_start.c is now built unconditionally in multi-user mode. 2016-12-01 13:30:24 -06:00
Gregory Nutt
77a0b6c26a graphics/, libnx/: Disable priority inheritance on all semaphores used for signaling 2016-11-03 17:12:49 -06:00
Gregory Nutt
43eb04bb8f Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info(). 2016-06-20 11:59:15 -06:00
Gregory Nutt
d40a473f72 Without lowsyslog() *llwarn() is not useful. Eliminate and replace with *warn(). 2016-06-20 09:37:08 -06:00
Gregory Nutt
6d1cd731b5 Eliminate a warning 2016-06-17 08:43:22 -06:00
Gregory Nutt
0c8c7fecf0 Add _ to the beginning of all debug macros to avoid name collisions 2016-06-16 12:33:32 -06:00
Gregory Nutt
4f97f15b5e graphics/, libc/: Change some err() ERRORS to warn() WARNINGS or info() 2016-06-12 11:11:57 -06:00
Gregory Nutt
a1469a3e95 Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err() 2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2 Rename *lldbg to *llerr 2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726 Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES 2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9 Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO 2016-06-11 11:50:18 -06:00
Gregory Nutt
422769e859 Update README. Improve some debug output. 2016-04-23 14:27:32 -06:00
Gregory Nutt
d4ac277df8 Mostly costmetic updates to comments, README 2016-04-23 13:26:52 -06:00
Gregory Nutt
b7940e9389 VNC: Fix some backward logic in a wait loop 2016-04-23 12:32:42 -06:00
Gregory Nutt
0d57612d13 VNC: Need to handle connection closed events 2016-04-23 10:57:28 -06:00
Gregory Nutt
47a33cbb64 VNC: Ignore client framebuffer updates if nothing has changed (we can does this because client requests incremental updates 2016-04-23 10:22:54 -06:00
Gregory Nutt
e723fc7fd4 VNC: Add option to enable VNC server debug without GRAPHICS debug 2016-04-23 09:06:39 -06:00
Gregory Nutt
8c1534e3ed VNC: Finish initializing the VNC server once we have the NX handle 2016-04-22 13:39:35 -06:00
Gregory Nutt
47c2b3d4a7 VNC: Add default mouse/keyboard input handlers 2016-04-22 12:48:27 -06:00
Gregory Nutt
2a928cbdbe VNC: Verify RGB8 operation; samv71-xult: VNC configuration now uses RGB8 by defualt 2016-04-22 08:57:42 -06:00
Gregory Nutt
1e7b8b80ac Add a mechanism to get remote keyboard and mouse inputs 2016-04-21 14:52:25 -06:00
Gregory Nutt
05f720f838 VNC: Flush the update queue whenever the client asks for a whole screen update 2016-04-21 12:38:36 -06:00
Gregory Nutt
be1677ba25 VNC: Client may request pixel data in either big- or little- endian order 2016-04-21 12:18:35 -06:00
Gregory Nutt
98e4de73e2 VNC: Discard previously queued updates if the client requesta a whole screen update 2016-04-21 09:47:26 -06:00
Gregory Nutt
eb8c7f1641 VNC: Correct pixel width in RRE encoding 2016-04-21 08:16:33 -06:00
Gregory Nutt
79e577eae1 VNC: Add support for (1) an 8-bit local frame buffer format and (2) a configurable server name 2016-04-20 17:47:47 -06:00
Gregory Nutt
f8604d11a9 VNC: Add some very basic RRE encodings 2016-04-20 17:01:48 -06:00
Gregory Nutt
cf6e791134 VNC: Repartition some function in preparation for supporting other encoding types 2016-04-20 14:05:32 -06:00