Diff for /wikisrc/ports/evbarm/tegra.mdwn between versions 1.37 and 1.48

version 1.37, 2016/06/18 06:44:48 version 1.48, 2017/10/10 10:52:21
Line 1 Line 1
 [[!meta title="NetBSD/evbarm on NVIDIA Tegra"]]  [[!meta title="NetBSD/evbarm on NVIDIA Tegra"]]
   
 The NetBSD tegra port currently supports the NVIDIA Tegra K1 (32-bit) system-on-a-chip. The [NVIDIA Jetson TK1 development kit](https://developer.nvidia.com/jetson-tk1) is a board based on the Tegra K1 SoC.  NetBSD 8.0 supports the NVIDIA Tegra K1 (32-bit) system-on-a-chip.
   NetBSD -current adds support for the NVIDIA Tegra X1 system-on-a-chip.
   
   The [NVIDIA Jetson TK1 development kit](https://developer.nvidia.com/jetson-tk1) is a board based on the Tegra K1 SoC.
   The [NVIDIA Jetson TX1 development kit](https://developer.nvidia.com/jetson-tx1) is a board based on the Tegra X1 SoC.
   
   
 [[!toc levels=2]]  [[!toc levels=2]]
   
Line 8  The NetBSD tegra port currently supports Line 13  The NetBSD tegra port currently supports
  - CPU: Cortex-A15: NVIDIA Tegra K1 (T124) (4-core)   - CPU: Cortex-A15: NVIDIA Tegra K1 (T124) (4-core)
    - VFP / NEON     - VFP / NEON
    - CPU frequency scaling     - CPU frequency scaling
    - CPU: Cortex-A57: NVIDIA Tegra X1 (T210) (4-core)
      - VFP / NEON
  - GIC   - GIC
  - ARM generic timer   - ARM generic timer
  - Clock and reset controller   - Clock and reset controller
Line 21  The NetBSD tegra port currently supports Line 28  The NetBSD tegra port currently supports
  - Watchdog timer   - Watchdog timer
  - SDMMC [[!template id=man name="sdhc" section="4"]] controller   - SDMMC [[!template id=man name="sdhc" section="4"]] controller
  - USB 2.0 [[!template id=man name="ehci" section="4"]] controller   - USB 2.0 [[!template id=man name="ehci" section="4"]] controller
    - USB 3.0 [[!template id=man name="xhci" section="4"]] controller
      - Requires the [sysutils/tegra-firmware](http://pkgsrc.se/sysutils/tegra-firmware) package to be installed.
  - PCI express   - PCI express
  - SATA [[!template id=man name="ahcisata" section="4"]] controller   - SATA [[!template id=man name="ahcisata" section="4"]] controller
  - HDMI   - HDMI
Line 33  The NetBSD tegra port currently supports Line 42  The NetBSD tegra port currently supports
    - TMP451 [[!template id=man name="titemp" section="4"]] temperature sensor (on I2C)     - TMP451 [[!template id=man name="titemp" section="4"]] temperature sensor (on I2C)
    - RF kill switch     - RF kill switch
    - Power button     - Power button
    - Jetson TX1
      - On-board Realtek RTL8153 [[!template id=man name="cdce" section="4"]] gigabit ethernet
  - AS3722 power management unit   - AS3722 power management unit
  - eFUSE   - eFUSE
  - SoC thermal sensors   - SoC thermal sensors
Line 43  The NetBSD tegra port currently supports Line 54  The NetBSD tegra port currently supports
  - APB DMA   - APB DMA
  - Audio Hub (AHUB)   - Audio Hub (AHUB)
  - GPU (nouveau)   - GPU (nouveau)
  - USB 3.0 [[!template id=man name="xhci" section="4"]] controller  
  - SPI controller   - SPI controller
  - PWM controller   - PWM controller
  - PCIe MSI support   - PCIe MSI support
  - CL-DVFS   - CL-DVFS
  - LVDS/eDP display output   - LVDS/eDP display output
    - [[Chromebook|tegra-chromebook]] support
   
 # Generating a boot script  # Generating a boot script
   
 The Tegra kernels need a .dtb for your board to boot. [NVIDIA Jetson TK1 .dtb](http://ftp.netbsd.org/pub/NetBSD/misc/skrll/tegra/tegra124-jetson-tk1.dtb)  The Tegra kernels need a .dtb for your board to boot. The dtb here was updated on 2017-04-13 and is generated from a Linux 4.10.10 source tree. [NVIDIA Jetson TK1 .dtb](http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/tegra/tegra124-jetson-tk1.dtb)
   
 [[!template  id=programlisting text="""  [[!template  id=programlisting text="""
 $ cat boot.txt  $ cat boot.txt
 setenv bootargs root=ld1a  setenv bootargs root=ld0a
 fatload mmc 1:1 0x90000000 netbsd.ub  fatload mmc 1:1 0x90000000 netbsd.ub
 fatload mmc 1:1 ${fdt_addr_r} tegra124-jetson-tk1.dtb  fatload mmc 1:1 ${fdt_addr_r} tegra124-jetson-tk1.dtb
 fdt addr ${fdt_addr_r}  fdt addr ${fdt_addr_r}
Line 68  $ mkubootimage -A arm -C none -O netbsd  Line 79  $ mkubootimage -A arm -C none -O netbsd 
   
 Jetson TK1 boards come with Linux4Tegra R19.x installed, which doesn't use U-Boot. The easiest way to get U-Boot is to upgrade to Linux4Tegra R21.x (Linux PC or VM required) following the [quick start guide](http://developer.download.nvidia.com/embedded/L4T/r21_Release_v4.0/l4t_quick_start_guide.txt).  Jetson TK1 boards come with Linux4Tegra R19.x installed, which doesn't use U-Boot. The easiest way to get U-Boot is to upgrade to Linux4Tegra R21.x (Linux PC or VM required) following the [quick start guide](http://developer.download.nvidia.com/embedded/L4T/r21_Release_v4.0/l4t_quick_start_guide.txt).
   
   U-Boot for Jetson TX1 is available in pkgsrc: [sysutils/u-boot-jetson-tx1](http://pkgsrc.se/sysutils/u-boot-jetson-tx1).
   
 # Modesetting  # Modesetting
   
 ## Console  ## Console
Line 89  Section "Device" Line 102  Section "Device"
 EndSection  EndSection
 """]]  """]]
   
   # GPU (nouveau)
   
   To enable the GPU, add the following before the `bootm` command in the boot script:
   
   [[!template  id=programlisting text="""
   fdt set /gpu@0,57000000 status okay
   """]]
   
   For the nouveau driver to load successfully, firmware is required:
   
   * Install the [sysutils/tegra-firmware](http://pkgsrc.se/sysutils/tegra-firmware) package from pkgsrc.
   * Extract the contents of [tegra-nouveau-firmware.tar.gz](http://cdn.netbsd.org/pub/NetBSD/misc/jmcneill/tegra/tegra-nouveau-firmware.tar.gz) to ''/libdata/firmware/nouveau''.
   
   You should see the following messages at boot:
   
   [[!template  id=programlisting text="""
   nouveau0 at fdt0: GPU
   drm kern info: nouveau  [  DEVICE][nouveau0] BOOT0  : 0x0ea000a1
   drm kern info: nouveau  [  DEVICE][nouveau0] Chipset: GK20A (NVEA)
   drm kern info: nouveau  [  DEVICE][nouveau0] Family : NVE0
   drm kern info: nouveau  [     PFB][nouveau0] RAM type: stolen system memory
   drm kern info: nouveau  [     PFB][nouveau0] RAM size: 2019 MiB
   drm kern info: nouveau  [     PFB][nouveau0]    ZCOMP: 0 tags
   drm kern info: nouveau  [  PGRAPH][nouveau0] using external firmware
   drm kern info: nouveau  [     DRM] VRAM: 2019 MiB
   drm kern info: nouveau  [     DRM] GART: 1048576 MiB
   drm kern error: nouveau E[   PFIFO][nouveau0] unsupported engines 0x00000030
   drm kern error: nouveau E[     DRM] failed to create ce channel, -22
   drm kern info: nouveau  [     DRM] MM: using GRCE for buffer copies
   nouveau0: initialized nouveau 1.1.1 20120801 on minor 1
   """]]
   
 # dmesg  # dmesg
   
 [[!template  id=programlisting text="""  [[!template  id=programlisting text="""
Line 364  WARNING: CHECK AND RESET THE DATE! Line 409  WARNING: CHECK AND RESET THE DATE!
 - [Hardware documentation](https://developer.nvidia.com/hardware-design-and-development)  - [Hardware documentation](https://developer.nvidia.com/hardware-design-and-development)
 - [Linux For Tegra](https://developer.nvidia.com/linux-tegra)  - [Linux For Tegra](https://developer.nvidia.com/linux-tegra)
 - [Device Tree](http://www.devicetree.org)  - [Device Tree](http://www.devicetree.org)
   
   .

Removed from v.1.37  
changed lines
  Added in v.1.48


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb