Changeset b366a6f4 in mainline for uspace


Ignore:
Timestamp:
2011-06-24T15:58:01Z (14 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7250d2c
Parents:
ee2fa30a
Message:

automatic kernel console lockout

  • kernel automatically relinquishes the access to the kernel console when the uspace maps the respective physical memory area
  • kernel output before uspace initialization is currently broken on Ski (no physical memory area), but this is pending further unification
  • kernel console devices are now independent (there is no system-wide "silent" variable), thus on multiple devices the kernel console and uspace output might be usable at the same time
Location:
uspace
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/trace/syscalls.c

    ree2fa30a rb366a6f4  
    8080    [SYS_SYSINFO_GET_DATA] = { "sysinfo_get_data",              5,      V_ERRNO },
    8181
    82     [SYS_DEBUG_ENABLE_CONSOLE] = { "debug_enable_console", 0,   V_ERRNO },
     82    [SYS_DEBUG_ACTIVATE_CONSOLE] = { "debug_activate_console", 0,       V_ERRNO },
    8383    [SYS_IPC_CONNECT_KBOX] = { "ipc_connect_kbox",      1,      V_ERRNO }
    8484};
  • uspace/lib/c/generic/io/console.c

    ree2fa30a rb366a6f4  
    7676bool console_kcon(void)
    7777{
    78 #if 0
    7978        return __SYSCALL0(SYS_DEBUG_ACTIVATE_CONSOLE);
    80 #endif
    81        
    82         return false;
    8379}
    8480
  • uspace/lib/c/include/ipc/console.h

    ree2fa30a rb366a6f4  
    4848        CONSOLE_SET_COLOR,
    4949        CONSOLE_SET_RGB_COLOR,
    50         CONSOLE_CURSOR_VISIBILITY,
    51         CONSOLE_KCON_ENABLE
     50        CONSOLE_CURSOR_VISIBILITY
    5251} console_request_t;
    5352
  • uspace/srv/hid/console/console.c

    ree2fa30a rb366a6f4  
    357357                console_serialize_end();
    358358               
    359                 if (__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE)) {
     359                if (console_kcon()) {
    360360                        prev_console = active_console;
    361361                        active_console = kernel_console;
     
    711711                        console_serialize_start();
    712712                        continue;
    713                 case CONSOLE_KCON_ENABLE:
    714                         change_console(kernel_console);
    715                         break;
    716713                }
    717714                async_answer_3(callid, EOK, arg1, arg2, arg3);
     
    833830        }
    834831       
    835         /* Disable kernel output to the console */
    836         __SYSCALL0(SYS_DEBUG_DISABLE_CONSOLE);
    837        
    838832        /* Initialize the screen */
    839833        console_serialize_start();
Note: See TracChangeset for help on using the changeset viewer.