This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/TAS5782M: Linux driver for TAS5782M

Part Number: TAS5782M
Other Parts Discussed in Thread: TAS5756M

Tool/software: Linux

Hi, my customer has a question regarding driver availability...

 

As we work on bringup, our initial interest is to see if TI has a reference linux based driver that we can use.


We are extracting register settings using the Purepath Console (PPC) setup and PC based application but I am concerned things may be getting lost in translation so to speak.

 

thanks,

Tony

 

  • Hi Tony,

    Unfortunately, we don't have a reference Linux driver for TAS5782M for now.

    If your customer doesn't need to adjust the volume in TAS5782M, actually no Linux driver is required. They can put all the configurations in a script then load that script when their Linux system is booting up.

    If your customer really needs a Linux driver, I would suggest they take a look at the following driver.
    elixir.free-electrons.com/.../pcm512x.c
    If I remember correctly, one of our customers IQaudIO reused that driver to support their TAS5756M module (iqaudio.co.uk/.../9-pi-digiamp-0712411999650.html). TAS5756M basically has the same register map as TAS5782M at page 0 and therefore it is very likely the same driver can be used for TAS5872M.

    Note that if your customer uses some TAS5872M process flow, they will have to modify the driver so that their configurations can be loaded to initialize TAS5872M via i2c.

    I do have a plan to write an app note to explain all the details if time permits. Maybe I will upload that app note there.

    Andy

  • Thanks for your kindly support.
    I am trying to porting TAS5782m into our board but now stacked in the “last mile” step.
    Here are my status for your reference:

    i) I’ve verified PPC + EVM board with external MI2S signal that create from our system and works(The audio from speaker).
    ii) With this configuration, I use the functionality that PPC GUI provide: “Dump current state into a header file”, see attachment.
    Get from this file, there’s a big array settings that should be apply to our board (In file, cfg_reg registers[]).
    cfg_reg registers[] = {
    //program memory
    { 0x00, 0x00 }
    { 0x7f, 0x00 },  Does it means write address 0x7f with value 0x00, right?
    iii) Use attached script to apply i2c command settings, there’s no voice from speaker.

    Therefore we need your help for these items:
    i) Review attached register map for its correctness.
    ii) Does any tricky between i2c command(delay or etc) write and how to debug it?

    Any feedback would be appreciate!!
  • typedef unsigned char cfg_u8;
    typedef union {
        struct {
            cfg_u8 offset;
            cfg_u8 value;
        };
        struct {
            cfg_u8 command;
            cfg_u8 param;
        };
    } cfg_reg;
    
    #define CFG_META_SWITCH (255)
    #define CFG_META_DELAY  (254)
    #define CFG_META_BURST  (253)
    
    /* Example C code */
    /*
        // Externally implemented function that can write n-bytes to the device
        // PCM51xx and TAS5766 targets require the high bit (0x80) of the I2C register to be set on multiple writes.
        // Refer to the device data sheet for more information.
        extern int i2c_write(unsigned char *data, int n);
        // Externally implemented function that delays execution by n milliseconds
        extern int delay(int n);
        // Example implementation.  Call like:
        //     transmit_registers(registers, sizeof(registers)/sizeof(registers[0]));
        void transmit_registers(cfg_reg *r, int n)
        {
            int i = 0;
            while (i < n) {
                switch (r[i].command) {
                case CFG_META_SWITCH:
                    // Used in legacy applications.  Ignored here.
                    break;
                case CFG_META_DELAY:
                    delay(r[i].param);
                    break;
                case CFG_META_BURST:
                    i2c_write((unsigned char *)&r[i+1], r[i].param);
                    i +=  (r[i].param + 1)/2;
                    break;
                default:
                    i2c_write((unsigned char *)&r[i], 2);
                    break;
                }
                i++;
            }
        }
     */
    
    cfg_reg registers[] = {
    //program memory
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x02, 0x11 },
        { 0x01, 0x11 },
        { 0x00, 0x00 },
        { 0x00, 0x00 },
        { 0x00, 0x00 },
        { 0x00, 0x00 },
        { 0x03, 0x11 },
        { 0x2a, 0x00 },
        { 0x25, 0x18 },
        { 0x0d, 0x10 },
        { 0x02, 0x00 },
    
    //Sample rate update
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x02, 0x80 },
    
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
    
    // speed 03-48k 04-96k
    //dynamically reading speed
        { 0x22, 0x03 },
    
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x02, 0x00 },
    
    //write coefficients of various components
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x1c, 0x00 },
        { 0x1d, 0x00 },
        { 0x1e, 0x00 },
        { 0x1f, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x1f },
        { 0x24, 0x00 },
        { 0x25, 0x20 },
        { 0x26, 0xc4 },
        { 0x27, 0x9c },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x11 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x12 },
        { 0x44, 0xff },
        { 0x45, 0x84 },
        { 0x46, 0x59 },
        { 0x47, 0x16 },
        { 0x48, 0xff },
        { 0x49, 0x84 },
        { 0x4a, 0x59 },
        { 0x4b, 0x16 },
        { 0x4c, 0xff },
        { 0x4d, 0x84 },
        { 0x4e, 0x59 },
        { 0x4f, 0x16 },
        { 0x50, 0x70 },
        { 0x51, 0x46 },
        { 0x52, 0x2b },
        { 0x53, 0x3b },
        { 0x54, 0x9d },
        { 0x55, 0x85 },
        { 0x56, 0x0d },
        { 0x57, 0xe2 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x13 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x13 },
        { 0x58, 0x4f },
        { 0x59, 0x9d },
        { 0x5a, 0xf9 },
        { 0x5b, 0x35 },
        { 0x5c, 0xb0 },
        { 0x5d, 0x62 },
        { 0x5e, 0x06 },
        { 0x5f, 0xcb },
        { 0x60, 0x4f },
        { 0x61, 0x9d },
        { 0x62, 0xf9 },
        { 0x63, 0x35 },
        { 0x64, 0x49 },
        { 0x65, 0xe6 },
        { 0x66, 0x9d },
        { 0x67, 0x16 },
        { 0x68, 0xd5 },
        { 0x69, 0x55 },
        { 0x6a, 0x55 },
        { 0x6b, 0x56 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x14 },
        { 0x08, 0x7c },
        { 0x09, 0xb6 },
        { 0x0a, 0xa4 },
        { 0x0b, 0xbc },
        { 0x0c, 0x83 },
        { 0x0d, 0x49 },
        { 0x0e, 0x5b },
        { 0x0f, 0x44 },
        { 0x10, 0x7c },
        { 0x11, 0xb6 },
        { 0x12, 0xa4 },
        { 0x13, 0xbc },
        { 0x14, 0x7c },
        { 0x15, 0xb1 },
        { 0x16, 0x2c },
        { 0x17, 0x1e },
        { 0x18, 0x86 },
        { 0x19, 0x87 },
        { 0x1a, 0xc5 },
        { 0x1b, 0x49 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x14 },
        { 0x1c, 0x05 },
        { 0x1d, 0xb7 },
        { 0x1e, 0x5c },
        { 0x1f, 0x1f },
        { 0x20, 0x05 },
        { 0x21, 0xb7 },
        { 0x22, 0x5c },
        { 0x23, 0x1f },
        { 0x24, 0x05 },
        { 0x25, 0xb7 },
        { 0x26, 0x5c },
        { 0x27, 0x1f },
        { 0x28, 0x49 },
        { 0x29, 0xe6 },
        { 0x2a, 0x9d },
        { 0x2b, 0x16 },
        { 0x2c, 0xd5 },
        { 0x2d, 0x55 },
        { 0x2e, 0x55 },
        { 0x2f, 0x56 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x14 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x14 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x44, 0x7f },
        { 0x45, 0xff },
        { 0x46, 0xff },
        { 0x47, 0xff },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x15 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x44, 0x7f },
        { 0x45, 0xff },
        { 0x46, 0xff },
        { 0x47, 0xff },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x16 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x44, 0x7f },
        { 0x45, 0xff },
        { 0x46, 0xff },
        { 0x47, 0xff },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x17 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x08, 0x08 },
        { 0x09, 0x00 },
        { 0x0a, 0x00 },
        { 0x0b, 0x00 },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x44, 0x7f },
        { 0x45, 0xff },
        { 0x46, 0xff },
        { 0x47, 0xff },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x18 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x44, 0x7f },
        { 0x45, 0xff },
        { 0x46, 0xff },
        { 0x47, 0xff },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x58, 0x7f },
        { 0x59, 0xff },
        { 0x5a, 0xff },
        { 0x5b, 0xff },
        { 0x5c, 0x00 },
        { 0x5d, 0x00 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x19 },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x1c, 0x7f },
        { 0x1d, 0xff },
        { 0x1e, 0xff },
        { 0x1f, 0xff },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x24, 0x00 },
        { 0x25, 0x00 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x30, 0x7f },
        { 0x31, 0xff },
        { 0x32, 0xff },
        { 0x33, 0xff },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x44, 0x08 },
        { 0x45, 0x00 },
        { 0x46, 0x00 },
        { 0x47, 0x00 },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x4c, 0x00 },
        { 0x4d, 0x00 },
        { 0x4e, 0x00 },
        { 0x4f, 0x00 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x58, 0x00 },
        { 0x59, 0xe2 },
        { 0x5a, 0xc4 },
        { 0x5b, 0x6b },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1a },
        { 0x6c, 0x00 },
        { 0x6d, 0x06 },
        { 0x6e, 0xd3 },
        { 0x6f, 0x72 },
        { 0x70, 0x00 },
        { 0x71, 0x02 },
        { 0x72, 0xbb },
        { 0x73, 0x06 },
        { 0x74, 0x00 },
        { 0x75, 0x03 },
        { 0x76, 0x69 },
        { 0x77, 0xc5 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1b },
        { 0x08, 0x00 },
        { 0x09, 0x00 },
        { 0x0a, 0x00 },
        { 0x0b, 0x00 },
        { 0x0c, 0xf9 },
        { 0x0d, 0xda },
        { 0x0e, 0xbc },
        { 0x0f, 0x21 },
        { 0x10, 0xfc },
        { 0x11, 0x58 },
        { 0x12, 0x8b },
        { 0x13, 0x89 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1b },
        { 0x1c, 0x00 },
        { 0x1d, 0x06 },
        { 0x1e, 0xd3 },
        { 0x1f, 0x72 },
        { 0x20, 0x00 },
        { 0x21, 0x02 },
        { 0x22, 0xbb },
        { 0x23, 0x06 },
        { 0x24, 0x00 },
        { 0x25, 0x03 },
        { 0x26, 0x69 },
        { 0x27, 0xc5 },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x30, 0x00 },
        { 0x31, 0x00 },
        { 0x32, 0x00 },
        { 0x33, 0x00 },
        { 0x34, 0xf9 },
        { 0x35, 0xda },
        { 0x36, 0xbc },
        { 0x37, 0x21 },
        { 0x38, 0xfc },
        { 0x39, 0x58 },
        { 0x3a, 0x8b },
        { 0x3b, 0x89 },
        { 0x3c, 0x00 },
        { 0x3d, 0x00 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1b },
        { 0x44, 0x00 },
        { 0x45, 0x06 },
        { 0x46, 0xd3 },
        { 0x47, 0x72 },
        { 0x48, 0x00 },
        { 0x49, 0x02 },
        { 0x4a, 0xbb },
        { 0x4b, 0x06 },
        { 0x4c, 0x00 },
        { 0x4d, 0x03 },
        { 0x4e, 0x69 },
        { 0x4f, 0xc5 },
        { 0x50, 0x00 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x54, 0x00 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x58, 0x00 },
        { 0x59, 0x00 },
        { 0x5a, 0x00 },
        { 0x5b, 0x00 },
        { 0x5c, 0xf9 },
        { 0x5d, 0xda },
        { 0x5e, 0xbc },
        { 0x5f, 0x21 },
        { 0x60, 0xfc },
        { 0x61, 0x58 },
        { 0x62, 0x8b },
        { 0x63, 0x89 },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x68, 0x00 },
        { 0x69, 0x00 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1c },
        { 0x6c, 0x7f },
        { 0x6d, 0xff },
        { 0x6e, 0xff },
        { 0x6f, 0xff },
        { 0x70, 0x00 },
        { 0x71, 0x00 },
        { 0x72, 0x00 },
        { 0x73, 0x00 },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x7c, 0x00 },
        { 0x7d, 0x00 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x08, 0x7f },
        { 0x09, 0xff },
        { 0x0a, 0xff },
        { 0x0b, 0xff },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x1c, 0x00 },
        { 0x1d, 0x06 },
        { 0x1e, 0xd3 },
        { 0x1f, 0x72 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x20, 0x1c },
        { 0x21, 0x1b },
        { 0x22, 0xf0 },
        { 0x23, 0x41 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x24, 0x04 },
        { 0x25, 0x0c },
        { 0x26, 0x37 },
        { 0x27, 0x14 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x2c, 0x00 },
        { 0x2d, 0x80 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x34, 0x40 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x38, 0x40 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x40, 0x00 },
        { 0x41, 0x80 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x44, 0x00 },
        { 0x45, 0x00 },
        { 0x46, 0x00 },
        { 0x47, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x48, 0x00 },
        { 0x49, 0x00 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x58, 0x00 },
        { 0x59, 0x00 },
        { 0x5a, 0x00 },
        { 0x5b, 0x01 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x5c, 0x00 },
        { 0x5d, 0x80 },
        { 0x5e, 0x00 },
        { 0x5f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x60, 0x00 },
        { 0x61, 0x00 },
        { 0x62, 0x00 },
        { 0x63, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x64, 0x00 },
        { 0x65, 0x00 },
        { 0x66, 0x00 },
        { 0x67, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x68, 0x00 },
        { 0x69, 0x80 },
        { 0x6a, 0x00 },
        { 0x6b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x74, 0x00 },
        { 0x75, 0x00 },
        { 0x76, 0x00 },
        { 0x77, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x78, 0x00 },
        { 0x79, 0x00 },
        { 0x7a, 0x00 },
        { 0x7b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1d },
        { 0x7c, 0x00 },
        { 0x7d, 0x80 },
        { 0x7e, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x08, 0x00 },
        { 0x09, 0x80 },
        { 0x0a, 0x00 },
        { 0x0b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x0c, 0x00 },
        { 0x0d, 0x00 },
        { 0x0e, 0x00 },
        { 0x0f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x10, 0x00 },
        { 0x11, 0x00 },
        { 0x12, 0x00 },
        { 0x13, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x14, 0x00 },
        { 0x15, 0x80 },
        { 0x16, 0x00 },
        { 0x17, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x18, 0x00 },
        { 0x19, 0x00 },
        { 0x1a, 0x00 },
        { 0x1b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x1c, 0x00 },
        { 0x1d, 0x00 },
        { 0x1e, 0x00 },
        { 0x1f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x20, 0x00 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x24, 0x00 },
        { 0x25, 0x80 },
        { 0x26, 0x00 },
        { 0x27, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x28, 0x00 },
        { 0x29, 0x00 },
        { 0x2a, 0x00 },
        { 0x2b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x2c, 0x00 },
        { 0x2d, 0x80 },
        { 0x2e, 0x00 },
        { 0x2f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x30, 0x00 },
        { 0x31, 0x00 },
        { 0x32, 0x00 },
        { 0x33, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x34, 0x00 },
        { 0x35, 0x00 },
        { 0x36, 0x00 },
        { 0x37, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x38, 0x00 },
        { 0x39, 0x00 },
        { 0x3a, 0x00 },
        { 0x3b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x3c, 0x00 },
        { 0x3d, 0x80 },
        { 0x3e, 0x00 },
        { 0x3f, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x40, 0x00 },
        { 0x41, 0x00 },
        { 0x42, 0x00 },
        { 0x43, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x44, 0x00 },
        { 0x45, 0x80 },
        { 0x46, 0x00 },
        { 0x47, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x48, 0x00 },
        { 0x49, 0x80 },
        { 0x4a, 0x00 },
        { 0x4b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x50, 0x40 },
        { 0x51, 0x00 },
        { 0x52, 0x00 },
        { 0x53, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x54, 0x04 },
        { 0x55, 0x00 },
        { 0x56, 0x00 },
        { 0x57, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1e },
        { 0x58, 0x04 },
        { 0x59, 0x00 },
        { 0x5a, 0x00 },
        { 0x5b, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x14, 0x00 },
        { 0x15, 0xce },
        { 0x16, 0xc0 },
        { 0x17, 0x8a },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x18, 0x0a },
        { 0x19, 0x0a },
        { 0x1a, 0xae },
        { 0x1b, 0xd2 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x1c, 0x00 },
        { 0x1d, 0x03 },
        { 0x1e, 0x69 },
        { 0x1f, 0xd0 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x20, 0x40 },
        { 0x21, 0x00 },
        { 0x22, 0x00 },
        { 0x23, 0x00 },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x28, 0x75 },
        { 0x29, 0xf5 },
        { 0x2a, 0x51 },
        { 0x2b, 0x2e },
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x1f },
        { 0x2c, 0x00 },
        { 0x2d, 0x00 },
        { 0x2e, 0x57 },
        { 0x2f, 0x62 },
    
    //swap command
        { 0x00, 0x00 },
        { 0x7f, 0x8c },
        { 0x00, 0x23 },
        { 0x14, 0x00 },
        { 0x15, 0x00 },
        { 0x16, 0x00 },
        { 0x17, 0x01 },
    
    
    //register tuning
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x07, 0x00 },
        { 0x08, 0x20 },
        { 0x55, 0x07 },
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x00 },
        { 0x3d, 0x30 },
        { 0x3e, 0x30 },
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x00, 0x01 },
        { 0x02, 0x00 },
    
    
    //Unmute the device
        { 0x00, 0x00 },
        { 0x7f, 0x00 },
        { 0x03, 0x00 },
        { 0x2a, 0x11 },
    
    };
    

  • The register map attached. Thanks
  • Will you be able to upload your tuning file (.ppc3)?
  • Hi Andy,

    I don't generate .ppc files and just apply i2c settings from "Dump system register" functionality.

    But we solve the problem now after remove DSP coefficients (Remove The section //write coefficients of various components)

    Do you have idea how to debug this section? For acoustic tuning we still this part.

    Thanks,

    KNight Weng