embedded-linux

Using armhf as a secondary toolchain in Yocto

耗尽温柔 提交于 2019-12-20 06:02:52
问题 I am currently working on a board booting in 64 bit mode using aarch64 and I have a u-boot in 32 bit mode, I would use arm-linux-gnueabihf. I looked around but there's no other way than using a secondary toolchain via: open-embedded tutorial to use a secondary toolchain Nevertheless, impossible to make it work. Intel made a layer (meta-tc-icc) but it's old and I didn't manage to make it work neither. Any idea how to configure it ? 回答1: So there's a few ways around this. The general answer for

How uboot passes hardware information to kernel without using DTS

强颜欢笑 提交于 2019-12-20 04:13:00
问题 I am new to embedded Linux development. I have to port uboot and custom Linux distribution to a new ARM based board. The uboot we are using (2009.08) does not have Arch and DTS folders. I suppose it is an older version which does not use use DTS to pass hardware information to the Kernel (v 3.0). I have read a lot about DTS but here is not enough information on internet about this (obsolete?) method of passing hardware information from uboot to kernel that we are using. Internet tells me that

embedded linux ARM booting address

你。 提交于 2019-12-20 04:07:26
问题 I follow some document to boot embedded Linux on ARM board (ex: Freescale Vybrid tower) via sdcard. in the document there are steps to build uImage and write u-boot into sdcard as below: sudo dd if=u-boot.imx of=/dev/sdX bs=512 seek=2 mkimage -A arm64 -O linux -T kernel -C none -a 0x81000000 -e 0x81000000 -n “Linux” -d Image uImage What I would like to know is from which datasheet/UM/RM or any document they get the number: bs=512 seek=2, -a 0x81000000 (Load address), -e 0x81000000 (Entry

embedded linux ARM booting address

五迷三道 提交于 2019-12-20 04:07:07
问题 I follow some document to boot embedded Linux on ARM board (ex: Freescale Vybrid tower) via sdcard. in the document there are steps to build uImage and write u-boot into sdcard as below: sudo dd if=u-boot.imx of=/dev/sdX bs=512 seek=2 mkimage -A arm64 -O linux -T kernel -C none -a 0x81000000 -e 0x81000000 -n “Linux” -d Image uImage What I would like to know is from which datasheet/UM/RM or any document they get the number: bs=512 seek=2, -a 0x81000000 (Load address), -e 0x81000000 (Entry

Beaglebone black PWM using C

半世苍凉 提交于 2019-12-20 02:52:20
问题 I wrote a sample pwm function in C for beaglebone black. Whenever I make a function call in other modules or in main(), I end up in segmentation fault. Kindly help where I am making the mistake and how to deal with this issue. Below is the code. int trigger_pwm_output(unsigned input_no ) { FILE *pwm,*duty,*period,*run;`` uint16_t input=0; uint8_t input_no=0,input_state=0; unsigned int duty_cycle =500000; pwm = fopen("/sys/devices/bone_capemgr.9/slots", "w"); fseek(pwm,0,SEEK_SET); fprintf(pwm

Controlling SAMA5D27-SOM1-EK1 Board LEDS using DEVICE-TREE file in linux kernel

旧街凉风 提交于 2019-12-19 11:57:37
问题 I have SAMA5D27-SOM1-EK1 Board. It has 3 Leds ( Red connected to PA10 pin , green connected to PB1 pin , blue connected to PA31 pin ) and 4 buttons, one of them is user push button (PB4) connected to PIO PA29, and optionally to PIOBU1. This is a link to device-tree file for my linux kernel : https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/at91-sama5d27_som1_ek.dts You can find a part which describing LED and User Push Button : leds { compatible = "gpio-leds"; pinctrl-names =

How can I generate kernel headers for an “unknown” embedded ARM system?

心已入冬 提交于 2019-12-19 04:10:27
问题 I have an (old) embedded system for which I want to compile programs. I don't have the toolchain, so I want to create one. The embedded system has an "ARM926EJ-S rev 5 (v5l)" CPU and "cat /proc/version" says that it runs "Linux version 2.6.20.7" with GCC 4.0.2. I have heard that I have to include the kernel headers in the build process. I download the Linux kernel version 2.6.20 from kernel.org, extract all files and run "make headers_install ARCH=arm INSTALL_HDR_PATH=~/headers". Is this the

Erasing Flash NOR: ioctl(MEMUNLOCK) return status?

久未见 提交于 2019-12-19 03:08:05
问题 I'm trying to erase a NOR Flash memory with Linux MTD driver in C... I'm confused about the return status from the ioctl(MEMUNLOCK) call which returns an error even if ioctl(MEMERASE) is successful after it. The following code displays the warning message but works (i.e. the Flash block has been erased): int erase_MTD_Pages(int fd, size_t size, off_t offset) { mtd_info_t mtd_info; erase_info_t ei; ioctl(fd, MEMGETINFO, &mtd_info); ei.length = mtd_info.erasesize; for(ei.start = offset; ei

Shutdown (embedded) linux from kernel-space

不问归期 提交于 2019-12-19 02:55:11
问题 I'm working on a modified version of the 2.6.35 kernel for Olinuxino, an ARM9 based platform. I'm trying to modify the power management driver (the architecture specific part). The processor is a Freescale i.MX23. This processor has a "special" pin, called PSWITCH, that triggers an interrupt that is handled by the power management driver. If the switch is pressed,the system goes to standby. This is done in the driver by calling pm_suspend(PM_SUSPEND_STANDBY) . Given my hardware setup, I'd

how to rebuild rootfs in buildroot

心已入冬 提交于 2019-12-19 02:43:11
问题 I am going to setup build environment to make my own linux embedded system for AT91SAM9X25 Board. I am using buildroot to do this. The make command build all targets, the first it build toolchain then packages and then rootfs and images of rootfs (tar, cpio ...). To rebuild rootfs I usually use make clean and then make. The make clean command removes all and including toolchain. So the first my question is: Is there some way to remake rootfs without building toolchain? It takes a lot of time.