Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| en:arm:tqma28:linux:ptxdist:faq [2018/05/18 12:42] – ↷ Page moved from en:arm:tqma28:linux:faq to en:arm:tqma28:linux:ptxdist:faq liedmann | en:arm:tqma28:linux:ptxdist:faq [2025/01/28 11:17] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ~~NOCACHE~~ | ~~NOCACHE~~ | ||
| - | < | + | {{template> |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| - | </ | + | |
| \\ | \\ | ||
| ===== FAQ ===== | ===== FAQ ===== | ||
| - | ==== U-Boot 2013.04 | MMC timeouts ==== | ||
| - | < | ||
| - | MMC: MXS MMC: 0, MXS MMC: 1 | ||
| - | MMC0: Command 8 timeout (status 0xe03c4020) | ||
| - | MMC0: Command 55 timeout (status 0xe02c4020) | ||
| - | </ | ||
| - | These timeouts are **no** errors and totally normal U-Boot behaviour. | ||
| - | U-Boot probes the device connected to the Synchronous Serial Port. In order to identify eMMC or SD cards U-Boot sends these two commands. A timeout on both commands identifies the eMMC. | ||
| - | ==== U-Boot | Warning: FECx MAC addresses don't match ==== | ||
| - | < | ||
| - | FEC0 [PRIME] | ||
| - | Warning: FEC0 MAC addresses don't match: | ||
| - | Address in SROM is | ||
| - | Address in environment is 02: | ||
| - | , FEC1 | ||
| - | </ | ||
| - | In U-Boot the MAC address for networking tasks (tftp, ping, dhcp, etc) and to pass to the kernel is stored in the variable **ethaddr**. This variable is defined in the default environment (this is the one used, when environment on e-MMC can't be loaded) with a generic " | ||
| - | |||
| - | During ethernet initialisation U-Boot checks MAC address stored in OTP and compares both addresses. Hence the warning. | ||
| - | |||
| - | To disable the warning you need to set **ethaddr** to your OTP-saved MAC: | ||
| - | < | ||
| - | TQMa28 U-Boot > setenv ethaddr 00: | ||
| - | </ | ||
| - | |||
| - | Using __U-Boot 2013.04__ you can also simply use the command otp_mxs: | ||
| - | < | ||
| - | TQMa28 U-Boot > print ethaddr | ||
| - | ethaddr=02: | ||
| - | TQMa28 U-Boot > otp_mxs getmac; saveenv | ||
| - | TQMa28 U-Boot > print ethaddr | ||
| - | ethaddr=00: | ||
| - | </ | ||
| - | |||
| - | ==== Linux | Error: no PHY found or Segmentation fault when ifconfig up ==== | ||
| - | BSP0106 changed the default source of ENET_CLK to external oscillator. Previously the source was FEC unit inside the CPU. The source is selected in U-Boot, which provides the setting to kernel via device tree (TQMa28/ | ||
| - | |||
| - | U-Boot informs about the selected clock on boot: | ||
| - | * **Net: | ||
| - | * **Net: | ||
| - | |||
| - | To switch ENET_CLK source to internal FEC unit: | ||
| - | < | ||
| - | TQMa28 U-Boot > setenv enet_clk_internal 1; saveenv; reset | ||
| - | </ | ||
| - | |||
| - | Switching back is easy: | ||
| - | < | ||
| - | TQMa28 U-Boot > setenv enet_clk_internal; | ||
| - | # notice that setenv assigns no value to delete the variable | ||
| - | </ | ||
| - | |||
| - | U-Boot selects the internal ENET_CLK source upon presence of this environment variable with a positive value (y/yes/1). | ||
| - | The variable is evaluated during ethernet initialisation and therefore a change in the variable takes place upon next boot. | ||
| - | |||
| - | ==== PTXdist | Error: Couldn' | ||
| - | Creating root.ext2 from working dir...< | ||
| - | |||
| - | The error signals that the filesystem is too small for the content that should be installed. Increase size. | ||
| - | |||
| - | < | ||
| - | => go to ptxdist menu | ||
| - | => platformconfig | ||
| - | => image creation options | ||
| - | => Generate images/ | ||
| - | -> Size in kilobytes: increase to reasonable size (65536 should be enough for most cases) | ||
| - | </ | ||
| - | |||
| - | ==== PTXdist | Download packages through proxy authentication ==== | ||
| - | In case you have a proxy server in your local network that requires user authentication before going online, | ||
| - | you have several ways to have ptxdist perform the authentication for you when downloading packages. | ||
| - | |||
| - | Because ptxdist relies on the program wget to download sources, | ||
| - | we need to tell wget about the authentication: | ||
| - | < | ||
| - | (tested) | ||
| - | => edit /etc/wgetc (needs sudo privileges) | ||
| - | => Add lines anywhere in the file: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | (untested - please tell us if one of these works for you) | ||
| - | > Change ptxdist setting at "User Properties" | ||
| - | -> Set http proxy to this format: http://< | ||
| - | -> Adapt for the ftp proxy | ||
| - | > Or export http_proxy and ftp_proxy environment variables alike | ||
| - | </ | ||
| - | |||
| - | ==== U-Boot | "MMC: block number ... exceeds max (...)" === | ||
| - | The reason for this error is that the saved environment belongs to a different U-Boot version. | ||
| - | TQ provides U-Boot in versions 2009.08 and 2012.10, because the kernels can't run both on 2009.08. | ||
| - | The syntax of some commands changed between U-Boot versions and thus their environment (which holds scripts using these commands) are incompatible. | ||
| - | |||
| - | => To resolve this error please delete the saved environment as follows depending on your current U-Boot version: | ||
| - | * U-Boot 2009.08 | ||
| - | < | ||
| - | mw.b $loadaddr 0 512 | ||
| - | mmc write 0 $loadaddr 2 1 | ||
| - | </ | ||
| - | * U-Boot 2012.10 | ||
| - | < | ||
| - | mw.b $loadaddr 0 512 | ||
| - | mmc dev 0 | ||
| - | mmc write $loadaddr 2 1 | ||
| - | </ | ||
| - | |||
| - | <WRAP round important> | ||
| - | |||
| - | ==== U-Boot | "set read bl len failed" | ||
| - | => After being plugged in the sd card must be initialised prior to any access. The command < | ||
| - | |||
| - | ==== U-Boot | Usage messages for the command " | ||
| - | U-Boot prints the following error message at boot time: | ||
| - | < | ||
| - | setenv - set environment variables | ||
| - | |||
| - | Usage: | ||
| - | setenv name value ... | ||
| - | - set environment variable ' | ||
| - | setenv name | ||
| - | - delete environment variable ' | ||
| - | </ | ||
| - | => Amongst others a reason for this is that the U-Boot environment variable // | ||
| - | |||
| - | To remedy just clear the variable // | ||
| - | |||
| - | < | ||
| - | setenv bootargs | ||
| - | saveenv | ||
| - | </ | ||
| - | |||
| - | ==== Errormessage " | ||
| - | |||
| - | If you use a precompiled rootfs you probably encounter following error message: | ||
| - | < | ||
| - | generic-armv5te login: root | ||
| - | -sh: can't access tty; job control turned off | ||
| - | root@generic-armv5te: | ||
| - | </ | ||
| - | |||
| - | To resolve this issue specify your real console in / | ||
| - | < | ||
| - | #change following line | ||
| - | S: | ||
| - | #to i.e. (depending on your console, see your kernel command line arguments) | ||
| - | S: | ||
| - | </ | ||
| - | and reboot. | ||
| - | |||
| - | ==== Linux boot Kernel panic Unable to mount root fs ==== | ||
| - | |||
| - | Error message: | ||
| - | < | ||
| - | [ 1.090000] VFS: Cannot open root device " | ||
| - | [ 1.100000] Please append a correct " | ||
| - | [ 1.110000] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0, | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] [< | ||
| - | [ 1.110000] Rebooting in 1 seconds.. | ||
| - | </ | ||
| - | |||
| - | Kernel command line: | ||
| - | < | ||
| - | [ 0.000000] Kernel command line: fec_mac=02: | ||
| - | </ | ||
| - | |||
| - | U-Boot mmc part lists the partition: | ||
| - | < | ||
| - | TQMa28 U-Boot > mmc part | ||
| - | |||
| - | Partition Map for MMC device 0 -- | ||
| - | |||
| - | Partition | ||
| - | 1 16384 | ||
| - | 2 32768 | ||
| - | 3 49152 | ||
| - | </ | ||
| - | |||
| - | Solution: add the '' | ||
| - | |||
| - | < | ||
| - | TQMa28 U-Boot > setenv addmmc ' | ||
| - | </ | ||