From f68a25ba03e8e427b45b9691031f2ae9b19fac67 Mon Sep 17 00:00:00 2001 From: Terraneo Federico <fede.tft@hotmail.it> Date: Wed, 28 Aug 2013 14:48:43 +0000 Subject: [PATCH] Added ConsoleDevice::set() --- miosix/filesystem/devfs/console_device.cpp | 7 ++- miosix/filesystem/devfs/console_device.h | 7 +++ miosix/filesystem/file_access.cpp | 2 +- .../nbproject/private/configurations.xml | 52 +++++++++---------- 4 files changed, 37 insertions(+), 31 deletions(-) diff --git a/miosix/filesystem/devfs/console_device.cpp b/miosix/filesystem/devfs/console_device.cpp index 820d81b0..5779aaa6 100644 --- a/miosix/filesystem/devfs/console_device.cpp +++ b/miosix/filesystem/devfs/console_device.cpp @@ -175,8 +175,8 @@ DefaultConsole& DefaultConsole::instance() void DefaultConsole::IRQset(intrusive_ref_ptr<ConsoleDevice> console) { - //Note: should be safe to be called also outside of IRQ as it's used by - //checkInit + //Note: should be safe to be called also outside of IRQ as set() calls + //IRQset() atomic_store(&rawConsole,console); atomic_store(&terminal, intrusive_ref_ptr<TerminalDevice>(new TerminalDevice(rawConsole))); @@ -184,8 +184,7 @@ void DefaultConsole::IRQset(intrusive_ref_ptr<ConsoleDevice> console) void DefaultConsole::checkInit() { - if(!rawConsole) - IRQset(intrusive_ref_ptr<ConsoleDevice>(new NullFile)); + if(!rawConsole) set(intrusive_ref_ptr<ConsoleDevice>(new NullFile)); } } //namespace miosix diff --git a/miosix/filesystem/devfs/console_device.h b/miosix/filesystem/devfs/console_device.h index 5b90c839..141161a2 100644 --- a/miosix/filesystem/devfs/console_device.h +++ b/miosix/filesystem/devfs/console_device.h @@ -186,6 +186,13 @@ public: */ void IRQset(intrusive_ref_ptr<ConsoleDevice> console); + /** + * Same as IRQset(), but can be called with interrupts enabled + * \param console device file handling console I/O. Can only be called with + * interrupts disabled. + */ + void set(intrusive_ref_ptr<ConsoleDevice> console) { IRQset(console); } + /** * \return the currently installed console device, wrapped in a * TerminalDevice diff --git a/miosix/filesystem/file_access.cpp b/miosix/filesystem/file_access.cpp index c75e25e3..af6fe15c 100644 --- a/miosix/filesystem/file_access.cpp +++ b/miosix/filesystem/file_access.cpp @@ -37,7 +37,7 @@ namespace miosix { */ /** - * The result of resolvePath(). This class is not in file_Access.h as + * The result of resolvePath(). This class is not in file_access.h as * resolvePath() is not meant to be called outside of this file. */ class ResolvedPath diff --git a/miosix_np_2/nbproject/private/configurations.xml b/miosix_np_2/nbproject/private/configurations.xml index bab7355b..cd0f38a1 100644 --- a/miosix_np_2/nbproject/private/configurations.xml +++ b/miosix_np_2/nbproject/private/configurations.xml @@ -418,13 +418,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -463,13 +463,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -508,13 +508,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -553,13 +553,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -598,13 +598,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -643,13 +643,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -688,13 +688,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -733,13 +733,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -778,13 +778,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -823,13 +823,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -868,13 +868,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -913,13 +913,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> @@ -958,13 +958,13 @@ </toolsSet> <compile> <compiledirpicklist> - <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> <compiledirpicklistitem>.</compiledirpicklistitem> + <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem> </compiledirpicklist> <compiledir>${AUTO_FOLDER}</compiledir> <compilecommandpicklist> - <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem> + <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem> </compilecommandpicklist> <compilecommand>${AUTO_COMPILE}</compilecommand> </compile> -- GitLab