Skip to content

Instantly share code, notes, and snippets.

Avatar

Matthijs van Duin mvduin

View GitHub Profile
View gist:f3cd7e5fa738204f2f9bb3c629560f21
# oh no...
~/some-git-repo$ git log --oneline
d28077cbfb16 (HEAD -> master) even more changes
7911a300794f more changes
7ede0b52d6eb fixed stuff
b554432cd465 this should never have been committed
532e5d734387 Initial commit
# You committed something bad, and it's not your latest commit either!
@mvduin
mvduin / eglfs_kms_16bit.patch
Last active Feb 7, 2017
First guess at making eglfs_kms use 16-bit framebuffers
View eglfs_kms_16bit.patch
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
index 1c0a8e1b5fc1..6b1dd875fb7e 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
@@ -90,7 +90,7 @@ EGLNativeWindowType QEglFSKmsGbmIntegration::createNativeOffscreenWindow(const Q
qCDebug(qLcEglfsKmsDebug) << "Creating native off screen window";
gbm_surface *surface = gbm_surface_create(static_cast<QEglFSKmsGbmDevice *>(device())->gbmDevice(),
1, 1,
- GBM_FORMAT_XRGB8888,
+ GBM_FORMAT_RGB565,
View bits-are-hard-okay.cc
// arm-linux-gnueabihf-gcc 6.3.0 at -O2 ..versus.. bitfields
// some struct definition for pin config registers:
struct Pad {
enum pull_t { pull_down, no_pull, pull_up };
enum slew_t { fast, slow };
enum rx_t { rx_dis, rx_en };
uint mode : 3;
pull_t pull : 2;
View icepick.tcl
proc _icepick_ir { jrc ir valbits {regbits 0} } {
set ::$jrc.valbits $valbits
set ::$jrc.regbits $regbits
irscan $jrc $ir
}
proc icepick_ir_bypass { jrc } { _icepick_ir $jrc 0x3f 1 }
proc icepick_ir_idcode { jrc } { _icepick_ir $jrc 0x04 32 }
proc icepick_ir_ipcode { jrc } { _icepick_ir $jrc 0x05 32 }
proc icepick_ir_usrcode { jrc } { _icepick_ir $jrc 0x08 32 }
proc icepick_ir_connect { jrc } { _icepick_ir $jrc 0x07 4 3 }
View gpio.h
#pragma once
#include "die.h"
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
class Gpio {
int fd = -1;
char *path = NULL;
View shrink-image.sh
#!/bin/bash
set -e
shopt -s lastpipe extglob
if [[ $# != 1 ]]; then
echo "Usage: ${BASH_SOURCE} <device or image file>" >&2
false
fi
@mvduin
mvduin / 1 - empty.c
Created Mar 21, 2017
empty PRU program with clpru
View 1 - empty.c
int main() {
return 0;
}
@mvduin
mvduin / demo.asm
Created Mar 21, 2017
clpru code output
View demo.asm
; boilerplate and compiler spam removed for readability
.global ||_Z6istruei||
||_Z6istruei||:
LDI r0.b0, 0x00
QBEQ ||$C$L4||, r14, 0x00
LDI r0.b0, 0x01
||$C$L4||:
MOV r14.b0, r0.b0
JMP r3.w2
View sysfs-gpio.h
#pragma once
#include "die.h"
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
struct Gpio {
int fd = -1;
char *path = NULL;
@mvduin
mvduin / wsegl.h
Created Jul 20, 2017
wsegl v4, cleaned up
View wsegl.h
/*************************************************************************/ /*!
@Copyright Copyright (c) Imagination Technologies Ltd. All Rights Reserved
@License Dual MIT/GPLv2
The contents of this file are subject to the MIT license as set out below.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell