def METHOD_NAME(subType, ver, data):
    # ***** Memory Layout *****
    # 1 byte   : Op Type (DeviceFW::OperationType)
    # 1 byte   : Eeprom access method
    # 4 bytes  : Target HUID
    # 8 bytes  : Length of In/Out Buffer
    # 8 bytes  : eepromRole
    # 8 bytes  : Offset
    # 8 bytes  : devSize KB
    # 8 bytes  : roleOffset KB
    # 1 byte   : SPI engine
    # N bytes  : SPI master path
    # Cache the SPI path in string form for reference and easy access
    d = dict()
    subd = dict()
    i = 0
    op = data[i]
    i += 1
    # Keep this check in sync with DeviceFW::OperationType values
    # in src/include/usr/devicefw/driverif.H
    if op == 0:
        subd['EEPROM']='Read'
    elif op == 1:
        subd['EEPROM']='Write'
    else:
        subd['EEPROM']='Unknown'
    subd['Target HUID'], i=memConcat(data, i, i+4)
    subd['Length I/O Buff'], i=memConcat(data, i, i+8)
    subd['eepromRole'], i=memConcat(data, i, i+8)
    subd['Device Size (in KB)'], i=memConcat(data, i, i+8)
    subd['Start of Device Data (in KB)'], i=memConcat(data, i, i+8)
    subd['SPI Engine'], i=memConcat(data, i, i+8)
    #find index of null character
    indx = findNull(data, i, len(data))
    subd['SPI Master Path'], i=strConcat(data, i, indx)
    d['EEPROM Parameters']=subd
    jsonStr = json.dumps(d)
    return jsonStr