View Single Post
Old 01-03-2012, 11:17 PM   #4
Doramanjyu
Junior Member
Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.Doramanjyu is fluent in JavaScript as well as Klingon.
 
Posts: 1
Karma: 4768
Join Date: Jan 2012
Device: Kindle 3/4/Touch
Since it's difficult for me to x-compile strace for arm-linux, I made strace-like utility(attached) to observe syscalls.
"eips -g ." updates e-ink by ioctl request of MXCFB_SEND_UPDATE with following commented values:
(Structures and definitions are written in kernel-source-root/include/linux/mxcfb.h)

Code:
struct mxcfb_update_data {
    struct mxcfb_rect {
        __u32 top;      // 0x0000
        __u32 left;     // 0x0000
        __u32 width;    // 0x0258 = 600
        __u32 height;   // 0x0320 = 800
    } update_region;
    __u32 waveform_mode;    // 0x0002 = WAVEFORM_MODE_GC16
    __u32 update_mode;      // 0x0000 = UPDATE_MODE_PARTIAL
    __u32 update_marker;    // 0x002a
    int temp;               // 0x1001 = TEMP_USE_PAPYRUS
    uint flags;             // 0x0000
    struct mxcfb_alt_buffer_data alt_buffer_data; // must not used when flags is 0
};
I confirmed that:
Partial update request and full update request works,
WAVEFORM_MODE_GC16 and WAVEFORM_MODE_GC4 works but WAVEFORM_MODE_A2 seems not to work,
and no problem with another update_marker value but update_marker = 0 makes kernel panic.
Attached Files
File Type: gz trace.tar.gz (831 Bytes, 169 views)
Doramanjyu is offline   Reply With Quote