sdk 6.0.0.7 sk-evm was starting place for custom board.
We have done two prototypes starting from the am437-sk-evm. The first prototype had many peripherals and started right up and was stable. The second prototype has fewer peripherals:
-No external RTC crystal. (removed lines in: arch/arm/mach-omap2/omap_hwmod_43xx_data.cp2/omap_hwmod_43xx_data.c
-No ethernet (hope to use usb wireless)
-No camera, audio.
-sd card moved from mmc0 to mmc1 so we can in the future boot from mmc flash on mmc0.
-currently no touchscreen attached.
-uProcessor/sram layout preserved.
I have been looking at this for a couple of weeks. But kernel locks up, in what seems to be random places (including after command prompt).
I have tried to follow two videos on using jtag to catch fault but so far have had no luck.
I am enclosing dts and bootlog, hoping someone can give me some pointers on where to look next?
U-Boot SPL 2019.01-g99d81d6-dirty (Jul 07 2020 - 14:54:18 -0400) Trying to boot from MMC1 SPL: Please implement spl_start_uboot() for your board SPL: Direct Linux boot not active! U-Boot 2019.01-g99d81d6-dirty (Jul 07 2020 - 14:54:18 -0400) CPU : AM437X-GP rev 1.2 Model: TI AM437x GP EVM DRAM: 1 GiB PMIC: TPS65218 NAND: 0 MiB MMC: OMAP SD/MMC: 0 Loading Environment from FAT... *** Warning - bad CRC, using default environment Net: Could not get PHY for ethernet@4a100000: addr 0 Warning: ethernet@4a100000 using MAC address from ROM eth0: ethernet@4a100000 Hit any key to stop autoboot: 0 ** Invalid partition 5 ** ** Invalid partition 5 ** --booting partition: 0:2 switch to partitions #0, OK mmc0 is current device SD/MMC found on device 0 ** Unable to read file boot.scr ** ** Unable to read file uEnv.txt ** switch to partitions #0, OK mmc0 is current device SD/MMC found on device 0 4276736 bytes read in 221 ms (18.5 MiB/s) 43888 bytes read in 3 ms (14 MiB/s) ## Flattened Device Tree blob at 88000000 Booting using the fdt blob at 0x88000000 Loading Device Tree to 8fff2000, end 8ffffb6f ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.19.38-g4dae378bbe (jsp@rover) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #1 PREEMPT Wed Jul 8 12:05:33 EDT 2020 [ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: TI AM437x SK EVM [ 0.000000] Memory policy: Data cache writeback [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. [ 0.000000] cma: Reserved 48 MiB at 0xbd000000 [ 0.000000] On node 0 totalpages: 262144 [ 0.000000] Normal zone: 1728 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 196608 pages, LIFO batch:63 [ 0.000000] HighMem zone: 65536 pages, LIFO batch:15 [ 0.000000] CPU: All CPU(s) started in SVC mode. [ 0.000000] AM437x ES1.2 (sgx neon) [ 0.000000] random: get_random_bytes called from start_kernel+0xa0/0x420 with crng_init=0 [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 260416 [ 0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=031fe8d4-02 rw rootfstype=ext4 rootwait [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) [ 0.000000] Memory: 976340K/1048576K available (8192K kernel code, 307K rwdata, 2684K rodata, 1024K init, 257K bss, 23084K reserved, 49152K cma-reserved, 212992K highmem) [ 0.000000] Virtual kernel memory layout: [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB) [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB) [ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB) [ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB) [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB) [ 0.000000] .text : 0x(ptrval) - 0x(ptrval) (9184 kB) [ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (1024 kB) [ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 308 kB) [ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 258 kB) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] Tasks RCU enabled. [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e430000 [ 0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x3e430000 [ 0.000000] L2C-310 enabling early BRESP for Cortex-A9 [ 0.000000] OMAP L2C310: ROM does not support power control setting [ 0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled [ 0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB [ 0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x4e430000 [ 0.000000] OMAP clockevent source: timer2 at 24000000 Hz [ 0.000012] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns [ 0.000028] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns [ 0.000036] OMAP clocksource: timer1 at 24000000 Hz [ 0.000379] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns [ 0.000389] OMAP clocksource: 32k_counter at 32768 Hz [ 0.000719] Console: colour dummy device 80x30 [ 0.000744] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0' [ 0.000750] This ensures that you still see kernel messages. Please [ 0.000754] update your kernel commandline. [ 0.000796] Calibrating delay loop... 1987.37 BogoMIPS (lpj=9936896) [ 0.060176] pid_max: default: 32768 minimum: 301 [ 0.060354] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.060377] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.061113] CPU: Testing write buffer coherency: ok [ 0.061168] CPU0: Spectre v2: using BPIALL workaround [ 0.062015] Setting up static identity map for 0x80100000 - 0x80100060 [ 0.062152] rcu: Hierarchical SRCU implementation. [ 0.062469] EFI services will not be available. [ 0.063356] devtmpfs: initialized [ 0.070467] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 [ 0.070837] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.070858] futex hash table entries: 256 (order: -1, 3072 bytes) [ 0.073968] pinctrl core: initialized pinctrl subsystem [ 0.074626] DMI not present or invalid. [ 0.075025] NET: Registered protocol family 16 [ 0.076635] DMA: preallocated 256 KiB pool for atomic coherent allocations [ 0.144727] cpuidle: using governor ladder [ 0.144761] cpuidle: using governor menu [ 0.150387] gpio gpiochip0: (gpio-0-31): added GPIO chardev (254:0) [ 0.150485] gpiochip_setup_dev: registered GPIOs 0 to 31 on device: gpiochip0 (gpio-0-31) [ 0.150526] OMAP GPIO hardware version 0.1 [ 0.151250] gpio gpiochip1: (gpio-32-63): added GPIO chardev (254:1) [ 0.151335] gpiochip_setup_dev: registered GPIOs 32 to 63 on device: gpiochip1 (gpio-32-63) [ 0.151991] gpio gpiochip2: (gpio-64-95): added GPIO chardev (254:2) [ 0.152059] gpiochip_setup_dev: registered GPIOs 64 to 95 on device: gpiochip2 (gpio-64-95) [ 0.152707] gpio gpiochip3: (gpio-96-127): added GPIO chardev (254:3) [ 0.152773] gpiochip_setup_dev: registered GPIOs 96 to 127 on device: gpiochip3 (gpio-96-127) [ 0.153402] gpio gpiochip4: (gpio-128-159): added GPIO chardev (254:4) [ 0.153475] gpiochip_setup_dev: registered GPIOs 128 to 159 on device: gpiochip4 (gpio-128-159) [ 0.154083] gpio gpiochip5: (gpio-160-191): added GPIO chardev (254:5) [ 0.154159] gpiochip_setup_dev: registered GPIOs 160 to 191 on device: gpiochip5 (gpio-160-191) [ 0.158416] omap_gpio gpios: can't get irq resource ret=-6 [ 0.158612] No ATAGs? [ 0.158630] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. [ 0.158640] hw-breakpoint: maximum watchpoint size is 4 bytes. [ 0.170777] edma 49000000.edma: TI EDMA DMA engine driver [ 0.173236] usbcore: registered new interface driver usbfs [ 0.173293] usbcore: registered new interface driver hub [ 0.173397] usbcore: registered new device driver usb [ 0.173769] media: Linux media interface: v0.10 [ 0.173805] videodev: Linux video capture interface: v2.00 [ 0.173888] pps_core: LinuxPPS API ver. 1 registered [ 0.173896] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.173917] PTP clock support registered [ 0.173948] EDAC MC: Ver: 3.0.0 [ 0.174624] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400 [ 0.174944] Advanced Linux Sound Architecture Driver Initialized. [ 0.175980] clocksource: Switched to clocksource timer1 [ 0.182863] NET: Registered protocol family 2 [ 0.183545] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes) [ 0.183576] TCP established hash table entries: 8192 (order: 3, 32768 bytes) [ 0.183635] TCP bind hash table entries: 8192 (order: 3, 32768 bytes) [ 0.183708] TCP: Hash tables configured (established 8192 bind 8192) [ 0.183879] UDP hash table entries: 512 (order: 1, 8192 bytes) [ 0.183903] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes) [ 0.184045] NET: Registered protocol family 1 [ 0.184562] RPC: Registered named UNIX socket transport module. [ 0.184575] RPC: Registered udp transport module. [ 0.184581] RPC: Registered tcp transport module. [ 0.184587] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.184599] PCI: CLS 0 bytes, default 64 [ 0.186415] Initialise system trusted keyrings [ 0.186641] workingset: timestamp_bits=14 max_order=18 bucket_order=4 [ 0.190309] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.190983] NFS: Registering the id_resolver key type [ 0.191014] Key type id_resolver registered [ 0.191020] Key type id_legacy registered [ 0.191059] ntfs: driver 2.1.32 [Flags: R/O]. [ 0.191464] pstore: using deflate compression [ 0.193113] Key type asymmetric registered [ 0.193128] Asymmetric key parser 'x509' registered [ 0.193186] bounce: pool size: 64 pages [ 0.193244] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245) [ 0.193256] io scheduler noop registered [ 0.193262] io scheduler deadline registered [ 0.193483] io scheduler cfq registered (default) [ 0.193494] io scheduler mq-deadline registered [ 0.193501] io scheduler kyber registered [ 0.195240] pinctrl-single 44e10800.pinmux: 199 pins, size 796 [ 0.197702] pwm-backlight backlight: GPIO lookup for consumer enable [ 0.197719] pwm-backlight backlight: using device tree for GPIO lookup [ 0.197742] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/backlight[0]' [ 0.197755] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/backlight[0]' [ 0.197765] pwm-backlight backlight: using lookup tables for GPIO lookup [ 0.197774] pwm-backlight backlight: No GPIO consumer enable found [ 0.197794] pwm-backlight backlight: backlight supply power not found, using dummy regulator [ 0.197860] pwm-backlight backlight: Linked as a consumer to regulator.0 [ 0.236267] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled [ 0.238994] omap8250 44e09000.serial: No clock speed specified: using default: 48000000 [ 0.239658] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 31, base_baud = 3000000) is a 8250 [ 1.118460] console [ttyS0] enabled [ 1.123737] omap_rng 48310000.rng: Random Number Generator ver. 20 [ 1.131102] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not found, using dummy regulator [ 1.140490] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0 [ 1.147421] omapdss_dss 4832a000.dss: Dropping the link to regulator.0 [ 1.156396] panel-simple display: display supply power not found, using dummy regulator [ 1.164494] panel-simple display: Linked as a consumer to regulator.0 [ 1.171055] panel-simple display: GPIO lookup for consumer enable [ 1.177212] panel-simple display: using device tree for GPIO lookup [ 1.183541] of_get_named_gpiod_flags: parsed 'enable-gpios' property of node '/display[0]' - status (0) [ 1.193069] gpio gpiochip5: Persistence not supported for GPIO 8 [ 1.209436] brd: module loaded [ 1.220640] loop: module loaded [ 1.225925] mdio_bus fixed-0: GPIO lookup for consumer reset [ 1.231757] mdio_bus fixed-0: using lookup tables for GPIO lookup [ 1.237916] mdio_bus fixed-0: No GPIO consumer reset found [ 1.243439] libphy: Fixed MDIO Bus: probed [ 1.249173] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 1.255734] ehci-pci: EHCI PCI platform driver [ 1.261140] i2c /dev entries driver [ 1.266291] cpuidle: enable-method property 'ti,am4372' found operations [ 1.273433] sdhci: Secure Digital Host Controller Interface driver [ 1.279680] sdhci: Copyright(c) Pierre Ossman [ 1.284534] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd [ 1.290604] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup [ 1.297203] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp@44000000/mmc@48060000[0]' - status (0) [ 1.307928] gpio gpiochip0: Persistence not supported for GPIO 6 [ 1.313968] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22) [ 1.322719] omap_hsmmc 48060000.mmc: Got CD GPIO [ 1.327367] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp [ 1.333398] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup [ 1.339972] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp@44000000/mmc@48060000[0]' [ 1.349944] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp@44000000/mmc@48060000[0]' [ 1.359823] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup [ 1.366562] omap_hsmmc 48060000.mmc: No GPIO consumer wp found [ 1.373018] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.379363] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led1[0]' - status (0) [ 1.388454] gpio gpiochip2: Persistence not supported for GPIO 2 [ 1.394485] no flags found for gpios [ 1.398203] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led2[0]' - status (0) [ 1.407230] gpio gpiochip2: Persistence not supported for GPIO 3 [ 1.413258] no flags found for gpios [ 1.416929] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led4[0]' - status (0) [ 1.425932] gpio gpiochip2: Persistence not supported for GPIO 0 [ 1.431974] no flags found for gpios [ 1.435645] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led5[0]' - status (0) [ 1.444694] gpio gpiochip3: Persistence not supported for GPIO 15 [ 1.450825] no flags found for gpios [ 1.454483] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led7[0]' - status (0) [ 1.463499] gpio gpiochip2: Persistence not supported for GPIO 5 [ 1.469538] no flags found for gpios [ 1.473191] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led9[0]' - status (0) [ 1.482205] gpio-69 (am437x:yellow:alert): gpiod_request: status -16 [ 1.488989] leds-gpio: probe of leds failed with error -16 [ 1.494776] ledtrig-cpu: registered to indicate activity on CPUs [ 1.503216] NET: Registered protocol family 10 [ 1.508741] Segment Routing with IPv6 [ 1.512496] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.519124] NET: Registered protocol family 17 [ 1.523859] Key type dns_resolver registered [ 1.528454] omap_voltage_late_init: Voltage driver support not added [ 1.535604] Loading compiled-in X.509 certificates [ 1.580621] vdds_ddr: Bringing 1350000uV into 1500000-1500000uV [ 1.589583] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 400 kHz [ 1.596533] omap_i2c 4802a000.i2c: bus 1 rev0.12 at 400 kHz [ 1.602639] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not found, using dummy regulator [ 1.612103] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0 [ 1.619036] DSS: OMAP DSS rev 2.0 [ 1.623339] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_component_ops) [ 1.631631] omapdrm omapdrm.0: DMM not available, disable DMM support [ 1.638411] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 1.645060] [drm] No driver support for vblank timestamp query. [ 1.738979] Console: switching to colour frame buffer device 60x34 [ 1.772238] omapdrm omapdrm.0: fb0: omapdrm frame buffer device [ 1.778904] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0 [ 1.786567] cpu cpu0: Linked as a consumer to regulator.2 [ 1.792064] cpu cpu0: Dropping the link to regulator.2 [ 1.797437] cpu cpu0: Linked as a consumer to regulator.2 [ 1.804023] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd [ 1.810179] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup [ 1.816821] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp@44000000/mmc@48060000[0]' - status (0) [ 1.827577] gpio gpiochip0: Persistence not supported for GPIO 6 [ 1.833618] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22) [ 1.842371] omap_hsmmc 48060000.mmc: Got CD GPIO [ 1.847030] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp [ 1.853062] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup [ 1.859651] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp@44000000/mmc@48060000[0]' [ 1.869628] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp@44000000/mmc@48060000[0]' [ 1.879512] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup [ 1.886254] omap_hsmmc 48060000.mmc: No GPIO consumer wp found [ 1.892449] omap_hsmmc 48060000.mmc: Linked as a consumer to regulator.4 [ 1.926441] hctosys: unable to open rtc device (rtc0) [ 1.932958] ALSA device list: [ 1.935962] No soundcards found. [ 1.941317] Waiting for root device PARTUUID=031fe8d4-02... [ 2.006055] mmc0: host does not support reading read-only switch, assuming write-enable [ 2.019040] mmc0: new high speed SDHC card at address aaaa [ 2.026309] mmcblk0: mmc0:aaaa SC32G 29.7 GiB [ 2.036467] mmcblk0: p1 p2 [ 2.068741] random: fast init done [ 2.110404] EXT4-fs (mmcblk0p2): recovery complete [ 2.115274] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) [ 2.124002] VFS: Mounted root (ext4 filesystem) on device 179:2. [ 2.141588] devtmpfs: mounted [ 2.146484] Freeing unused kernel memory: 1024K [ 2.151193] Run /sbin/init as init process [ 2.499415] systemd[1]: System time before build time, advancing clock. [ 2.548844] systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=hybrid) [ 2.571031] systemd[1]: Detected architecture arm. Welcome to Arago 2019.05! [ 2.619399] systemd[1]: Set hostname to <am437x-evm>. [ 2.927577] systemd[1]: File /lib/systemd/system/systemd-journald.service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling. [ 2.944780] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.) [ 3.369705] random: systemd: uninitialized urandom read (16 bytes read) [ 3.377292] systemd[1]: Listening on udev Control Socket. [ OK ] Listening on udev Control Socket. [ 3.406354] random: systemd: uninitialized urandom read (16 bytes read) [ 3.418409] systemd[1]: Created slice system-serial\x2dgetty.slice. [ OK ] Created slice system-serial\x2dgetty.slice. [ 3.446858] random: systemd: uninitialized urandom read (16 bytes read) [ 3.455484] systemd[1]: Created slice User and Session Slice. [ OK ] Created slice User and Session Slice. [ 3.487232] systemd[1]: Listening on Network Service Netlink Socket. [ OK ] Listening on Network Service Netlink Socket. [ 3.527425] systemd[1]: Listening on udev Kernel Socket. [ OK ] Listening on udev Kernel Socket. [ OK ] Listening on Journal Socket (/dev/log). [ OK ] Listening on initctl Compatibility Named Pipe. [ OK ] Reached target Remote File Systems. [ OK ] Reached target Slices. [ OK ] Started Dispatch Password Requests to Console Directory Watch. [ OK ] Started Forward Password Requests to Wall Directory Watch. [ OK ] Reached target Paths. [ OK ] Created slice system-getty.slice. [ OK ] Listening on Process Core Dump Socket. [ OK ] Listening on Journal Socket. Starting Create list of required st�ce nodes for the current kernel... Mounting Kernel Debug File System... Starting Journal Service... Mounting POSIX Message Queue File System... Starting udev Coldplug all Devices... Starting Load Kernel Modules... [ OK ] Started Hardware RNG Entropy Gatherer Daemon. Starting Remount Root and Kernel File Systems... [ OK ] Reached target Swap. [ 4.234987] cmemk: loading out-of-tree module taints kernel. [ 4.246121] random: crng init done [ 4.249555] random: 7 urandom warning(s) missed due to ratelimiting Mounting Temporary Directory (/tmp)... [ 4.278094] CMEMK module: reference Linux version 4.19.38 [ 4.344237] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null) [ 4.365059] no physical memory specified [ OK ] Started Create list of required sta�vice no[ 4.397230] cmemk initialized des for the current kernel. [ OK ] Mounted Kernel Debug File System. [ OK ] Mounted POSIX Message Queue File System. [ 4.456666] cryptodev: driver 1.9 loaded. [ OK ] Started Remount Root and Kernel File Systems. [ 4.489234] usbcore: registered new interface driver ftdi_sio [ 4.495097] usbserial: USB Serial support registered for FTDI USB Serial Device [ OK ] Mounted Temporary Directory (/tmp). [ OK ] Started Journal Service. [ 4.547390] uio_module_drv: disagrees about version of symbol module_layout Starting Flush Journal to Persistent Storage... Starting Rebuild Hardware Database... Starting Create System Users... [FAILED] Failed to start Load Kernel Modules. See 'systemctl status systemd-modules-load.service' for details. [ 4.817037] systemd-journald[67]: Received request to flush runtime journal from PID 1 Mounting Kernel Configuration File System... Starting Apply Kernel Variables... [ OK ] Started Flush Journal to Persistent Storage. [ OK ] Started Create System Users. [ OK ] Mounted Kernel Configuration File System. Starting Create Static Device Nodes in /dev... [ OK ] Started Apply Kernel Variables. [ OK ] Started Create Static Device Nodes in /dev. [ OK ] Reached target Local File Systems (Pre). Mounting /var/volatile... Mounting /media/ram... [ OK ] Reached target Containers. [ OK ] Mounted /var/volatile. [ OK ] Mounted /media/ram. Starting Load/Save Random Seed... [ OK ] Reached target Local File Systems. Starting Rebuild Dynamic Linker Cache... Starting Rebuild Journal Catalog... Starting Create Volatile Files and Directories... [ OK ] Started Load/Save Random Seed. [ OK ] Started Rebuild Journal Catalog. [ OK ] Started Create Volatile Files and Directories. Starting Update UTMP about System Boot/Shutdown... Starting Run pending postinsts... Starting Network Time Synchronization... [ OK ] Started Update UTMP about System Boot/Shutdown. [ OK ] Started Network Time Synchronization. [ OK ] Reached target System Time Synchronized. [ OK ] Started udev Coldplug all Devices. [ OK ] Started Rebuild Hardware Database. Starting udev Kernel Device Manager... [ OK ] Started udev Kernel Device Manager. Starting Network Service... [ OK ] Started Rebuild Dynamic Linker Cache. Starting Update is Completed... [ OK ] Started Network Service. Starting Network Name Resolution... Starting Wait for Network to be Configured... [ OK ] Started Update is Completed. [ OK ] Started Network Name Resolution. [ OK ] Reached target Host and Network Name Lookups. [ OK ] Reached target Network. [ 12.451437] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec [ 12.460321] remoteproc remoteproc0: wkup_m3 is available [ 12.774562] remoteproc remoteproc0: powering up wkup_m3 [ 12.819460] pixcir_ts 1-005c: GPIO lookup for consumer attb [ 12.825073] pixcir_ts 1-005c: using device tree for GPIO lookup [ OK ] Found device /dev/ttyS0. [ 12.869140] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 242896 [ 12.943624] remoteproc remoteproc0: remote processor wkup_m3 is now up [ 12.950285] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192 [ 12.976143] of_get_named_gpiod_flags: can't parse 'attb-gpios' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 13.009060] CAN device driver interface [ 13.086423] of_get_named_gpiod_flags: parsed 'attb-gpio' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' - status (0) [ 13.103835] c_can_platform 481cc000.can: c_can_platform device registered (regs=1e20c71e, irq=50) [ 13.251784] gpio gpiochip0: Persistence not supported for GPIO 31 [ 13.336236] pixcir_ts 1-005c: GPIO lookup for consumer reset [ 13.341939] pixcir_ts 1-005c: using device tree for GPIO lookup [ 13.456373] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 13.561045] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 13.630050] omap-sham 53100000.sham: hw accel on OMAP rev 0.0 [ 13.665414] pvrsrvkm: disagrees about version of symbol module_layout [ 13.677428] omap-aes 53501000.aes: OMAP AES hw accel rev: 0.1 [ 13.710957] omap-des 53701000.des: OMAP DES hw accel rev: 0.33 [ 13.752290] pixcir_ts 1-005c: using lookup tables for GPIO lookup [ 13.765898] omap-aes 53501000.aes: will run requests pump with realtime priority [ 13.784915] pvrsrvkm: disagrees about version of symbol module_layout [ 13.792308] omap-des 53701000.des: will run requests pump with realtime priority [ 13.809330] pixcir_ts 1-005c: No GPIO consumer reset found [ 13.814863] pixcir_ts 1-005c: GPIO lookup for consumer wake [ 13.956155] pixcir_ts 1-005c: using device tree for GPIO lookup [ 13.962152] of_get_named_gpiod_flags: can't parse 'wake-gpios' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 14.125201] PM: no-rtc available, rtc-only mode disabled. [ 14.206223] of_get_named_gpiod_flags: can't parse 'wake-gpio' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 14.339483] pixcir_ts 1-005c: using lookup tables for GPIO lookup [ 14.423510] pixcir_ts 1-005c: No GPIO consumer wake found [ 14.536138] pixcir_ts 1-005c: GPIO lookup for consumer enable [ 14.541932] pixcir_ts 1-005c: using device tree for GPIO lookup [ 14.676734] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 14.852281] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/ocp@44000000/i2c@4802a000/pixcir_ts@5c[0]' [ 15.029758] pixcir_ts 1-005c: using lookup tables for GPIO lookup [ 15.035899] pixcir_ts 1-005c: No GPIO consumer enable found [ 15.286181] pixcir_ts 1-005c: pixcir_set_power_mode: can't read reg 0x33 : -121 [ 15.293539] pixcir_ts 1-005c: Failed to set IDLE mode [ 15.388795] pixcir_ts: probe of 1-005c failed with error -121 [*** ] (1 of 2) A start job is running for�pending postinsts (16s / no limit)[ 19.560290] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 19.666571] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 19.819833] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 19.873242] remoteproc remoteproc1: 54434000.pru is available [ 19.889891] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 19.960540] pru-rproc 54434000.pru: PRU rproc node pru@54434000 probed successfully [ 20.026972] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 20.034098] remoteproc remoteproc2: 54438000.pru is available [ 20.086410] pru-rproc 54438000.pru: PRU rproc node pru@54438000 probed successfully [ 20.094919] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 20.114010] remoteproc remoteproc3: 54474000.pru is available [ *** ] (2 of 2) A start job is running for� to be Configured (16s / no limit)[ 20.131493] pru-rproc 54474000.pru: PRU rproc node pru@54474000 probed successfully [ 20.165403] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 20.173993] remoteproc remoteproc4: 54478000.pru is available [ 20.195122] pru-rproc 54478000.pru: PRU rproc node pru@54478000 probed successfully [ 20.250742] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ OK ] Started Run pending postinsts. [ OK ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch. [ OK ] Created slice system-systemd\x2dfsck.slice. Starting File System Check on /dev/mmcblk0p1...
/** * @file alx-min-000.dts * * This is the linux version of the dts file for alx-min version 000. * * @author James Pawlyk * * @brief linux dts file for ALx-MIN platform * * @Copyright (c) 2020 ASCO Power Technologies, L.P. * All rights of design or invention are reserved. **/ /dts-v1/; #include "am4372.dtsi" #include <dt-bindings/pinctrl/am43xx.h> #include <dt-bindings/pwm/pwm.h> #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/input/input.h> / { /* model = "ALX Min 000";*/ model = "TI AM437x SK EVM"; compatible = "ti,am437x-sk-evm","ti,am4372","ti,am43"; aliases { display0 = &lcd0; }; chosen { stdout-path = &uart0; }; /* Backlight PWM */ lcd_bl: backlight { compatible = "pwm-backlight"; //pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>; pwms = <&ecap0 0 20000 PWM_POLARITY_INVERTED>; brightness-levels = <0 51 53 56 62 75 101 152 255>; default-brightness-level = <8>; }; /* leds */ leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&led_pins_default>; status = "okay"; led1 { label = "am437x:blue:loadons2"; gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>; /* Bank 3, pin 16 (H23) */ default-state = "off"; }; led2 { label = "am437x:blue:s2ok"; gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>; /* Bank 3, pin 17 (M24) */ default-state = "off"; }; led4 { label = "am437x:blue:s1ok"; gpios = <&gpio2 0 GPIO_ACTIVE_HIGH>; /* Bank 1, pin 0 (B5) */ default-state = "off"; }; led5 { label = "am437x:blue:heartbeat"; gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>; /* Bank 3, pin 15 (N22) */ default-state = "off"; }; led7 { label = "am437x:yellow:alert"; gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* Bank 1, pin 1 (A5) */ default-state = "off"; }; led9 { label = "am437x:yellow:notauto"; gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* Bank 1, pin 1 (A5) */ default-state = "off"; }; led11 { // bl 1 led 11 no name label = "am437x:blue:usr11"; gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; /* Bank 3, pin 14 (N24) */ linux,default-trigger = "cpu0"; default-state = "off"; }; }; /* gpios */ gpios { compatible = "ti,am4372-gpio","ti,omap4-gpio"; pinctrl-names = "default", "sleep"; pinctrl-1 = <&gpio_pins_default>; }; /* LCD Display (pasted GP EVM into here) */ lcd0: display { compatible = "microtips,awt_480272t43pc09", "panel-dpi"; ////compatible = "osddisplays,osd057T0559-34ts", "panel-dpi"; label = "lcd"; pinctrl-names = "default"; //pinctrl-0 = <&lcd_pins>; //don't think we need ths //// this enables the lcd power supply chip. enable-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>; /* GPIO5.8 (D25) */ //// mini panel panel-timing { clock-frequency = <9000000>; hactive = <480>; vactive = <272>; hfront-porch = <5>; hback-porch = <35>; hsync-len = <5>; vback-porch = <4>; vfront-porch = <8>; vsync-len = <4>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <1>; }; // john panel is this needed? //panel-info { //ac-bias = <255>; //ac-bias-intrpt = <0>; //dma-burst-sz = <24>; //bpp = <24>; //fdd = <0x80>; //sync-edge = <0>; //sync-ctrl = <1>; //raster-order = <0>; //fifo-th = <0>; //}; port { lcd_in: endpoint { remote-endpoint = <&dpi_out>; }; }; }; }; &am43xx_pinmux { pinctrl-names = "default", "sleep"; //pinctrl-0 = <&unused_pins>; /* LED Outputs Modified Pins and Added LED4 and LED5*/ led_pins_default: led_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE7) /* (A9) gpmc_advn_ale.gpio2[2] */ /* L1 LOAD on S2 */ AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE7) /* (E10) gpmc_oen_ren.gpio2[3] */ /* L2 S2 Ok */ AM4372_IOPAD(0x888, PIN_OUTPUT | MUX_MODE7) /* (B12) gpmc_csn3.gpio2[0] */ /* L4 S1 Ok */ AM4372_IOPAD(0x994, PIN_OUTPUT | MUX_MODE7) /* (N22) mcasp0_fsx.gpio3[15] */ /* L5 OS HEARTBEAT*/ AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE7) /* (D10) gpmc_wen.gpio2[4] */ /* L7 ALERT */ AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE7) /* (C10) gpmc_be0n.gpio2[5] */ /* L9 NOT IN AUTO */ AM4372_IOPAD(0x990, PIN_OUTPUT | MUX_MODE7) /* (N24) mcasp0_aclkx.gpio3[14] */ /* L11 SPARE*/ >; }; i2c0_pins_default: i2c0_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0x98c, PIN_INPUT | MUX_MODE0) /* (Y22) I2C0_SCL.I2C0_SCL */ AM4372_IOPAD(0x988, PIN_INPUT | MUX_MODE0) /* (AB24) I2C0_SDA.I2C0_SDA */ >; }; i2c1_pins_default: i2c1_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0x95c, PIN_INPUT | MUX_MODE2) /* (T20) spi0_cs0.I2C1_SCL */ AM4372_IOPAD(0x958, PIN_INPUT | MUX_MODE2) /* (T21) spi0_d1.I2C1_SDA */ >; }; /* sd card */ sd_mmc0_pins_default: sd_mmc0_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0x900, PIN_INPUT | MUX_MODE0) /* (D1) mmc0_clk.mmc0_clk */ AM4372_IOPAD(0x904, PIN_INPUT | MUX_MODE0) /* (D2) mmc0_cmd.mmc0_cmd */ AM4372_IOPAD(0x8fc, PIN_INPUT | MUX_MODE0) /* (C1) mmc0_dat0.mmc0_dat0 */ AM4372_IOPAD(0x8f8, PIN_INPUT | MUX_MODE0) /* (C2) mmc0_dat1.mmc0_dat1 */ AM4372_IOPAD(0x8f4, PIN_INPUT | MUX_MODE0) /* (B2) mmc0_dat2.mmc0_dat2 */ AM4372_IOPAD(0x8f0, PIN_INPUT | MUX_MODE0) /* (B1) mmc0_dat3.mmc0_dat3 */ AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE5) /* (R25) spi0_cs1.mmc0_sdcd */ >; }; /* emmc flash */ //mmc1_pins_default: mmc1_pins_default { //pinctrl-single,pins = < //AM4372_IOPAD(0x880, PIN_INPUT | MUX_MODE2) /* (B9) gpmc_csn1.mmc1_clk */ //AM4372_IOPAD(0x884, PIN_INPUT | MUX_MODE2) /* (F10) gpmc_csn2.mmc1_cmd */ //AM4372_IOPAD(0x800, PIN_INPUT | MUX_MODE1) /* (B5) gpmc_ad0.mmc1_dat0 */ //AM4372_IOPAD(0x804, PIN_INPUT | MUX_MODE1) /* (A5) gpmc_ad1.mmc1_dat1 */ //AM4372_IOPAD(0x808, PIN_INPUT | MUX_MODE1) /* (B6) gpmc_ad2.mmc1_dat2 */ //AM4372_IOPAD(0x80c, PIN_INPUT | MUX_MODE1) /* (A6) gpmc_ad3.mmc1_dat3 */ //AM4372_IOPAD(0x810, PIN_INPUT | MUX_MODE1) /* (B7) gpmc_ad4.mmc1_dat4 */ //AM4372_IOPAD(0x814, PIN_INPUT | MUX_MODE1) /* (A7) gpmc_ad5.mmc1_dat5 */ //AM4372_IOPAD(0x818, PIN_INPUT | MUX_MODE1) /* (C8) gpmc_ad6.mmc1_dat6 */ //AM4372_IOPAD(0x81c, PIN_INPUT | MUX_MODE1) /* (B8) gpmc_ad7.mmc1_dat7 */ //// mmc rstN H20 needed? gpio ? //>; //}; gpio_pins_default: gpio_pins_default { pinctrl-single,pins = < // gpio 0-31 //AM4372_IOPAD(0x9a8, PIN_INPUT | MUX_MODE9) /* (M25) mcasp axr1.gpio0[2] */ /* motion in */ //AM4372_IOPAD(0x9ac, PIN_INPUT | MUX_MODE9) /* (L24) mcasp0_ahclkx.gpio0[3] */ /* gpio3_21 j901*/ ////AM4372_IOPAD(0x964, PIN_INPUT | MUX_MODE7) /* (G24) eCAP0_in_PWM0_out.gpio0[7] */ /* X lcd backlight moved */ //AM4372_IOPAD(0x9a0, PIN_INPUT | MUX_MODE9) /* (L23) mcasp0_aclkr.gpio0[18] */ /* gpio3_18 j901*/ //AM4372_IOPAD(0x9a4, PIN_INPUT | MUX_MODE9) /* (K23) mcasp0_fsr.gpio0[19] */ /* gpio3_19 j901*/ //AM4372_IOPAD(0xa74, PIN_INPUT | MUX_MODE7) /* (C24) xdma_event_intr1.gpio0[20] */ /* power fail*/ ////AM4372_IOPAD(0xa78, PIN_INPUT | MUX_MODE7) /* (H20) clkreq.gpio0[24] */ /* X mmc resetN not used*/ ////AM4372_IOPAD(0x870, PIN_INPUT | MUX_MODE7) /* (A2) gpmc_wait0.gpio0[30] */ /* moved usb0 vbus detect otg TODO*/ ////AM4372_IOPAD(0x874, PIN_INPUT | MUX_MODE7) /* (B3) gpmc_wpn.gpio0[31] */ /* X moved touch intn*/ // gpio 1 32-63 AM4372_IOPAD(0x878, PIN_INPUT | MUX_MODE7) /* (A3) gpmc_be1n.gpio1[28] */ /* X moved (not used)touch wake*/ AM4372_IOPAD(0x87c, PIN_INPUT | MUX_MODE7) /* (A8) gpmc_csn0.gpio1[29] */ /* moved ETH 1 INTN TODO is this how is this used*/ // gpio 2 64-95 AM4372_IOPAD(0x89c, PIN_INPUT | MUX_MODE7) /* (C10) gpmc_be0n_cle.gpio2[5] */ /* j901 17*/ // gpio 3 96 - 127 AM4372_IOPAD(0x998, PIN_INPUT | MUX_MODE7) /* (H23) mcasp0_axr0.gpio3[16] */ /* moved LCD EN*/ AM4372_IOPAD(0x99c, PIN_INPUT | MUX_MODE7) /* (M24) mcasp0_ahclkr.gpio3[17] *//* moved RS485 DE */ // gpio 4 128 - 159 AM4372_IOPAD(0x9b8, PIN_INPUT | MUX_MODE7) /* (AC18) cam0_field.gpio4[2] */ /* s1 DIP A */ AM4372_IOPAD(0x9bc, PIN_INPUT | MUX_MODE7) /* (AD17) cam0_wen.gpio4[3] */ /* s1 DIP_B */ AM4372_IOPAD(0x9c4, PIN_INPUT | MUX_MODE7) /* (AB19) cam0_data8.gpio4[5] */ /* s1 DIP_C */ AM4372_IOPAD(0x9c8, PIN_INPUT | MUX_MODE7) /* (AA19) cam0_data9.gpio4[6] */ /* s1 DiP D*/ //AM4372_IOPAD(0x9cc, PIN_INPUT | MUX_MODE7) /* (AC24) cam1_data9.gpio4[7] */ /* BT_RESET*/ //AM4372_IOPAD(0x9d0, PIN_INPUT | MUX_MODE7) /* (AD24) cam1_data8.gpio4[8] */ /* moved WLAN_EN*/ //AM4372_IOPAD(0x9d4, PIN_INPUT | MUX_MODE7) /* (AD25) cam1_hd.gpio4[9] */ /* CAM POWER ON ??*/ AM4372_IOPAD(0x9d8, PIN_INPUT | MUX_MODE7) /* (AC23) cam1_vd.gpio4[10] */ /* TP 503*/ AM4372_IOPAD(0x9dc, PIN_INPUT | MUX_MODE7) /* (AE21) cam1_pclk.gpio4[11] */ /* TP_SPARE5 */ //AM4372_IOPAD(0x9e0, PIN_INPUT | MUX_MODE7) /* (AC25) cam1_field.gpio4[12] */ /* move spi2 cs1 j901 */ //AM4372_IOPAD(0x9e4, PIN_INPUT | MUX_MODE7) /* (AB25) cam1_wen.gpio4[13] */ /* moved WLAN_IRQ*/ //AM4372_IOPAD(0x9e8, PIN_INPUT | MUX_MODE7) /* (AB20) cam1_data0.gpio4[14] */ /* i2c2 */ //AM4372_IOPAD(0x9ec, PIN_INPUT | MUX_MODE7) /* (AC21) cam1_data1.gpio4[15] */ /* i2c2*/ // gpio 5 160 - 191 AM4372_IOPAD(0xa50, PIN_INPUT | MUX_MODE7) /* (P25) spi4_sclk.gpio5[4] */ /* iso din0*/ AM4372_IOPAD(0xa54, PIN_INPUT | MUX_MODE7) /* (R24) spi4_d0.gpio5[5] */ /* iso din1*/ AM4372_IOPAD(0xa58, PIN_INPUT | MUX_MODE7) /* (P24) spi4_d1.gpio5[6] */ /* spare out 2.5 j901*/ AM4372_IOPAD(0xa5c, PIN_INPUT | MUX_MODE7) /* (N25) spi4_cs0.gpio5[7] */ /* tp_902*/ //AM4372_IOPAD(0xa38, PIN_INPUT | MUX_MODE7) /* (D25) gpio5_8.gpio5[8] */ /* tp_903 jsp: this pin has something to do w lcd careful! */ AM4372_IOPAD(0xa3c, PIN_INPUT | MUX_MODE7) /* (F24) gpio5_9.gpio5[9] */ /* relay 0*/ AM4372_IOPAD(0xa40, PIN_INPUT | MUX_MODE7) /* (G20) gpio5_10.gpio5[10] */ /* relay 1*/ AM4372_IOPAD(0xa44, PIN_INPUT | MUX_MODE7) /* (F23) gpio5_11.gpio5[11] */ /* buzzer*/ AM4372_IOPAD(0xa48, PIN_INPUT | MUX_MODE7) /* (E25) gpio5_12.gpio5[12] */ /* usb0_OVERCURN ??*/ AM4372_IOPAD(0xa4c, PIN_INPUT | MUX_MODE7) /* (E24) gpio5_13.gpio5[13] */ /* usb 1 overcur ??*/ >; }; /* Backlight PWM */ ecap0_pins: backlight_pins { pinctrl-single,pins = < AM4372_IOPAD(0x964, PIN_INPUT | MUX_MODE7) /* (G24) eCAP0_in_PWM0_out.gpio0[7] */ >; }; /* Touch Screen Interrupt Pin */ pixcir_ts_pins: pixcir_ts_pins { pinctrl-single,pins = < AM4372_IOPAD(0x874, PIN_INPUT | MUX_MODE7) /* (B3) gpmc_wpn.gpio0[31] */ >; }; /* On GP this is used to select between HMI and lcd not needed?*/ //lcd_pins: lcd_pins { //pinctrl-single,pins = < ///* GPIO 5_8 to select LCD / HDMI */ //AM4372_IOPAD(0xa38 (PIN_OUTPUT_PULLUP | MUX_MODE7) //>; //}; dcan0_pins_default: dcan0_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0x97c, PIN_INPUT | MUX_MODE2) /* (L22) uart1_rtsn.dcan0_rx */ AM4372_IOPAD(0x978, PIN_OUTPUT | MUX_MODE2) /* (K22) uart1_ctsn.dcan0_tx */ >; }; /* Optional sleep pin settings. Must manually enter values in the below skeleton. */ //dcan0_pins_sleep: dcan0_pins_sleep { //pinctrl-single,pins = < //AM4372_IOPAD(0x97c, ) /* (L22) uart1_rtsn.dcan0_rx */ //AM4372_IOPAD(0x978, ) /* (K22) uart1_ctsn.dcan0_tx */ //>; //}; // display dss_pins: dss_pins { pinctrl-single,pins = < AM4372_IOPAD(0x8e0, PIN_OUTPUT | MUX_MODE0) /* (B23) dss_vsync.dss_vsync */ AM4372_IOPAD(0x8e4, PIN_OUTPUT | MUX_MODE0) /* (A23) dss_hsync.dss_hsync */ AM4372_IOPAD(0x8e8, PIN_OUTPUT | MUX_MODE0) /* (A22) dss_pclk.dss_pclk */ AM4372_IOPAD(0x8ec, PIN_OUTPUT | MUX_MODE0) /* (A24) dss_ac_bias_en.dss_ac_bias_en */ AM4372_IOPAD(0x8a0, PIN_OUTPUT | MUX_MODE0) /* (B22) dss_data0.dss_data0 */ AM4372_IOPAD(0x8a4, PIN_OUTPUT | MUX_MODE0) /* (A21) dss_data1.dss_data1 */ AM4372_IOPAD(0x8a8, PIN_OUTPUT | MUX_MODE0) /* (B21) dss_data2.dss_data2 */ AM4372_IOPAD(0x8ac, PIN_OUTPUT | MUX_MODE0) /* (C21) dss_data3.dss_data3 */ AM4372_IOPAD(0x8b0, PIN_OUTPUT | MUX_MODE0) /* (A20) dss_data4.dss_data4 */ AM4372_IOPAD(0x8b4, PIN_OUTPUT | MUX_MODE0) /* (B20) dss_data5.dss_data5 */ AM4372_IOPAD(0x8b8, PIN_OUTPUT | MUX_MODE0) /* (C20) dss_data6.dss_data6 */ AM4372_IOPAD(0x8bc, PIN_OUTPUT | MUX_MODE0) /* (E19) dss_data7.dss_data7 */ AM4372_IOPAD(0x8c0, PIN_OUTPUT | MUX_MODE0) /* (A19) dss_data8.dss_data8 */ AM4372_IOPAD(0x8c4, PIN_OUTPUT | MUX_MODE0) /* (B19) dss_data9.dss_data9 */ AM4372_IOPAD(0x8c8, PIN_OUTPUT | MUX_MODE0) /* (A18) dss_data10.dss_data10 */ AM4372_IOPAD(0x8cc, PIN_OUTPUT | MUX_MODE0) /* (B18) dss_data11.dss_data11 */ AM4372_IOPAD(0x8d0, PIN_OUTPUT | MUX_MODE0) /* (C19) dss_data12.dss_data12 */ AM4372_IOPAD(0x8d4, PIN_OUTPUT | MUX_MODE0) /* (D19) dss_data13.dss_data13 */ AM4372_IOPAD(0x8d8, PIN_OUTPUT | MUX_MODE0) /* (C17) dss_data14.dss_data14 */ AM4372_IOPAD(0x8dc, PIN_OUTPUT | MUX_MODE0) /* (D17) dss_data15.dss_data15 */ AM4372_IOPAD(0x83c, PIN_OUTPUT | MUX_MODE1) /* (A11) gpmc_ad15.dss_data16 */ AM4372_IOPAD(0x838, PIN_OUTPUT | MUX_MODE1) /* (B11) gpmc_ad14.dss_data17 */ AM4372_IOPAD(0x834, PIN_OUTPUT | MUX_MODE1) /* (C11) gpmc_ad13.dss_data18 */ AM4372_IOPAD(0x830, PIN_OUTPUT | MUX_MODE1) /* (E11) gpmc_ad12.dss_data19 */ AM4372_IOPAD(0x82c, PIN_OUTPUT | MUX_MODE1) /* (D11) gpmc_ad11.dss_data20 */ AM4372_IOPAD(0x828, PIN_OUTPUT | MUX_MODE1) /* (F11) gpmc_ad10.dss_data21 */ AM4372_IOPAD(0x824, PIN_OUTPUT | MUX_MODE1) /* (A10) gpmc_ad9.dss_data22 */ AM4372_IOPAD(0x820, PIN_OUTPUT | MUX_MODE1) /* (B10) gpmc_ad8.dss_data23 */ >; }; /* Optional sleep pin settings. Must manually enter values in the below skeleton. */ //dss_pins_sleep: dss_pins_sleep { //pinctrl-single,pins = < //AM4372_IOPAD(0x8e0, ) /* (B23) dss_vsync.dss_vsync */ //AM4372_IOPAD(0x8e4, ) /* (A23) dss_hsync.dss_hsync */ //AM4372_IOPAD(0x8e8, ) /* (A22) dss_pclk.dss_pclk */ //AM4372_IOPAD(0x8ec, ) /* (A24) dss_ac_bias_en.dss_ac_bias_en */ //AM4372_IOPAD(0x8a0, ) /* (B22) dss_data0.dss_data0 */ //AM4372_IOPAD(0x8a4, ) /* (A21) dss_data1.dss_data1 */ //AM4372_IOPAD(0x8a8, ) /* (B21) dss_data2.dss_data2 */ //AM4372_IOPAD(0x8ac, ) /* (C21) dss_data3.dss_data3 */ //AM4372_IOPAD(0x8b0, ) /* (A20) dss_data4.dss_data4 */ //AM4372_IOPAD(0x8b4, ) /* (B20) dss_data5.dss_data5 */ //AM4372_IOPAD(0x8b8, ) /* (C20) dss_data6.dss_data6 */ //AM4372_IOPAD(0x8bc, ) /* (E19) dss_data7.dss_data7 */ //AM4372_IOPAD(0x8c0, ) /* (A19) dss_data8.dss_data8 */ //AM4372_IOPAD(0x8c4, ) /* (B19) dss_data9.dss_data9 */ //AM4372_IOPAD(0x8c8, ) /* (A18) dss_data10.dss_data10 */ //AM4372_IOPAD(0x8cc, ) /* (B18) dss_data11.dss_data11 */ //AM4372_IOPAD(0x8d0, ) /* (C19) dss_data12.dss_data12 */ //AM4372_IOPAD(0x8d4, ) /* (D19) dss_data13.dss_data13 */ //AM4372_IOPAD(0x8d8, ) /* (C17) dss_data14.dss_data14 */ //AM4372_IOPAD(0x8dc, ) /* (D17) dss_data15.dss_data15 */ //AM4372_IOPAD(0x83c, ) /* (A11) gpmc_ad15.dss_data16 */ //AM4372_IOPAD(0x838, ) /* (B11) gpmc_ad14.dss_data17 */ //AM4372_IOPAD(0x834, ) /* (C11) gpmc_ad13.dss_data18 */ //AM4372_IOPAD(0x830, ) /* (E11) gpmc_ad12.dss_data19 */ //AM4372_IOPAD(0x82c, ) /* (D11) gpmc_ad11.dss_data20 */ //AM4372_IOPAD(0x828, ) /* (F11) gpmc_ad10.dss_data21 */ //AM4372_IOPAD(0x824, ) /* (A10) gpmc_ad9.dss_data22 */ //AM4372_IOPAD(0x820, ) /* (B10) gpmc_ad8.dss_data23 */ //>; //}; /* not used? just on header j901 */ //spi2_pins_default: spi2_pins_default { //pinctrl-single,pins = < //AM4372_IOPAD(0xa60, PIN_INPUT | MUX_MODE0) /* (N20) spi2_sclk.spi2_sclk */ //AM4372_IOPAD(0xa64, PIN_INPUT | MUX_MODE0) /* (P22) spi2_d0.spi2_d0 */ //AM4372_IOPAD(0xa68, PIN_INPUT | MUX_MODE0) /* (P20) spi2_d1.spi2_d1 */ //AM4372_IOPAD(0xa6c, PIN_OUTPUT | MUX_MODE0) /* (T23) spi2_cs0.spi2_cs0 */ //>; //}; /* none of the following clocks seem to be represtented in the prototype boards... jsp */ /* Optional sleep pin settings. Must manually enter values in the below skeleton. */ //osc1_pins_sleep: osc1_pins_sleep { //pinctrl-single,pins = < //AM4372_IOPAD(0xaac, ) /* (AE5) RTC_XTALIN.OSC1_IN */ //AM4372_IOPAD(0xab0, ) /* (AE4) RTC_XTALOUT.OSC1_OUT */ //>; //}; //osc0_pins_default: osc0_pins_default { //pinctrl-single,pins = < //AM4372_IOPAD(0xa88, PIN_INPUT | MUX_MODE0) /* (C25) XTALIN.OSC0_IN */ //AM4372_IOPAD(0xa8c, PIN_OUTPUT | MUX_MODE0) /* (B25) XTALOUT.OSC0_OUT */ //>; //}; /* Optional sleep pin settings. Must manually enter values in the below skeleton. */ //osc0_pins_sleep: osc0_pins_sleep { //pinctrl-single,pins = < //AM4372_IOPAD(0xa88, ) /* (C25) XTALIN.OSC0_IN */ //AM4372_IOPAD(0xa8c, ) /* (B25) XTALOUT.OSC0_OUT */ //>; //}; /* uart 1 isolated 485 uart */ /* remove for test jsp */ //uart1_pins_default: uart1_pins_default { //pinctrl-single,pins = < //AM4372_IOPAD(0x980, PIN_INPUT | MUX_MODE0) /* (K21) uart1_rxd.uart1_rxd */ //AM4372_IOPAD(0x984, PIN_OUTPUT | MUX_MODE0) /* (L21) uart1_txd.uart1_txd */ //>; //}; /* uart 3 BlE */ //uart3_pins_default: uart3_pins_default { // pinctrl-single,pins = < // AM4372_IOPAD(0xa28, PIN_INPUT | MUX_MODE0) /* (H25) uart3_rxd.uart3_rxd */ // AM4372_IOPAD(0xa2c, PIN_OUTPUT | MUX_MODE0) /* (H24) uart3_txd.uart3_txd */ // AM4372_IOPAD(0xa30, PIN_INPUT | MUX_MODE0) /* (H22) uart3_ctsn.uart3_ctsn */ // AM4372_IOPAD(0xa34, PIN_OUTPUT | MUX_MODE0) /* (K24) uart3_rtsn.uart3_rtsn */ // // ac24 ble reset // >; //}; usb0_pins_default: usb0_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0xac0, PIN_OUTPUT | MUX_MODE0) /* (G21) USB0_DRVVBUS.USB0_DRVVBUS */ >; }; /* Mass Storage USB*/ usb1_pins_default: usb1_pins_default { pinctrl-single,pins = < AM4372_IOPAD(0xac4, PIN_OUTPUT | MUX_MODE0) /* (F25) USB1_DRVVBUS.USB1_DRVVBUS */ >; }; }; /* I2C0 - Includes: Power Supply TPS65218, EEPROM CAT24C256, Temperature and Humidity Sensor - HDC1080 */ &i2c0 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins_default>; clock-frequency = <400000>; /* Power Supply IC - TPS65218 */ tps@24 { compatible = "ti,tps65218"; reg = <0x24>; interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; interrupt-controller; #interrupt-cells = <2>; dcdc1: regulator-dcdc1 { compatible = "ti,tps65218-dcdc1"; /* VDD_CORE limits min of OPP50 and max of OPP100 */ regulator-name = "vdd_core"; regulator-min-microvolt = <912000>; regulator-max-microvolt = <1144000>; regulator-boot-on; regulator-always-on; }; dcdc2: regulator-dcdc2 { compatible = "ti,tps65218-dcdc2"; /* VDD_MPU limits min of OPP50 and max of OPP_NITRO */ regulator-name = "vdd_mpu"; regulator-min-microvolt = <912000>; regulator-max-microvolt = <1378000>; regulator-boot-on; regulator-always-on; }; dcdc3: regulator-dcdc3 { compatible = "ti,tps65218-dcdc3"; regulator-name = "vdds_ddr"; regulator-min-microvolt = <1500000>; regulator-max-microvolt = <1500000>; regulator-boot-on; regulator-always-on; }; dcdc4: regulator-dcdc4 { compatible = "ti,tps65218-dcdc4"; regulator-name = "v3_3d"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-boot-on; regulator-always-on; }; ldo1: regulator-ldo1 { compatible = "ti,tps65218-ldo1"; regulator-name = "v1_8d"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; power-button { compatible = "ti,tps65218-pwrbutton"; status = "okay"; interrupts = <3 IRQ_TYPE_EDGE_BOTH>; }; }; /* EEPROM - CAT24C256 */ at24@50 { compatible = "at24,24c256"; pagesize = <64>; reg = <0x50>; }; }; /* I2C1 - Includes: Capacative Touch, Audio, Expansion Header */ &i2c1 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c1_pins_default>; clock-frequency = <400000>; /* 7" Touchscreen From GP EVM - Modified */ pixcir_ts@5c { compatible = "pixcir,pixcir_tangoc"; pinctrl-names = "default"; pinctrl-0 = <&pixcir_ts_pins>; reg = <0x5c>; interrupt-parent = <&gpio0>; /* P0.31 (B3) Touch_IntN */ interrupts = <31 0>; // review jsp attb-gpio = <&gpio0 31 GPIO_ACTIVE_HIGH>; /* P0.31 (B3) Touch_IntN */ // reset-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>; /* P1.28 (A3) Touch_Wake */ touchscreen-size-x = <1024>; touchscreen-size-y = <600>; }; }; &epwmss0 { status = "okay"; }; /* Backlight PWM */ &ecap0 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&ecap0_pins>; }; /* GPIO0 */ &gpio0 { status = "okay"; }; /* GPIO1 */ &gpio1 { status = "okay"; }; /* GPIO2 */ &gpio2 { status = "okay"; }; /* GPIO3 */ &gpio3 { status = "okay"; }; /* GPIO4 */ &gpio4 { status = "okay"; }; /* GPIO5 */ &gpio5 { status = "okay"; }; /* jsp this was named &mmc1 on alx-hmi-000 and sk */ /* old commentSD Card Interface - Uses name of MMC1, but pins are mapped to MMC0*/ /* mmc0 sd card interface */ &mmc1 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&sd_mmc0_pins_default>; vmmc-supply = <&dcdc4>; bus-width = <4>; cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; }; /* mmc1 emmc flash */ //&mmc2 { /* * jsp TODO this comment obsolete from gp-evm? * When enabling eMMC, disable GPMC/NAND and set * SelEMMCorNAND to output-high */ //status = "okay"; ////vmmc-supply = <&evm_v3_3d>; //jsp TODO? //bus-width = <8>; //pinctrl-names = "default", "sleep"; //pinctrl-0 = <&mmc1_pins_default>; ////pinctrl-1 = <&mmc1_pins_sleep>; //ti,non-removable; //}; /* ? */ //&usb2_phy1 { //status = "okay"; //}; /* Name USB1 - Uses USB0 Pins */ &usb1 { dr_mode = "peripheral"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&usb0_pins_default>; }; /* ? */ /* Error Locator Module */ &elm { status = "okay"; }; &dss { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&dss_pins>; port { dpi_out: endpoint@0 { remote-endpoint = <&lcd_in>; data-lines = <24>; }; }; }; /* CAN0 */ &dcan0 { pinctrl-names = "default"; pinctrl-0 = <&dcan0_pins_default>; status = "okay"; }; /* RTC */ //&rtc { //status = "okay"; //}; /* WDT */ //&wdt { //status = "okay"; //}; /* CPU */ &cpu { cpu0-supply = <&dcdc2>; }; &pruss_soc_bus { status = "okay"; pruss1: pruss@54400000 { status = "okay"; }; pruss0: pruss@54440000 { status = "okay"; }; }; &sgx { status = "okay"; };