Dobrica Pavlinušić's random unstructured stuff
X300 PCI: Revision 14
* [Altera] EP1C6Q240C8N L BCE9S0719A
* Altera EPM3 128ATC100-10N
* Samsung K4S643232H-UC60
* JYEC 80 Mhz
* T61117

EP1C needs Quantus II 11 web pack (last supported) in squeeze chroot

.pre

root@nuc:/nuc# debootstrap --arch i386 squeeze altera-squeeze http://archive.debian.org/debian

$ sudo mount blue:/bluez/FPGA/Altera-x300/11.0sp1_quartus_free_linux /nuc/altera-squeeze/mnt/


# mount /proc into chroot
# chroot into it


root@altera:/mnt$ bash setup --help

apt-get install -y `bash /mnt/setup --help 2>&1 | grep 'cannot open shared object file' | cut -d: -f2 | xargs -i ssh dpavlin@blue dpkg -S {} | grep i386 | cut -d: -f1 | head -1`


if setup dies, look at log in /tmp/ and continue installation of families:


140 "/root/altera/11.0sp1/quartus/bin/quartus_sh" --qinstall -qda "/mnt/altera_installer/bin/../../devices/subscription/cyclone.qda" -show_qt_progress
141 "/root/altera/11.0sp1/quartus/bin/quartus_sh" --qinstall -qda "/mnt/altera_installer/bin/../../devices/subscription/max3000a.qda" -show_qt_progress




.pre

or http://download.altera.com/akdlm/software/acdsinst/13.0sp1/232/ib_installers/cyclone-13.0.1.232.qdz

Quartus II 13.0.1.232 tries to open following device files:

.pre
dpavlin@blue:/bluez/FPGA/Altera-x300$ grep qdz /tmp/foo
lstat64("/bluez/FPGA/Altera-x300/arria_web-13.0.1.232.qdz", 0xff9b166c) = -1 ENOENT (No such file or directory)
lstat64("/bluez/FPGA/Altera-x300/cyclone_web-13.0.1.232.qdz", 0xff9b166c) = -1 ENOENT (No such file or directory)
lstat64("/bluez/FPGA/Altera-x300/cyclonev-13.0.1.232.qdz", 0xff9b166c) = -1 ENOENT (No such file or directory)
lstat64("/bluez/FPGA/Altera-x300/max_web-13.0.1.232.qdz", 0xff9b166c) = -1 ENOENT (No such file or directory)
.pre


^ JTAG

^^ urjtag bug with gpio pin 4

using [urjtag] has bug which doesn't allow usage of pin 4 for anything (DUH!)

following patch fixes this problem:

.pre
--- a/urjtag/src/tap/cable/gpio.c
+++ b/urjtag/src/tap/cable/gpio.c
@@ -45,11 +45,11 @@

/* pin mapping */
enum {
- GPIO_TDI = 0,
+ GPIO_REQUIRED = 0,
+ GPIO_TDI,
GPIO_TCK,
GPIO_TMS,
- GPIO_TDO,
- GPIO_REQUIRED
+ GPIO_TDO
};

typedef struct {
.pre


^^ run urjtag

.pre









pi@picam ~/x300-pci $ sudo jtag

jtag> cable gpio help
Usage: cable gpio tdi=<gpio_tdi> tdo=<gpio_tdo> tck=<gpio_tck> tms=<gpio_tms>

# it seems that tck pin is not accepted!
jtag> cable gpio tck=4 tdo=17 tms=27 tdi=22

jtag> cable gpio tms=27 tdi=22 tdo=17 tck=4




.pre