nuttx icon indicating copy to clipboard operation
nuttx copied to clipboard

Documentation: migrate pages from wiki

Open raiden00pl opened this issue 2 years ago • 11 comments

Not all pages below are suitable for migration, some pages are outdated, some are already migrated. Everything listed here for better tracking of the issue.

It's better to have all valuable information in one place (Documentation). Then we can use grep to find all the useful information about a given subject.

Getting Started with NuttX https://cwiki.apache.org/confluence/display/NUTTX/Getting+Started+with+NuttX

  • [X] nothing to migrate

Graphics https://cwiki.apache.org/confluence/display/NUTTX/Graphics

  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Framebuffer+Character+Driver
  • [X] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629474
  • [X] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139630154
  • [X] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629473
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/CNxConsole+Keyboard+Input
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/NxWM+Threading
  • [X] https://cwiki.apache.org/confluence/display/NUTTX/Wide+Font+Support
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/NxTerm+Example

NuttX How-To's https://cwiki.apache.org/confluence/display/NUTTX/NuttX+How-To%27s

  • [X] https://cwiki.apache.org/confluence/display/NUTTX/Analyzing+Cortex-M+Hardfaults
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/ARMv7-M+Run+Time+Stack+Checking
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Auto-Mounter
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Changing+the+System+Clock+Configuration
  • [X] https://cwiki.apache.org/confluence/display/NUTTX/Converting+Legacy+Configurations+to+Use+kconfig-mconf[]
    • obsolote
  • [x] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629444
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Disabling+the+Stack+Dump+During+Debugging
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Including+Files+in+board.h
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Integrating+with+Newlib
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/IPv6
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Kernel+Threads+with+Custom+Stacks
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Logging+to+a+RAM+Buffer
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+Protected+Build
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Platform+Directories
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Porting+Drivers+to+the+STM32+F7
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Semihosting
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Signaling+Events+from+Interrupt+Handlers
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Signaling+Semaphores+and+Priority+Inheritance
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Smaller+Vector+Tables
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/STM32+CCM+Allocator
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/STM32+Null+Pointer+Detection
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Using+Kernel+Threads
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Versioning+and+Task+Names
  • [x] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629466

Networking https://cwiki.apache.org/confluence/display/NUTTX/Networking

  • [x] https://cwiki.apache.org/confluence/display/NUTTX/CONFIG_NET_GUARDSIZE
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Delayed+ACK+and+TCP+Performance
  • [X] https://cwiki.apache.org/confluence/display/NUTTX/Network+Link+Management
    • nothing to migrate
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/SLIP+Configuration
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/TCP+Network+Performance
  • [x] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629530
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Work+Queue+Deadlocks

Application/NSH How-To's https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629534

  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Updating+a+Release+System+with+ELF+Programs
  • [X] https://cwiki.apache.org/confluence/display/NUTTX/APPNAME+vs.+PROGNAME
    • obsolote, APPNAME removed
  • [x] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629538
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Building+NuttX+with+Applications+Outside+of+the+Source+Tree
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629550
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Custom+Application+Directories
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Debugging+ELF+Loadable+Modules
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629545
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Multiple+NSH+Sessions
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/NSH+Network+Link+Management
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/RAM+Disks+and+ROM+Disks
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Reading+CAN+Messages
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Removing+Device+Drivers+with+NSH
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Running+Applications+from+NSH

NuttX Implementation/Design https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629479

  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/ARMv7-M+Hardfaults%2C+SVCALL%2C+and+Debuggers
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Asynchronous+vs.+Synchronous+Context+Switches
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Bottom-Half+Interrupt+Handlers
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Cancellation+Points
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/chip.h+FAQ
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Critical+Section+Monitor
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Debug+Output+%28SYSLOG%29+Issues
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Detaching+File+Descriptors
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Device+Drivers+vs.+Bus+Drivers+and+GPIO+Drivers
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Device+Nodes
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Driver+Types
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Dynamic+Clocking
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Effects+of+Disabling+Interrupts+or+Pre-Emption+on+Response+Latency
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/ENOTTY+ioctl%28%29+Return+Value
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/High+Performance%2C+Zero+Latency+Interrupts
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Kernel+Modules+vs+Shared+Libaries
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Linux+Processes+vs+NuttX+Tasks
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Memory+Configurations
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629488
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+Architecture%2C+MCU%2C+and+Board+Interfaces
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Nested+Interrupts
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+Initialization+Sequence
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+Simulation
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+Tasking
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Oneshot+Timers+and+CPU+Load+Measurement
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Per-Thread+Interrupt+Controls
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Short+Time+Delays
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Signal+Handler+Tour
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/SMP
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/SMP+Critical+Sections
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/SYSLOG
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Task+Exit+Sequence
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Tasks+vs.+Threads+FAQ
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=152115079
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Tickless+OS
  • [x] https://cwiki.apache.org/confluence/display/NUTTX/Upper+Half+and+Lower+Half+Drivers
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=158862687

