USB CDC 관련세부사항
https://en.wikipedia.org/wiki/Ethernet_over_USB
http://processors.wiki.ti.com/index.php/Networking_over_USB
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 007: ID 0955:7020 NVidia Corp.
Bus 001 Device 003: ID 045e:00cb Microsoft Corp. Basic Optical Mouse v2.0
Bus 001 Device 002: ID 045e:07f8 Microsoft Corp. Wired Keyboard 600 (model 1576)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t // Host USB 와 Module 관련부분 확인
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
|__ Port 9: Dev 7, If 0, Class=Communications, Driver=rndis_host, 480M
|__ Port 9: Dev 7, If 1, Class=CDC Data, Driver=rndis_host, 480M
|__ Port 9: Dev 7, If 2, Class=Communications, Driver=cdc_acm, 480M
|__ Port 9: Dev 7, If 3, Class=CDC Data, Driver=cdc_acm, 480M
|__ Port 9: Dev 7, If 4, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 9: Dev 7, If 5, Class=Communications, Driver=cdc_ether, 480M
|__ Port 9: Dev 7, If 6, Class=CDC Data, Driver=cdc_ether, 480M
|__ Port 11: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 11: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 12: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
$ lsusb -d 0955:7020 -v // Jetson TX2 USB Descriptor 확인
Bus 001 Device 004: ID 0955:7020 NVidia Corp.
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 ?
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x0955 NVidia Corp.
idProduct 0x7020
bcdDevice 0.01
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 248
bNumInterfaces 7
bConfigurationValue 1
iConfiguration 4
bmAttributes 0x80
(Bus Powered)
MaxPower 2mA
Interface Association:
bLength 8
bDescriptorType 11
bFirstInterface 0
bInterfaceCount 2
bFunctionClass 2 Communications
bFunctionSubClass 6 Ethernet Networking
bFunctionProtocol 0
iFunction 7
Interface Descriptor:
....
- Host PC에서 관련 Module Driver 확인
사용되어지는 Module Driver를 알았으니, Depend를 알아보자.
$ lsmod // Host PC Module 사용확인
Module Size Used by
rndis_wlan 57344 0
rndis_host 16384 1 rndis_wlan
cfg80211 622592 1 rndis_wlan
cdc_ether 16384 1 rndis_host
usbnet 45056 3 rndis_wlan,rndis_host,cdc_ether
mii 16384 1 usbnet
uas 24576 0
usb_storage 69632 2 uas
cdc_acm 32768 2
pci_stub 16384 1
vboxpci 24576 0
vboxnetadp 28672 0
vboxnetflt 28672 0
vboxdrv 471040 3 vboxpci,vboxnetadp,vboxnetflt
binfmt_misc 20480 1
nls_iso8859_1 16384 2
snd_hda_codec_hdmi 49152 1
intel_rapl 20480 0
snd_hda_codec_realtek 106496 1
snd_hda_codec_generic 73728 1 snd_hda_codec_realtek
x86_pkg_temp_thermal 16384 0
intel_powerclamp 16384 0
coretemp 16384 0
kvm_intel 217088 0
kvm 598016 1 kvm_intel
snd_hda_intel 40960 3
snd_hda_codec 126976 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
irqbypass 16384 1 kvm
snd_hda_core 81920 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep 20480 1 snd_hda_codec
snd_pcm 98304 4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
crct10dif_pclmul 16384 0
crc32_pclmul 16384 0
snd_seq_midi 16384 0
ghash_clmulni_intel 16384 0
snd_seq_midi_event 16384 1 snd_seq_midi
joydev 24576 0
pcbc 16384 0
input_leds 16384 0
aesni_intel 188416 0
aes_x86_64 20480 1 aesni_intel
snd_rawmidi 32768 1 snd_seq_midi
crypto_simd 16384 1 aesni_intel
snd_seq 65536 2 snd_seq_midi,snd_seq_midi_event
snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi
glue_helper 16384 1 aesni_intel
snd_timer 32768 2 snd_seq,snd_pcm
cryptd 24576 3 crypto_simd,ghash_clmulni_intel,aesni_intel
snd 81920 17 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi
soundcore 16384 1 snd
intel_cstate 20480 0
intel_rapl_perf 16384 0
mei_me 40960 0
shpchp 36864 0
mei 90112 1 mei_me
acpi_pad 180224 0
mac_hid 16384 0
parport_pc 36864 1
ppdev 20480 0
lp 20480 0
parport 49152 3 parport_pc,lp,ppdev
autofs4 40960 2
hid_generic 16384 0
usbhid 49152 0
hid 118784 2 usbhid,hid_generic
i915 1630208 104
i2c_algo_bit 16384 1 i915
drm_kms_helper 172032 1 i915
syscopyarea 16384 1 drm_kms_helper
e1000e 249856 0
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
ptp 20480 1 e1000e
drm 401408 6 drm_kms_helper,i915
pps_core 20480 1 ptp
ahci 36864 3
libahci 32768 1 ahci
video 45056 1 i915
좀 더 자세히 알고 싶다면 USB와 같이 동작되는 Udev 관련부분을 찾아보자.
이 부분 까지 조사하지 않고 서술만 한다.
$ ls /lib/udev/rules.d/
39-usbmuxd.rules 73-special-net-names.rules
40-crda.rules 73-usb-net-by-mac.rules
40-usb-media-players.rules 75-net-description.rules
...
$ ls /sys/class/net/
enp0s20f0u9 enp0s20f0u9i5 enp0s31f6 lo
https://wiki.archlinux.org/index.php/Android_tethering
https://unix.stackexchange.com/questions/388300/udev-does-not-rename-usb-ethernet-device
Udev관련 Rule
http://fewstreet.com/2015/06/09/ubuntu-udev-naming-rules.html
- Jetson TX2의 USB-ACM Interface
Jetson Manual을 읽어보면, 기본으로 nvidia/nvidia 로 id/pw로 제공을 하며, 두번째 id와 pw는 ubuntu/ubuntu를 제공해준다.
$ ls /dev/ttyACM0 // USB ACM Interface 확인
/dev/ttyACM0
$ minicom -s // JetsonTx2 접속 nvidia:nvidia
2.1 Jetson의 USB Ethernet 통신 설정
Host PC와 Jetson Tx2 USB의 설정을하면 USB를 통하여 Internet 통신이 가능하다.
이를 이용하여 SSH 와 SFTP 및 추후 GDB까지 기능확장이 가능하다.
이 관련 Manual은 Mass Storage의 영문 Manual을 참조하자.
- Host PC의 USB Host 의 Network 설정
나의 경우 Host PC 아래와 같이 두 개의 USB Interface가 잡히며, 이를 설정해주자.
이 관련내용은 Mass Storage의 영문 매뉴얼을 참조하자.
직접설정
$ sudo ifconfig enp0s20f0u9 192.168.55.3 netmask 255.255.255.0 up
$ sudo ifconfig enp0s20f0u9i5 192.168.55.4 netmask 255.255.255.0 up
설정환경
$ sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback
#allow-hotplug enp0s20f0u9
auto enp0s20f0u9
iface enp0s20f0u9 inet static
address 192.168.55.3
netmask 255.255.255.0
#gateway 192.168.55.1
$ sudo /etc/init.d/networking restart
$ sudo ifup enp0s20f0u9
https://wiki.debian.org/NetworkConfiguration
설정후 확인
$ ifconfig -a
enp0s20f0u9 Link encap:Ethernet HWaddr 86:dd:47:07:ec:e4
inet addr:192.168.55.3 Bcast:192.168.55.255 Mask:255.255.255.0
inet6 addr: fe80::84dd:47ff:fe07:ece4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:761 errors:0 dropped:0 overruns:0 frame:0
TX packets:1065 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:95357 (95.3 KB) TX bytes:229667 (229.6 KB)
enp0s20f0u9i5 Link encap:Ethernet HWaddr 16:bd:4f:fa:6a:df
inet addr:192.168.55.4 Bcast:192.168.55.255 Mask:255.255.255.0
inet6 addr: fe80::14bd:4fff:fefa:6adf/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:800 errors:0 dropped:0 overruns:0 frame:0
TX packets:1017 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:98669 (98.6 KB) TX bytes:178966 (178.9 KB)
enp0s31f6 Link encap:Ethernet HWaddr 70:85:c2:3e:a8:2b
inet addr:10.0.0.107 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::725b:9a50:8ca0:81e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:31853921 errors:0 dropped:0 overruns:0 frame:0
TX packets:317267 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46162303120 (46.1 GB) TX bytes:35161467 (35.1 MB)
Interrupt:16 Memory:df000000-df020000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:21308 errors:0 dropped:0 overruns:0 frame:0
TX packets:21308 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2903284 (2.9 MB) TX bytes:2903284 (2.9 MB)
- Jetson TX2의 USB Ethernet Device 설정
상위의 Serial 프로그램(minicom)을 이용하여 ttyACM0 접속하여 Jetson TX2의 ethernet 환경을 살펴보자
Jetson Network 환경 확인
$ ifconfig -a
docker0 Link encap:Ethernet HWaddr 02:42:d0:89:67:5a
inet addr:172.17.0.1 Bcast:172.17.255.255 Mask:255.255.0.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
dummy0 Link encap:Ethernet HWaddr 16:34:65:bc:75:19
BROADCAST NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
eth0 Link encap:Ethernet HWaddr 00:04:4b:c5:80:6f
inet addr:10.0.0.170 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::9fdc:aa1b:faf4:9ad0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:208078 errors:0 dropped:0 overruns:0 frame:0
TX packets:1925 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20077947 (20.0 MB) TX bytes:354820 (354.8 KB)
Interrupt:42
l4tbr0 Link encap:Ethernet HWaddr 7a:f3:26:af:7a:49
inet addr:192.168.55.1 Bcast:192.168.55.255 Mask:255.255.255.0
inet6 addr: fe80::3851:d0ff:feaa:b4c4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10704 errors:0 dropped:0 overruns:0 frame:0
TX packets:101 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1739228 (1.7 MB) TX bytes:10780 (10.7 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:219 errors:0 dropped:0 overruns:0 frame:0
TX packets:219 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:16393 (16.3 KB) TX bytes:16393 (16.3 KB)
tunl0 Link encap:IPIP Tunnel HWaddr
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
usb0 Link encap:Ethernet HWaddr 9e:52:2b:63:ed:f2
inet6 addr: fe80::9c52:2bff:fe63:edf2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5407 errors:5407 dropped:0 overruns:0 frame:5407
TX packets:4407 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:874353 (874.3 KB) TX bytes:813177 (813.1 KB)
usb1 Link encap:Ethernet HWaddr 7a:f3:26:af:7a:49
inet6 addr: fe80::78f3:26ff:feaf:7a49/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5297 errors:0 dropped:0 overruns:0 frame:0
TX packets:4519 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:864875 (864.8 KB) TX bytes:633831 (633.8 KB)
wlan0 Link encap:Ethernet HWaddr 00:04:4b:c5:80:6d
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
usb0 직접 설정 or DHCP 설정
$ sudo ifconfig usb0 192.168.55.2 netmask 255.255.255.0 up
or
$ udhcpc -i usb0 // DHCP Client로 설정
network 환경설정
$ sudo vi /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
auto usb0
iface usb0 inet static
netmask 255.255.255.0
address 192.168.55.2
상위와 같이 설정후 Host PC에서 Jetson(192.168.55.2)로 접속가능.(SSH/SFTP/NFS)
$ ssh nvidia@192.168.55.2 // ID: ubuntu 가능
$ sftp nvidia@192.168.55.2 // ID: ubuntu 가능
아래와 같이 Kernel에서 NFS는 지원이 되지만, /sbin/mount의 NFS가 지원이 되지 않아 별도의 package 설치
$ cat /proc/filesystems | grep nfs // Kernel의 NFS지원확인
$ sudo apt-get install nfs-common // mount nfs 지원
$/sbin/mount // mount 명령어 nfs 지원확인
mountall mount.ecryptfs_private mount.lowntfs-3g mount.nfs4 mount.ntfs-3g
mount.ecryptfs mount.fuse mount.nfs mount.ntfs
Host PC의 NFS Server 설정 후 아래와 같이 테스트
$ mount -t nfs -o nolock 192.168.5.3:/home/jhlee/test /home/nvidia/test
2.2 USB Storage
이 부분은 추후 사용하기 위해 만든 것이며, 지금은 자료만 모음
USB Mass Storage Disable
https://askubuntu.com/questions/888052/how-to-block-all-usb-storage-devices-in-ubuntu
https://www.cyberciti.biz/faq/linux-disable-modprobe-loading-of-usb-storage-driver/
https://help.ubuntu.com/community/Mount/USB
3. Flash Jetson TX2
Host PC에서 USB를 통해 손쉽게 Flash하며, Backup 도 가능하기 때문에 관련 Command를 소개한다.
Host PC와 Jetson의 microUSB 과 연결하여 USB를 통하여 Image를 Write or Read 할 수 있는 기능이다.
만약 문제가 있다면, 상위 USB Force Recovery Mode로 진입하자.
$ lsusb // Host 에서 USB 로 Jetson TX2 연결 후 Connection 확인
.....
Bus 001 Device 036: ID 0955:7020 NVidia Corp.
- Image Flash 방법 (USB 연결확인 후)
$ cd jetsonTX2/64_TX2/Linux_for_Tegra // JetPack 3.3 설치 위치
$ sudo ./flash.sh jetson-tx2 mmcblk0p1// For Jetson TX2
$ sudo ./flash.sh -r -k APP -G clone.img jetson-tx2 mmcblk0p1 //기존에 사용하던 Image Backup
$ ls
clone.img clone.img.raw
$ sudo cp clone.img.raw bootloader/system.img // 실행전 반드시 bootloader/system.img bakcup
$ sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1 // 적용된 이미지로 Flash
system.img 는 mount가 되지 않으며, system.img.raw만 mount가 되었으며, mount 한 후에 NVIDIA에서 제공하는 SDK가 제대로 설치되었는지 확인하자.
$ mkdir test //mount 할 장소
$ sudo mount -t ext4 -o loop ./bootloader/system.img.raw ./test // RAW File Mount
$ ls test/ // Target File System , APP
README.txt bin boot dev etc home lib lost+found media mnt opt proc root run sbin snap srv sys tmp usr var // Target Filesystem
$ ls ./test/usr/local/ //CUDA 설치확인
bin etc games include lib man sbin share src // 미설치
$ ls ./test/usr/src/ //tensorrt 설치 확인 /usr/src/tensorrt/bin/ , /usr/src/tensorrt/samples/
linux-headers-4.4.38-tegra
$ sudo umount test // 반드시 unmount
$ ./flash.sh -h
Usage: sudo ./flash.sh [options]
Where,
target board: Valid target board name.
rootdev: Proper root device.
options:
-b --------- nvflash boot control table config file.
-c --------- nvflash partition table config file.
-d --------- device tree file.
-e ------- Target device's eMMC size.
-f -------- Path to flash application: nvflash or tegra-rcm.
-h ------------------- print this message.
-i ------------------- pass user kernel commandline as-is to kernel.
-k ---- partition name or number specified in flash.cfg.
-m ----- MTS preboot such as mts_preboot_si.
-n -------- Static nfs network assignments
:::
-o --------- ODM data.
-p --------- Total eMMC HW boot partition size.
-r ------------------- skip building and reuse existing system.img.
-s ----- PKC key used for signing and building bl_update_payload.
-t ------- tegraboot binary such as nvtboot.bin
-u -------- PKC server in @ format.
-w --------- warm boot binary such as nvtbootwb0.bin
-x --------- Tegra CHIPID. default = 0x18(jetson-tx2)
0x21(jetson-tx1), 0x40(jetson-tk1).
-y -------- PKC for secureboot, NS for non-secureboot.
-z -------------- Serial Number of target board.
-B --------- BoardId.
-C --------- Kernel commandline arguments.
WARNING:
Each option in this kernel commandline gets
higher preference over the same option from
fastboot. In case of NFS booting, this script
adds NFS booting related arguments, if -i option
is omitted.
-F --------- Flash server such as fastboot.bin.
-G ------- Read partition and save image to file.
-I ---------- initrd file. Null initrd is default.
-K ---------- Kernel image file such as zImage or Image.
-L ------ Bootloader such as cboot.bin or u-boot-dtb.bin.
-M -------- MTS boot file such as mts_si.
-N --------- i.e. :/my/exported/nfs/rootfs.
-P -- Primary GPT start address + size of PPT + 1.
-R ------ Sample rootfs directory.
-S ------------ Rootfs size in bytes. Valid only for internal
rootdev. KiB, MiB, GiB short hands are allowed,
for example, 1GiB means 1024 * 1024 * 1024 bytes.
-T -------- ITS file name. Valid only for u-boot.
--no-flash ----------- perform all steps except physically flashing the board.
This will create a system.img.
--bup ---------------- Generate bootloader update payload(BUP).
--multi-spec---------- Enable support for building multi-spec BUP.
--clean-up------------ Clean up BUP buffer when multi-spec is enabled.
--usb-instance -- Specify the USB instance to connect to; integer
ID (e.g. 0, 1), bus/dev (e.g. 003/091), or USB
port path (e.g. 3-14). The latter is best.
- Jetson TX2 Partion 구조 (Jetson TX2 확인)
Jetson TX2에서 Terminal에 접속후에 MBR이 아닌 GPT 방식 이므로 아래와 같이 확인하자
$nvidia@tegra-ubuntu:~$ sudo fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 00000000-0000-0000-0000-000000000000
Device Start End Sectors Size Type
/dev/mmcblk0p1 4097 58724352 58720256 28G Microsoft basic data
/dev/mmcblk0p2 58724353 58732544 8192 4M Microsoft basic data
/dev/mmcblk0p3 58732545 58740736 8192 4M Microsoft basic data
/dev/mmcblk0p4 58740737 58741760 1024 512K Microsoft basic data
/dev/mmcblk0p5 58741761 58742784 1024 512K Microsoft basic data
/dev/mmcblk0p6 58742785 58743808 1024 512K Microsoft basic data
/dev/mmcblk0p7 58743809 58744832 1024 512K Microsoft basic data
/dev/mmcblk0p8 58744833 58750976 6144 3M Microsoft basic data
/dev/mmcblk0p9 58750977 58757120 6144 3M Microsoft basic data
/dev/mmcblk0p10 58757121 58761216 4096 2M Microsoft basic data
/dev/mmcblk0p11 58761217 58762424 1208 604K Microsoft basic data
/dev/mmcblk0p12 58762425 58763632 1208 604K Microsoft basic data
/dev/mmcblk0p13 58763633 58764632 1000 500K Microsoft basic data
/dev/mmcblk0p14 58764633 58765632 1000 500K Microsoft basic data
/dev/mmcblk0p15 58765633 58769728 4096 2M Microsoft basic data
/dev/mmcblk0p16 58769729 58773824 4096 2M Microsoft basic data
/dev/mmcblk0p17 58773825 58786112 12288 6M Microsoft basic data
/dev/mmcblk0p18 58786113 58798400 12288 6M Microsoft basic data
/dev/mmcblk0p19 58798401 58802496 4096 2M Microsoft basic data
/dev/mmcblk0p20 58802497 59064640 262144 128M Microsoft basic data
/dev/mmcblk0p21 59064641 59326784 262144 128M Microsoft basic data
/dev/mmcblk0p22 59326785 59392320 65536 32M Microsoft basic data
/dev/mmcblk0p23 59392321 59457856 65536 32M Microsoft basic data
/dev/mmcblk0p24 59457857 59588928 131072 64M Microsoft basic data
/dev/mmcblk0p25 59588929 59720000 131072 64M Microsoft basic data
/dev/mmcblk0p26 59720001 59721024 1024 512K Microsoft basic data
/dev/mmcblk0p27 59721025 59722048 1024 512K Microsoft basic data
/dev/mmcblk0p28 59722049 60246336 524288 256M Microsoft basic data
/dev/mmcblk0p29 60246337 61071326 824990 402.8M Microsoft basic data
$nvidia@tegra-ubuntu:~$ sudo gdisk -l /dev/mmcblk0
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/mmcblk0: 61071360 sectors, 29.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 00000000-0000-0000-0000-000000000000
Partition table holds up to 29 entries
First usable sector is 4097, last usable sector is 61071327
Partitions will be aligned on 1-sector boundaries
Total free space is 1 sectors (512 bytes)
Number Start (sector) End (sector) Size Code Name
1 4097 58724352 28.0 GiB 0700 APP
2 58724353 58732544 4.0 MiB 0700 mts-bootpack
3 58732545 58740736 4.0 MiB 0700 mts-bootpack_b
4 58740737 58741760 512.0 KiB 0700 cpu-bootloader
5 58741761 58742784 512.0 KiB 0700 cpu-bootloader_b
6 58742785 58743808 512.0 KiB 0700 bootloader-dtb
7 58743809 58744832 512.0 KiB 0700 bootloader-dtb_b
8 58744833 58750976 3.0 MiB 0700 secure-os
9 58750977 58757120 3.0 MiB 0700 secure-os_b
10 58757121 58761216 2.0 MiB 0700 eks
11 58761217 58762424 604.0 KiB 0700 bpmp-fw
12 58762425 58763632 604.0 KiB 0700 bpmp-fw_b
13 58763633 58764632 500.0 KiB 0700 bpmp-fw-dtb
14 58764633 58765632 500.0 KiB 0700 bpmp-fw-dtb_b
15 58765633 58769728 2.0 MiB 0700 sce-fw
16 58769729 58773824 2.0 MiB 0700 sce-fw_b
17 58773825 58786112 6.0 MiB 0700 sc7
18 58786113 58798400 6.0 MiB 0700 sc7_b
19 58798401 58802496 2.0 MiB 0700 FBNAME
20 58802497 59064640 128.0 MiB 0700 BMP
21 59064641 59326784 128.0 MiB 0700 BMP_b
22 59326785 59392320 32.0 MiB 0700 SOS
23 59392321 59457856 32.0 MiB 0700 SOS_b
24 59457857 59588928 64.0 MiB 0700 kernel
25 59588929 59720000 64.0 MiB 0700 kernel_b
26 59720001 59721024 512.0 KiB 0700 kernel-dtb
27 59721025 59722048 512.0 KiB 0700 kernel-dtb_b
28 59722049 60246336 256.0 MiB 0700 CAC
29 60246337 61071326 402.8 MiB 0700 UDA
관련문서는 아래를 참조 혹은 설치시
Start_L4T_Docs.html 부분을 참조
Jetson_X2_Developer_Kit_User_Guide.pdf
https://developer.nvidia.com/embedded/dlc/l4t-27-1-jetson-tx2-user-guide