Changes between Version 1 and Version 2 of newport


Ignore:
Timestamp:
11/27/2017 07:24:39 PM (2 years ago)
Author:
Tim Harvey
Comment:

convert restored html to wiki markup

Legend:

Unmodified
Added
Removed
Modified
  • newport

    v1 v2  
    1 {{{#!html
    2           <div id="wikipage" class="trac-content"><h1 id="GateworksNewportFamilySupport">Gateworks <b style="color:#000;background:#ffff66">Newport</b> Family Support</h1>
     1= Gateworks Newport Family Support =
     2
     3{{{
     4#!html
    35<table style="border:1px solid black;border-collapse: collapse;height:0px;">
    46
     
    911
    1012<td style="height:150px;padding:15px;border:0px solid black;border-collapse: collapse;horizontal-align:center;text-align:center;">
    11 <a href="/wiki/newport#BoardSupportPackagesBSPSoftware"><img src="/raw-attachment/wiki/ventana/softwareicon.png" style="height:100px;"><br><b style="color:#000;background:#ffff66">Newport</b> Software</a>
    12 </td>
    13 
    14 <td style="height:150px;padding:15px;border:0px solid black;border-collapse: collapse;horizontal-align:center;text-align:center;">
    15 <a href="/wiki/newport#Peripherals"><img src="/raw-attachment/wiki/ventana/customizationicon.png" style="height:100px;"><br>Peripherals</a>
     13<a href="/wiki/ventana#BoardSupportPackagesBSPSoftware"><img src="/raw-attachment/wiki/ventana/softwareicon.png" style="height:100px;"><br>Newport Software</a>
     14</td>
     15
     16<td style="height:150px;padding:15px;border:0px solid black;border-collapse: collapse;horizontal-align:center;text-align:center;">
     17<a href="/wiki/ventana#Peripherals"><img src="/raw-attachment/wiki/ventana/customizationicon.png" style="height:100px;"><br>Peripherals</a>
    1618</td>
    1719
     
    3941
    4042<td style="height:150px;padding:15px;border:0px solid black;border-collapse: collapse;horizontal-align:center;text-align:center;">
    41 <a href="http://shop.gateworks.com/index.php?route=product/category&path=70_83"><img src="/raw-attachment/wiki/ventana/shoppingcart.png" style="height:100px;"><br>Shop <b style="color:#000;background:#ffff66">Newport</b> Accessories</a>
     43<a href="http://shop.gateworks.com/index.php?route=product/category&path=70_83"><img src="/raw-attachment/wiki/ventana/shoppingcart.png" style="height:100px;"><br>Shop Newport Accessories</a>
    4244</td>
    4345
    4446</tr>
    4547</table>
    46 <p>
    47 </p><div class="wiki-toc">
    48 <ol>
    49   <li>
    50     <a href="#GateworksNewportFamilySupport">Gateworks <b style="color:#000;background:#ffff66">Newport</b> Family Support</a>
    51   </li>
    52   <li>
    53     <a href="#Links">Links</a>
    54     <ol>
    55       <li>
    56         <a href="#Software">Software</a>
    57       </li>
    58       <li>
    59         <a href="#PeripheralSupport">Peripheral Support</a>
    60       </li>
    61       <li>
    62         <a href="#PerformanceProcessorMemoryPowerThermal">Performance / Processor / Memory / Power / Thermal</a>
    63       </li>
    64       <li>
    65         <a href="#OtherInfo">Other Info</a>
    66       </li>
    67       <li>
    68         <a href="#JTAGProgramming">JTAG Programming</a>
    69       </li>
    70       <li>
    71         <a href="#UserManual">User Manual</a>
    72       </li>
    73       <li>
    74         <a href="#ProcessorReferenceManualDatasheetErrata">Processor Reference Manual / Datasheet / Errata</a>
    75       </li>
    76     </ol>
    77   </li>
    78   <li>
    79     <a href="#BoardSupportPackagesBSPSoftware">Board Support Packages (BSP) Software</a>
    80     <ol>
    81       <li>
    82         <a href="#ChoosingaBSP">Choosing a BSP</a>
    83       </li>
    84       <li>
    85         <a href="#OpenWrtBoardSupportPackageBSP">OpenWrt Board Support Package (BSP)</a>
    86       </li>
    87       <li>
    88         <a href="#Ubuntu">Ubuntu</a>
    89       </li>
    90     </ol>
    91   </li>
    92   <li>
    93     <a href="#ThirdPartyLinuxDistros">Third Party Linux Distros</a>
    94     <ol>
    95       <li>
    96         <ol>
    97           <li>
    98             <a href="#RootfilesystemSources">Root filesystem Sources</a>
    99           </li>
    100         </ol>
    101       </li>
    102     </ol>
    103   </li>
    104   <li>
    105     <a href="#MainlineLinuxKernelsupport">Mainline Linux Kernel support</a>
    106   </li>
    107 </ol>
    108 </div><p>
    109 </p>
    110 <p>
    111 The Gateworks <b style="color:#000;background:#ffff66">Newport</b> product family utilizes the Cavium ARM ThunderX CN80xx / CN81xx SoC (System On Chip) offering a large variety of peripherals with a focus on Networking, and Security. See <a class="ext-link" href="http://www.gateworks.com/product#newport"><span class="icon">​</span>here</a> for a product comparison matrix.
    112 </p>
    113 <h1 id="Links">Links</h1>
    114 <p>
    115 <strong>Please note: This is a subset of information for <b style="color:#000;background:#ffff66">Newport</b>, however, please visit our <a class="wiki" href="/wiki/WikiStart">Main Wiki</a> for all other information</strong>
    116 </p>
    117 <p>
    118 <span class="wikianchor" id="software"></span>
    119 </p>
    120 <h2 id="Software">Software</h2>
    121 <ul><li><a class="wiki" href="/wiki/newport#bsp"><b style="color:#000;background:#ffff66">Newport</b> Board Support Packages and Operating Systems</a>
    122 </li><li><a class="wiki" href="/wiki/newport#linux">Mainline Linux kernel support</a>
    123 </li><li><a class="wiki" href="/wiki/newport#third_party_linux">Booting Third Party Linux Distro's on <b style="color:#000;background:#ffff66">Newport</b></a>
    124 </li><li><a class="wiki" href="/wiki/newport#jtag"><b style="color:#000;background:#ffff66">Newport</b> JTAG Programming</a>
    125 </li></ul><p>
    126 <span class="wikianchor" id="peripheral"></span>
    127 </p>
    128 <h2 id="PeripheralSupport">Peripheral Support</h2>
    129 <ul><li><a class="wiki" href="/wiki/ventana/expansion">Gateworks Expansion Modules - GW16081, GW16082, GW16083</a>
    130 </li><li><a class="wiki" href="/wiki/SPI">SPI Support</a>
    131 </li><li><a class="wiki" href="/wiki/gpio#gpiolib">GPIO Control</a>
    132 </li><li><a class="wiki" href="/wiki/gpio#led_class">LED Control</a>
    133 </li><li><a class="wiki" href="/wiki/alternateconnectors">Connector and Cable Information </a>
    134 </li><li><a class="wiki" href="/wiki/sata">mSATA Information</a>
    135 </li><li><a class="wiki" href="/wiki/gps">GPS Support</a>
    136 </li><li><a class="wiki" href="/wiki/canbus">CAN Bus Support</a>
    137 </li><li><a class="wiki" href="/wiki/minipciexpressmodules">PCIe Accessory Cards</a>
    138 </li><li><a class="wiki" href="/wiki/ventana/simsd">SIM and microSD Card Information</a>
    139 </li><li><a class="wiki" href="/wiki/gsc">Gateworks System Controller (GSC)</a> - Temperature, voltage, RTC, GPIO, Digital IO, I/O, pushbutton, etc
    140 </li><li><a class="wiki" href="/wiki/enclosures">Gateworks Enclosures</a>
    141 </li></ul><p>
    142 <span class="wikianchor" id="performance"></span>
    143 </p>
    144 <h2 id="PerformanceProcessorMemoryPowerThermal">Performance / Processor / Memory / Power / Thermal</h2>
    145 <ul><li><a class="wiki" href="/wiki/multicoreprocessing">Multi Core Processing</a>
    146 </li><li><a class="wiki" href="/wiki/boot_speed">Increasing Boot Speeds</a>
    147 </li></ul><h2 id="OtherInfo">Other Info</h2>
    148 <ul><li><a class="ext-link" href="http://www.gateworks.com/product#newport"><span class="icon">​</span>Product Info</a>
    149 </li><li><a class="ext-link" href="http://shop.gateworks.com"><span class="icon">​</span>Where to Buy</a>
    150 </li><li><a class="wiki" href="/wiki/newport/errata"><b style="color:#000;background:#ffff66">Newport</b> Board Errata</a>
    151 </li><li><a class="wiki" href="/wiki/linux/devicetree">Linux Kernel Device-Tree info</a>
    152 </li></ul><p>
    153 <span class="wikianchor" id="jtag"></span>
    154 </p>
    155 <h2 id="JTAGProgramming">JTAG Programming</h2>
    156 <p>
    157 The Gateworks JTAG dongle (GW16099) is available in the <b style="color:#000;background:#ffff66">Newport</b> Dev Kit as well as on the Gateworks web store <a class="ext-link" href="http://shop.gateworks.com/index.php?route=product/category&amp;path=70_80"><span class="icon">​</span>here</a>
    158 </p>
    159 <p>
    160 All <b style="color:#000;background:#ffff66">Newport</b> boards have a 10-pin JTAG header which provides:
    161 </p>
    162 <ul><li>JTAG Programming for embedded FLASH - see <a class="wiki" href="/wiki/jtag_instructions">here</a> for instructions
    163 </li><li>Serial Console access via UART0 (/dev/ttyAMA0)
    164 </li></ul><p>
    165 <strong> Please note, the Linux software is supported for programming <b style="color:#000;background:#ffff66">Newport</b> (jtag_usbv4 required). Windows is not supported at this time.</strong> (serial console through Windows does work).
    166 </p>
    167 <h2 id="UserManual">User Manual</h2>
    168 <ul><li><a class="ext-link" href="http://www.gateworks.com/usermanuals"><span class="icon">​</span>All Gateworks User Manuals</a>
    169 </li></ul><h2 id="ProcessorReferenceManualDatasheetErrata">Processor Reference Manual / Datasheet / Errata</h2>
    170 <p>
    171 The <a class="ext-link" href="http://www.cavium.com/OCTEON-TX-CN80XX-81XX.html"><span class="icon">​</span>Cavium Website</a> contains details about the OCTEON TX Dual and Quad core 64bit ARM based SoC's.
    172 </p>
    173 <p>
     48}}}
     49
     50[[PageOutline]]
     51
     52The Gateworks Newport product family utilizes the Cavium ARM ThunderX CN80xx / CN81xx SoC (System On Chip) offering a large variety of peripherals with a focus on Networking, and Security. See ​here for a product comparison matrix.
     53
     54= Links =
     55'''Please note: This is a subset of information for Newport, however, please visit our [wiki:WikiStart Main Wiki] for all other information'''
     56
     57== Software ==
     58 * [#bsp Newport Board Support Packages and Operating Systems]
     59 * [#linux Linux kernel support]
     60 * [#third-party-linux Booting Third Party Linux Distro's on Newport]
     61 * [#jtag Newport JTAG Programming]
     62
     63== Peripheral Support ==
     64 * [wiki:ventana/expansion Gateworks Expansion Modules - GW16081, GW16082, GW16083]
     65 * [wiki:SPI SPI Support]
     66 * [wiki:gpio/#gpiolib GPIO Control]
     67 * [wiki:gpio/#led_class LED Control]
     68 * [wiki:alternateconnectors Connector and Cable Information]
     69 * [wiki:sata mSATA Information]
     70 * [wiki:gps GPS Support]
     71 * [wiki:canbus CAN Bus Support]
     72 * [wiki:ventana/PCIe PCI/PCIe information]
     73 * [wiki:minipciexpressmodules PCIe Accessory Cards]
     74 * [wiki:ventana/simsd SIM and microSD Card Information]
     75 * [wiki:gsc Gateworks System Controller (GSC)] - Temperature, voltage, RTC, GPIO, Digital IO, I/O, pushbutton, etc
     76 * [wiki:enclosures Gateworks Enclosures]
     77
     78== Performance / Processor / Memory / Power / Thermal ==
     79 * [wiki:multicoreprocessing Multi Core Processing]
     80 * [wiki:boot_speed Increasing Boot Speeds]
     81
     82== Other Info ==
     83 * [http://www.gateworks.com/product#newport Product Info]
     84 * [http://shop.gateworks.com Where to Buy]
     85 * [wiki:newport/errata Newport Board Errata]
     86 * [wiki:linux/devicetree Linux Kernel Device-Tree info]
     87
     88
     89[=#jtag]
     90== JTAG Programming
     91The Gateworks JTAG dongle (GW16099) is available in the Newport Dev Kit as well as on the Gateworks web store [http://shop.gateworks.com/index.php?route=product/category&path=70_80 here]
     92
     93All Newport boards have a 10-pin JTAG header which provides:
     94 * JTAG Programming for embedded FLASH - see [wiki:jtag_instructions here] for instructions
     95 * Serial Console access via UART0 (/dev/ttyAMA0)
     96
     97Please Note:
     98 * '''Linux software is supported for programming Newport (jtag_usbv4 required).''' Windows is not supported at this time.''' (serial console through Windows does work).
     99 * '''JTAG Programming of eMMC has not been made available yet'''. You must boot from a microSD image to program or re-program eMMC flash
     100
     101
     102== User Manual ==
     103 * [http://www.gateworks.com/usermanuals All Gateworks User Manuals]
     104
     105
     106== Processor Reference Manual / Datasheet / Errata ==
     107The ​[http://www.cavium.com/OCTEON-TX-CN80XX-81XX.html Cavium Website] contains details about the OCTEON TX Dual and Quad core 64bit ARM based SoC's.
     108
    174109Additional references:
    175 </p>
    176 <ul><li><a class="ext-link" href="http://www.cavium.com/pdfFiles/OCTEON-TX-CN80XX-CN81XX-Product-Brief-Rev1.pdf"><span class="icon">​</span>OCTEON TX CN80XX-CN81XX Product Brief</a>
    177 </li></ul><p>
    178 <span class="wikianchor" id="bsp"></span>
    179 </p>
    180 <h1 id="BoardSupportPackagesBSPSoftware">Board Support Packages (BSP) Software</h1>
     110 * ​[http://www.cavium.com/pdfFiles/OCTEON-TX-CN80XX-CN81XX-Product-Brief-Rev1.pdf OCTEON TX CN80XX-CN81XX Product Brief]
     111
     112
     113[=#bsp]
     114= Board Support Packages (BSP) Software =
     115{{{
     116#!html
    181117<img src="https://openwrt.org/.styles/img/openwrt-logo.png" style="height:50px;">
    182118<img src="http://dev.gateworks.com/logos/ubuntulogo.png" style="height:50px;">
    183 <h2 id="ChoosingaBSP">Choosing a BSP</h2>
    184 <p>
    185 Gateworks offers several Board Support Packages for the <b style="color:#000;background:#ffff66">Newport</b> Product family. Which one we recommend depends a bit upon what your goal is and what your experience level is
    186 </p>
    187 <ul><li><a class="wiki" href="/wiki/newport#openwrt">OpenWrt</a> - intended for wireless routers and access points (low flash and memory footprint)
    188 <ul><li><strong>Recommended for networking users wanting to create a headless router, VPN, basestation, wireless access point and more. Produces by far the smallest storage and memory footprint but users new to Embedded Linux will have a bit of a learning curve</strong>
    189 </li><li>Fairly up-to-date and/or vanilla kernel support
    190 </li><li>Latest wireless drivers (via linux-backports)
    191 </li><li>Custom application config and init system (nice for small footprint, but can make adding support for additional packages more work)
    192 </li><li>Wide variety of packages (including a fairly nice web-admin)
    193 </li><li>Console-based build system (expect 60mins to build BSP for a specific board family)
    194 </li><li>Downloadable SDK and Toolchain available to build apps on a development host without building the entire BSP
    195 </li><li>Pre-built images available
    196 </li></ul></li><li><a class="wiki" href="/wiki/newport#Ubuntu">Ubuntu</a>
    197 <ul><li><strong>Recommended for developers trying to heavily leverage opensource software packages or libraries that are not supported by the other BSP's. This is the most user-friendly for developers new to Embedded Linux but will not produce a very trimmed down filesystem image.</strong>
    198 </li><li>Documentation provided to use Ubuntu pre-built packages and debootstrap to create a root filesystem in minutes
    199 </li><li>Native compilation: no SDK or cross-toolchain needed
    200 </li><li>Pre-built images available
    201 </li></ul></li></ul><p>
     119}}}
     120
     121== Choosing a BSP ==
     122Gateworks offers several Board Support Packages for the Newport Product family. Which one we recommend depends a bit upon what your goal is and what your experience level is
     123 * [#OpenWrtBoardSupportPackageBSP OpenWrt] - '''Coming Soon for Newport''' - intended for wireless routers and access points (low flash and memory footprint)
     124  - '''Recommended for networking users wanting to create a headless router, VPN, basestation, wireless access point and more. Produces by far the smallest storage and memory footprint but users new to Embedded Linux will have a bit of a learning curve'''
     125  - Fairly up-to-date and/or vanilla kernel support
     126  - Latest wireless drivers (via linux-backports)
     127  - Custom application config and init system (nice for small footprint, but can make adding support for additional packages more work)
     128  - Wide variety of packages (including a fairly nice web-admin)
     129  - Console-based build system (expect 60mins to build BSP for a specific board family)
     130  - Downloadable SDK and Toolchain available to build apps on a development host without building the entire BSP
     131  - Pre-built images available
     132
     133 * [#Ubuntu Ubuntu]
     134  - '''Recommended for developers trying to heavily leverage opensource software packages or libraries that are not supported by the other BSP's. This is the most user-friendly for developers new to Embedded Linux but will not produce a very trimmed down filesystem image.'''
     135  - Uses mainline kernel.
     136  - Supports all Newport features.
     137  - Documentation provided to use Ubuntu pre-built packages and debootstrap to create a root filesystem in minutes
     138  - Native compilation: no SDK or cross-toolchain needed
     139
    202140The following table may also help in choosing what BSP is right for you:
    203 </p>
    204 <table class="wiki">
    205 <tr><th> Feature            </th><th> <a class="wiki" href="/wiki/newport#openwrt">OpenWrt</a> </th><th> <a class="wiki" href="/wiki/newport#ubuntu">Ubuntu</a> </th><th> Notes
    206 </th></tr><tr><td> Pre-built images     </td><td> Yes                  </td><td> Yes                </td><td style="text-align: center">         
    207 </td></tr><tr><td> Storage Needed       </td><td> &lt;256MB               </td><td> 2GB or larger      </td><td style="text-align: center">         
    208 </td></tr><tr><td> Build-System         </td><td> Yes                  </td><td> No                 </td><td> 1       
    209 </td></tr><tr><td> Toolchain            </td><td> SDK                  </td><td> Native             </td><td> 2       
    210 </td></tr><tr><td> Web-Admin            </td><td> Yes                  </td><td> No                 </td><td> 3       
    211 </td></tr></table>
    212 <p>
     141||= Feature          =||= OpenWrt =||= Ubuntu =||= Notes =||
     142|| Pre-built images   || Yes       || Yes      || ||   
     143|| Storage Needed     || <256MB    || 2GB or larger || ||       
     144|| Build-System       || Yes       || No       || 1 ||
     145|| Toolchain          || SDK       || Native   || 2 ||
     146|| Web-Admin          || Yes       || No       || 3 ||
     147 1. The OpenWrt BSP contain an integrated build-system. Ubuntu has step-by-step instructions on how to build an bootable system in 10 or so steps.
     148 2. The OpenWrt BSP provides a downloadable SDK for cross-compiling applications on a development hosts. For Ubuntu native development and compilation is supported.
     149 3. The OpenWrt BSP is designed to be a wireless router and has an integrated web-admin for configuration and control.
     150
     151
     152[=#openwrt]
     153== OpenWrt Board Support Package (BSP) ==
     154'''Coming Soon'''
     155
     156Newport OpenWrt BSP:
     157 * [wiki:newport/openwrt#Step2.InstallingFirmware Pre-Built Binaries]
     158 * [wiki:newport/openwrt Building/Installing OpenWrt w/ Gateworks Patches for the Newport Family]
     159 * [wiki:OpenWrt Main OpenWrt Wiki Page]
     160 * [wiki:OpenWrt/SDK#NewportNotes OpenWrt SDK Toolchain]
     161 * join the [http://www.gateworks.com/mailman/listinfo maillist] to follow activity
     162 * [wiki:OpenWrt/gpio GPIO and LED Configuration]
     163
     164The Newport OpenWrt BSP provides the following:
     165 * Linux 4.x kernel (fairly vanilla)
     166 * latest wireless drivers (compat-wireless)
     167 * tuned for minimal FLASH/memory footprint (entire distro fits on embedded 16MB FLASH)
     168
     169
     170[=#ubuntu]
     171== Ubuntu ==
     172Gateworks offers a pre-built Ubuntu distribution using the latest Gateworks kernel as well as instructions on how to build your own Ubuntu based distribution.
     173 * [wiki:ventana/ubuntu Ubuntu Wiki and Software]
     174
     175
     176[=#third_party_linux]
     177= Third Party Linux Distros =
     178While Gateworks cannot fully support all Linux distros, it is relatively simple to overlay a Gateworks Newport kernel onto any non-Gateworks third party Linux distro rootfs image.
     179
     180The following links will describe what is needed:
     181 1. Linux kernel supporting Newport: [wiki:linux/kernel]
     182 2. Root Filesystem: [#rootfs see below]
     183 3. Bootable media: [wiki:linux/blockdev]
     184
     185
     186[=#rootfs]
     187=== Root filesystem Sources ===
     188There are several sources of pre-built root filesystems that are compatible with Newport. As Newport uses an ARM 64bit based SoC, you need to use something that is compatible with an ARMv8 instruction set. Many pre-built distributions will reference 'arm64' which means 'ARM 64-bit' which is appropriate for the CN80XX / CN81XX SoC.
     189
     190Some popular third-party sources:
     191 * [http://cdimage.ubuntu.com/ubuntu-core/releases/ Ubuntu Core] - this is a minimal filesystem that you can build off of at runtime by adding packages from various repositories.
     192 * [https://releases.linaro.org/ Linaro] - Linaro has several root filesystems including server, nano, developer, core, and ALIP.  Each root filesystem will have different things installed for different purposes.  Choose carefully which will work for you.
     193
    213194Notes:
    214 </p>
    215 <ol><li>The <a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> BSP contains an integrated build-system to build the toolchain, kernel, and root filesystem from source. For Ubuntu, step-by-step instructions are provided to build an bootable system in 10 or so steps.
    216 </li><li>The <a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> BSP's provide a downloadable SDK for cross-compiling applications on a development hosts. For Ubuntu native development and compilation is supported.
    217 </li><li><a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> is designed to be a wireless router and has an integrated web-admin for configuration and control.
    218 </li></ol><p>
    219 <span class="wikianchor" id="openwrt"></span>
    220 </p>
    221 <h2 id="OpenWrtBoardSupportPackageBSP"><a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> Board Support Package (BSP)</h2>
    222 <p>
    223 <b style="color:#000;background:#ffff66">Newport</b> <a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> BSP:
    224 </p>
    225 <ul><li><a class="missing wiki">Pre-Built Binaries?</a>
    226 </li><li><a class="missing wiki">Building/Installing OpenWrt w/ Gateworks Patches for the <b style="color:#000;background:#ffff66">Newport</b> Family?</a>
    227 </li><li><a class="wiki" href="/wiki/OpenWrt">Main OpenWrt Wiki Page</a>
    228 </li><li><a class="wiki" href="/wiki/OpenWrt/SDK#NewportNotes">OpenWrt SDK Toolchain</a>
    229 </li><li>join the <a class="ext-link" href="http://www.gateworks.com/mailman/listinfo"><span class="icon">​</span>maillist</a> to follow activity
    230 </li><li><a class="ext-link" href="https://github.com/Gateworks/openwrt"><span class="icon">​</span>Source Code</a>
    231 </li></ul><p>
    232 The <b style="color:#000;background:#ffff66">Newport</b> <a class="wiki" href="/wiki/OpenWrt">OpenWrt</a> BSP provides the following:
    233 </p>
    234 <ul><li>Linux 4.x kernel (fairly vanilla)
    235 </li><li>latest wireless drivers (compat-wireless)
    236 </li><li>tuned for minimal FLASH/memory footprint (entire distro fits on embedded 16MB FLASH)
    237 </li></ul><p>
    238 <span class="wikianchor" id="ubuntu"></span>
    239 </p>
    240 <h2 id="Ubuntu">Ubuntu</h2>
    241 <p>
    242 Gateworks offers a pre-built Ubuntu distribution using the latest Gateworks kernel with Freescale patches as well as instructions on how to build your own Ubuntu based distribution.
    243 </p>
    244 <ul><li><a class="missing wiki">Ubuntu Wiki and Software?</a>
    245 </li></ul><p>
    246 <span class="wikianchor" id="third_party_linux"></span>
    247 </p>
    248 <h1 id="ThirdPartyLinuxDistros">Third Party Linux Distros</h1>
    249 <p>
    250 While Gateworks cannot fully support all Linux distros, it is relatively simple to overlay a Gateworks <b style="color:#000;background:#ffff66">Newport</b> kernel onto any non-Gateworks third party Linux distro rootfs image.
    251 </p>
    252 <p>
    253 The following links will describe what is needed:
    254 </p>
    255 <ol><li>Linux kernel supporting <b style="color:#000;background:#ffff66">Newport</b>: <a class="wiki" href="/wiki/linux/kernel">linux/kernel</a>
    256 </li><li>Root Filesystem: <a class="wiki" href="/wiki/newport#rootfs">see below</a>
    257 </li><li>Bootable media: <a class="wiki" href="/wiki/linux/blockdev">linux/blockdev</a>
    258 </li></ol><p>
    259 <span class="wikianchor" id="rootfs"></span>
    260 </p>
    261 <h3 id="RootfilesystemSources">Root filesystem Sources</h3>
    262 <p>
    263 There are several sources of pre-built root filesystems that are compatible with <b style="color:#000;background:#ffff66">Newport</b>. As <b style="color:#000;background:#ffff66">Newport</b> uses an ARM 64bit based SoC, you need to use something that is compatible with an ARMv8 instruction set. Many pre-built distributions will reference 'arm64' which means 'ARM 64-bit' which is appropriate for the CN80XX / CN81XX SoC.
    264 </p>
    265 <p>
    266 Some popular third-party sources:
    267 </p>
    268 <ul><li><a class="ext-link" href="http://releases.ubuntu.com/ubuntu-core/"><span class="icon">​</span>Ubuntu Core</a> - this is a minimal filesystem that you can build off of at runtime by adding packages from various repositories.
    269 </li><li><a class="ext-link" href="https://releases.linaro.org/"><span class="icon">​</span>Linaro</a> - Linaro has several root filesystems available.
    270 </li></ul><p>
    271 Notes:
    272 </p>
    273 <ul><li>some root filesystems may require you to manually add a user before booting (ie Ubuntu Core)
    274 </li></ul><p>
    275 <span class="wikianchor" id="mainline-linux"></span>
    276 </p>
    277 <h1 id="MainlineLinuxKernelsupport">Mainline Linux Kernel support</h1>
    278 <p>
     195 * some root filesystems may require you to manually add a user before booting (ie Ubuntu Core)
     196 * the default Newport bootloader expects to find the Image in the /boot directory on the 2nd partition of type ext2/3/4
     197
     198[=#mainline-linux]
     199= Mainline Linux Kernel support =
    279200Gateworks actively participates in the development of the Linux kernel.
    280 </p>
    281 <p>
     201
    282202Cavium licenses CPU core IP from ARM and the name they give the CPU core within the OCTEON-TX CN80XX / CN81XX is the Cavium 'ThunderX'. Therefore many of the peripheral drivers within the Linux kernel have 'thunderx' in their name and more often then not the 'OCTEON' name refers to the older OCTEON MIP64 core.
    283 </p>
    284 <p>
     203
    285204The following table shows what OCTEON-TX CN80XX / CN81XX peripherals support is available in the mainline kernel starting from 4.13:
    286 </p>
    287 <table class="wiki">
    288 <tr><th> Feature                                          </th><th> Support  </th><th> Notes
    289 </th></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/multicoreprocessing">SMP</a>                      </td><td> Yes        </td><td style="text-align: center">         
    290 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/serial">serial</a> UART                                  </td><td> Yes        </td><td>   
    291 </td></tr><tr><td style="text-align: left">I2C                                                 </td><td> Yes (4.9+) </td><td>   
    292 </td></tr><tr><td style="text-align: left">Networking MAC (thunderx_bgx)                       </td><td> Yes (4.2+) </td><td>   
    293 </td></tr><tr><td style="text-align: left">Networking PHY (thunder_xcv)                        </td><td> Yes (4.9+) </td><td>   
    294 </td></tr><tr><td style="text-align: left">PCI                                                 </td><td> Yes (4.6+) </td><td>   
    295 </td></tr><tr><td style="text-align: left">SPI                                                 </td><td> Yes (4.9+) </td><td>   
    296 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/MultiMediaCard">MultiMediaCard</a> eMMC / microSD                </td><td style="text-align: right"> Yes (4.12+)</td><td>   
    297 </td></tr><tr><td style="text-align: left">HW RNG (Hardware Random Number Generator)           </td><td> Yes (4.9+) </td><td>   
    298 </td></tr><tr><td style="text-align: left">HW Compressions offload                             </td><td style="text-align: right"> Yes (4.12+)</td><td>   
    299 </td></tr><tr><td style="text-align: left">Crypto                                              </td><td style="text-align: right"> Yes (4.11+)</td><td>   
    300 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/gsc#rtc">RTC</a>                                  </td><td> Yes        </td><td>   
    301 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/gpio">LED/GPIO</a>                                </td><td style="text-align: right"> Yes (4.14+)</td><td>   
    302 </td></tr><tr><td style="text-align: left">USB 3.0                                             </td><td> Yes        </td><td>   
    303 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/sata">mSATA</a>                                   </td><td> Yes        </td><td>   
    304 </td></tr><tr><td style="text-align: left"><a class="wiki" href="/wiki/canbus">CAN bus</a>                               </td><td> Yes        </td><td>   
    305 </td></tr></table>
    306 <p>
    307 For details on building a Linux kernel see <a class="wiki" href="/wiki/linux/kernel">here</a>
    308 </p>
    309 }}}
     205||= Feature =||= Support =||= Notes =||
     206|| [wiki:multicoreprocessing SMP]  || Yes || ||
     207|| [wiki:serial] UART || Yes || ||     
     208|| I2C || Yes (4.9+) ||
     209|| Networking MAC (thunderx_bgx) || Yes (4.2+) ||       
     210|| Networking PHY (thunder_xcv)  || Yes (4.9+) ||       
     211|| PCI || Yes (4.6+) ||
     212|| SPI || Yes (4.9+) ||
     213|| [wiki:MultiMediaCard MultiMediaCard] eMMC / microSD || Yes (4.12+) ||       
     214|| HW RNG (Hardware Random Number Generator) || Yes (4.9+) || ||
     215|| HW Compressions offload || Yes (4.12+) || ||
     216|| Crypto || Yes (4.11+) || ||
     217|| [wiki:gsc#rtc RTC] || Yes || ||
     218|| [wiki:gpio LED/GPIO] || Yes (4.14+) || ||
     219|| USB 3.0 || Yes || ||
     220|| [wiki:sata mSATA] || Yes || ||
     221|| [wiki:canbus CAN bus] || Yes || ||
     222
     223For details on building a Linux kernel see [wiki:linux/kernel here]