Platforms https://cwiki.apache.org/confluence/display/NUTTX/Platforms

  • [X] nothing to migrate

Virtual File System https://cwiki.apache.org/confluence/display/NUTTX/Virtual+File+System

  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/How+NXFFS+Works
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+File+System
  • [ ] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139630111
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Pseudo+File+System
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/SmartFS+Internals
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Special+Files+and+Device+Numbers
  • [ ] https://cwiki.apache.org/confluence/display/NUTTX/Using+SmartFS

raiden00pl avatar Nov 04 '23 17:11 raiden00pl

@raiden00pl would it still be useful to work on the documentation even if it is outdated? I understand that there's not a lot of reason to work on getting outdated documentation in the current documentation format, but I'm thinking it might be difficult to see what is outdated or not. Also, you might need setups to validate how outdated are the pages.

What are your thoughts?

lvanasse avatar Sep 29 '24 19:09 lvanasse

Unless the doc page is completely outdated, porting it still has value, and outdated content can be fixed later. We can mark such pages with .. warning:: note at the top until they are fixed.

As you mentioned, it can be difficult to determine what is outdated and what isn't, especially for people who haven't been following all the PRs in NuttX over the last few years.

So I'm not sure how we should proceed. Maybe we can just hope that during the PR review process, we'll be able to catch any outdated content and fix it immediately or mark the page as outdated.

raiden00pl avatar Sep 30 '24 08:09 raiden00pl

I was thinking that maybe we should still port everything and as people consult the documentation and try them we'll know if they are outdated.

But I like your idea of adding a warning at the beginning. I'll try to work on some of those pages that are left. Thank you :).

lvanasse avatar Sep 30 '24 13:09 lvanasse

@raiden00pl This page: https://cwiki.apache.org/confluence/display/NUTTX/STM32+Null+Pointer+Detection was already migrated :). #14231 Noticed just too late :sweat_smile:

lvanasse avatar Oct 14 '24 04:10 lvanasse

@raiden00pl darn again, very sorry, just notice: https://cwiki.apache.org/confluence/display/NUTTX/STM32+CCM+Allocator also was already migrated :sweat_smile:

lvanasse avatar Oct 14 '24 04:10 lvanasse

@raiden00pl here are 3 other pages to check (once they are merged) :)

#14240 - Kernel Threads with Custom Stacks #14239 - Versioning and Task Names #14236 - Using Kernel Threads

Cheers!

lvanasse avatar Oct 14 '24 05:10 lvanasse

@raiden00pl here are 3 other pages to check (once they are merged) :)

#14274 :

  • Disabling the Stack Dump During Debugging
  • Including files in board.
  • Why can't I put my special stuff in NuttX header files? (https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629466)

Cheers!

lvanasse avatar Oct 14 '24 17:10 lvanasse

@raiden00pl here are 4 other pages to check (once they are merged) :)

#14417 :

  • NuttX Protected Build
  • Integrating with Newlib
  • IPv6
  • Logging to a RAM buffer

Cheers!

lvanasse avatar Oct 20 '24 19:10 lvanasse

@raiden00pl here are 3 other pages to check (once they are merged) :)

#14419 :

  • Semihosting
  • Porting drivers to stm32f7
  • Platform directories

Cheers!

PS. I'll try to finish the NuttX How-To's section this week :)

lvanasse avatar Oct 20 '24 23:10 lvanasse

great ! thanks for your help :)

raiden00pl avatar Oct 21 '24 08:10 raiden00pl

@raiden00pl thanks for doing it

jerpelea avatar Oct 21 '24 10:10 jerpelea

@raiden00pl here are 3 other pages to check (once they are merged) :)

https://github.com/apache/nuttx/pull/14522:

  • Signaling Events from Interrupt Handlers
  • Signaling Semaphores and priority inheritance
  • Smaller Vector Tables

(NuttX How-To's done :partying_face:)

Cheers!

lvanasse avatar Oct 27 '24 22:10 lvanasse

@raiden00pl here's 4 other pages to check (once they are merged) :)

#14710 :

  • Delayed ACK and TCP Performance
  • TCP Network Performance
  • NxWM Threading
  • Framebuffer Character Driver

(Graphics and Networking section done! Only three more sections to go)

Cheers!

lvanasse avatar Nov 09 '24 20:11 lvanasse

@raiden00pl, please correct me if I'm wrong, but I think we are missing this page in the list of document to port:

https://cwiki.apache.org/confluence/display/NUTTX/Porting+Guide

I did check in the official wiki, and didn't find it there, and I'm not seeing it in the list when I ctrl+f for it.

Same thing for:

  • https://cwiki.apache.org/confluence/display/NUTTX/On-Demand+Paging
  • https://cwiki.apache.org/confluence/display/NUTTX/NuttX+Overview

And maybe: https://cwiki.apache.org/confluence/display/NUTTX/User+Guide, but I mean just not know if this has been broken up into sub document.

lvanasse avatar Nov 10 '24 17:11 lvanasse

@raiden00pl here are 4 other pages to check (once they are merged) :)

https://github.com/apache/nuttx/pull/14714 :

Cheers!

lvanasse avatar Nov 10 '24 18:11 lvanasse

@lvanasse

Doc for "On-Demand Paging" is here https://nuttx.apache.org/docs/latest/components/paging.html "Porting Guide" and "NuttX Overview" are most likely outdated and I don't know if it makes sense to port them without a proper review. "User Guide" is probably missing new features, but it should be OK to add.

raiden00pl avatar Nov 11 '24 08:11 raiden00pl

@raiden00pl I see that you've written about the SMARTFS in the official documentation. I was wondering if we should to still do the

  • https://cwiki.apache.org/confluence/display/NUTTX/Using+SmartFS
  • https://cwiki.apache.org/confluence/display/NUTTX/SmartFS+Internals

pages? And if yes, should we put them as supporting pages to the one you've written?

lvanasse avatar Dec 28 '24 21:12 lvanasse

@raiden00pl here's 1 other page to check (once they are merged) :)

https://github.com/apache/nuttx/pull/15376 :

The two ELF Programs pages weren't in the list, but I couldn't find them inside the official wiki.

Cheers!

lvanasse avatar Dec 29 '24 01:12 lvanasse

Another question for @raiden00pl or maybe @acassis since it came from you. It's regarding the page: https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629545

It refers to the libc++ of LLVM, but I'm unsure how relevant this page is since we now have the https://nuttx.apache.org/docs/latest/components/libs/libxx.html page inside the official documentation. From reading both it seems that the Confluence page kind of share the repo @acassis made to use the LLVM libc++, and tell me if I'm wrong, but we don't seem to use those actively? It seems to be integrated into the KConfig with CONFIG_LIBCXX=y as per the official documentation is saying.

Anyway, I don't mind migrating it, just didn't want to do redundant work :) If you could please let me know if you still want this page migrated, that would be appreciated :).

lvanasse avatar Dec 29 '24 16:12 lvanasse

@raiden00pl here are 9 other pages to check, once merged :)

https://github.com/apache/nuttx/pull/15379

  • Building NuttX with Applications Outside the Source Tree
  • Building uClibc++
  • Custom Application Directories
  • Debugging ELF Loadable Modules
  • Multiple NSH Sessions
  • NSH Network Link Management
  • RAM Disks and ROM Disks
  • Reading CAN Messages
  • Removing Device Drivers with NSH

I've also stumbled upon the https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=139629410 I was wondering if it should also be added to the list, it seems very interesting.

Also, that PR concluded the NSH How-To's :)!

Cheers!

lvanasse avatar Dec 30 '24 01:12 lvanasse

@lvanasse that page is very old and as you noticed LLVM C++ is already integrated into mainline. I suggest removing it or creating a new page explaining how to use LLVM C++ nowadays.

acassis avatar Dec 31 '24 07:12 acassis

@acassis I'm not too sure what would be the content of how to use LLVM C++ nowadays page to be honest :disappointed_relieved:, so I'm hesitant to make a call.

lvanasse avatar Jan 04 '25 02:01 lvanasse

@lvanasse yes, since the integration is transparent now, there is not much to document

acassis avatar Jan 05 '25 01:01 acassis

@raiden00pl I see that you've written about the SMARTFS in the official documentation. I was wondering if we should to still do the

* https://cwiki.apache.org/confluence/display/NUTTX/Using+SmartFS

* https://cwiki.apache.org/confluence/display/NUTTX/SmartFS+Internals

pages? And if yes, should we put them as supporting pages to the one you've written?

@raiden00pl any input :)?

lvanasse avatar Jan 05 '25 05:01 lvanasse

This page was migrated from the old README which was in fs/ (removed here 5b87fdfb9d3d00413f6d5e71753b10d16b938b13). I think we should add SmartFS Internals to the current SmartFS page add Using SmartFS to the Guids page

raiden00pl avatar Jan 06 '25 11:01 raiden00pl