ASPM makes Spartan-6′s PCIe core miss TLP packets

The fatal error Let’s break the bad news: Spartan-6′s PCIe core may drop TLP packets sporadically when ASPM (Active State Power Management) is enabled. That means that any TLP given to the core for transmission can silently disappear, as if it was never submitted. I also suspect that the problem exists in the opposite direction. [...]

Fedora 15 (x86_64) LiveUSB notes to self

Making a custom ISO image. It turns out it’s no so difficult to make a custom LiveCD / LiveDVD / LiveUSB, even if that includes making small hacks in the target system’s outline. Just follow this guide. Creating the liveUSB Create a liveUSB from a liveDVD image with liveusb-creator. Download the ISO image, don’t let [...]

Setting up a Drupal site: Notes to self

This is just a collection of jots I ( = a Drupal newbie) wrote down as I set up a site with Drupal 7.2. Don’t expect this to be more coherent than a typical shopping list. And now I appreciate how easy it is to install and use WordPress. Drupal is definitely not good for [...]

Synthesizing a black-box binary IP core with XST

Surprisingly enough, I haven’t found a plain and simple cookbook on how to generate a presynthesized IP core for delivery. So I tried it out, and wrote my findings here. Since it’s a result of trial and error, I may have missed some crucial points. Please comment below if you know about such. Synthesis In [...]

A udev rule for my USB stick (disk-on-key)

Writing udev rules is well-documented all over the web, but I still wrote down my own quick summary, so I have it handy for the next time. Following this excellent guide, I plugged in the USB stick and went $ udevadm info -a -n /dev/sdd Udevadm info starts with the device specified by the devpath [...]

A sniff dump of a PCIe device talking with Linux host

This is just a raw dump of PCIe communication. I wrote a small sniffer on an FPGA and ran some data in a loop to and from the peripheral. The sniffer’s own data was stored while sniffing, so it doesn’t appear in the stream. The whole thing ran on a Linux machine. I thought that [...]

Linux character driver: What if flush() data has nowhere to go?

I know that most character drivers don’t implement the flush() method, and the more I deal with it, the more I understand why. But unfortunately, in certain modes of operation flushing is necessary, so I implemented it. One of the problems with flush() is that it’s called when the file is closed automatically as the [...]

Getting CTRL, shift and num lock back again

This really is a note to future self. All of the sudden, terminal windows on my Fedora 12 ceased to respect num lock, shift and CTRL modifiers, and I somehow figured out that it may have something to do with the fact that I was having a Vmplayer machine running. It’s noted a lot elsewhere, [...]