Linux on Microblaze HOWTO (part I)
This is part I of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor (this page) Part II: Compiling the kernel Part III:...
View ArticleLinux on Microblaze HOWTO (part II)
This is part II of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor Part II: Compiling the kernel (this page) Part III:...
View ArticleLinux on Microblaze HOWTO (part III)
This is part III of my HOWTO on running Linux on Microblaze. The outline is as follows: Part I: Introduction and setting up the Microblaze processor Part II: Compiling the kernel Part III: Preparing...
View ArticleMicroblaze + Linux: Sample design of a custom peripheral
Scope Even though Xilinx supplies a cute wizard for creating peripherals in its EDK (version 13.2 in my case), it’s just enough to work as a demo. For a real-life case there’s no escape from getting...
View ArticleThe FPGA+ARM Armadeus APF51 board: Buildroot notes
Scope This post was spun off the main post regarding setting up the Armadeus board for Embedded Linux on ARM and Xilinx Spartan-6 FPGA. It covers my own little war story as I set up the Buildroot SDK,...
View Articlei.MX51 EIM bus clarified
These are my notes as I made my way in grasping how the EIM bus works. Unfortunately, the information in the reference manual was far from complete, so except for the list of acronyms, this page...
View ArticleArmadeus APF51 / Freescale i.MX51: A kit for reverse engineering the EIM bus
What we have here As one can guess from my notes about the i.MX51′s external bus and the oscilloscope shots I’ve published, I made myself a small dissection kit for watching the bus’ lines activity...
View ArticleWhen request_irq() fails with -EINVAL
It may help investigating the interrupt descriptors. For a 2.6.38 kernel, putting this in a kernel module load supplies some information (includes, declarations and code mixed below. Organize properly...
View ArticleRadeon: reserve failed for wait in /var/log/messages
Looking at my system log (kernel 2.6.35.4), this is a common thing: Apr 24 12:04:49 kernel: radeon 0000:01:00.0: ffff8802d0aa1a00 reserve failed for wait Apr 24 12:04:49 kernel: radeon 0000:01:00.0:...
View ArticleInterrupt definitions in DTS (device tree) files for Xilinx Zynq-7000 / ARM
Having some trouble to figure out what I should write in my own hand-written DTS entry for my logic, I ended up reading the sources of the Linux kernel (version 3.3, which is the currently used for...
View ArticleLinux kernel version magic: Adding the missing plus suffix
Trying to insmod a kernel module, which was just compiled against the true headers of the running kernel, I got: # insmod mymodule.ko insmod: error inserting 'mymodule.ko': -1 Invalid module format And...
View Articlestmmaceth: NetworkManager fails to bring up a wired Ethernet NIC
The problem In short: Running linux 3.8.0 on Altera’s Cyclone V SoC, NetworkManager doesn’t bring up the Ethernet port. It also makes false accusations such as Jan 1 00:00:17 localhost...
View ArticleCache coherency on i.MX25 running Linux
What this blob is all about Running some home-cooked SDMA scripts on Freescale’s Linux 2.6.28 kernel on an i.MX25 processor, I’m puzzled by the fact, that cache flushing with dma_map_single(…,...
View ArticleReading the DocBook files in Linux kernel’s documentation
This is my short saga about my not necessarily intelligent actions for reading a DocBook paper. So I wanted to read some documentation from my Linux kernel sources. It happened to be in DocBook format....
View ArticleLinux kernel platform device food chain example
Since the device tree is the new way to set up hardware devices on embedded platforms, I hoped that I could avoid the “platform” API for picking which driver is going to take control over what. But it...
View Article“Unsupported machine ID” after upgrading Linux kernel or U-boot
Unlike how I usually treat software tools I work with, my attitude towards U-boot is “if it works, never mind how and why”. Trying to understand the gory details of U-boot has never been very...
View ArticleKernel compilation without extra “+” or other markers in the version string
So there’s this “+” sign added to the kernel version (as displayed with uname -r) when the kernel is compiled with a git tree that doesn’t sit on an official version (or more precisely, not on an...
View ArticleVMware Player or Workstation: Patching for Linux kernel 3.12 (or so)
For a reason not so clear to me, VMware doesn’t keep its drivers up to date with newer kernels, so they fail to compile against newer kernels. Consequently, there’s an insane race to patch them up. It...
View ArticleAutomatic mount stops after kernel upgrade and sysfs
I really have this thing about backward compatibility, which is why I chose to enable the CONFIG_SYSFS_DEPRECATED and CONFIG_SYSFS_DEPRECATED_V2 kernel flags when compiling kernel 3.12 for Fedora 12....
View ArticleWine: Picasa failed to start Fedora 12 after a kernel upgrade
I upgraded my kernel from 2.6.35 to 3.12, and Picasa 2.7 failed to start. Instead of starting, tons of winedbg processes were created at a rapid speed. If I didn’t kill everything related to Picasa...
View Article