Code Monkey home page Code Monkey logo

mediatek-lte-baseband-re's Introduction

MediaTek LTE Baseband RE

Introduction

MediaTek is a fabless semiconductor company that makes, among other things, smartphone SoCs with built-in LTE modems. These SoCs interest me for the following reasons:

  • They're cheap.
  • They're extremely popular.
  • They're used in many inexpensive LTE smartphones.
  • They primarily use off-the-shelf IP cores, which for the ARM cores means documentation is publicly available.
  • Their Linux kernel sources are generally available, though not always buildable.
  • While the BSPs for these SoCs usually support code signing/image verification/etc., most phones based on them either don't enable it or implement it incorrectly, enabling us to run our own code and build our own firmware.
  • You can usually find their datasheets, TRMs, register manuals, functional specifications, and reference designs leaked online.
  • Everyone else is interested in Qualcomm SoCs, so MediaTek SoCs are currently low-hanging fruit. :)

The LTE modem in these SoCs consists of two main components:

  • A Cortex-R4 to handle the LTE protocol.
  • A Coresonic DSP to hande the data-to-RF conversion.

The initial goals of this project are to reverse engineer the Coresonic DSP, its "SIMT" instruction set, the interface between the Cortex-R4 and the Coresonic DSP, and the interface between the Cortex-R4 and the SoC's applications processor. Doing this will empower users to build custom modems using inexpensive, off-the-shelf Android smartphones. Some examples of what would be possible:

  • Over-engineered walkie-talkie.
  • Smartphone DECT handset.
  • Cognitive radio in TV whitespace.
  • Dongle-free smartphone digital TV receiver.
  • Dongle-free smartphone SDR/spectrum analyzer.
  • Free Software LTE modem.

This repository will track the notes I write and the tools I build to do all of this.

Current Progress

The DSP firmware can be decoded. See the DSP directory for some scripts to do this and to read the notes on my findings.

My current task list is in Tasks.md.

Additional Information

See the General-Notes.adoc file in this directory for general information about MediaTek's LTE modems and SoCs. Information on each subsystem can be found in the "Notes.md" file in the directory for that subsystem.

The Documents.md file contains a list of research papers, presentations, patents, and other documents that are or might be relevant to this project.

Chat

Join us in the #postmarketos-lowlevel channel on Matrix or OFTC IRC to discuss this and other low-level smartphone firmware projects.

License

Except where otherwise stated:

mediatek-lte-baseband-re's People

Contributors

cyrozap avatar didntread avatar lokkju avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mediatek-lte-baseband-re's Issues

Take a look at helio X10

If you Google around a bit, you'll be able to find a leaked version of Helio x10 SOC baseband and kernel (if you didn't know already). I'm currently trying to purchase a device(redmi note 2/3 Chinese version or HTC one x9) with this SOC to try and find out what I can do to run code on it. I think this source will help greatly with your reverse engineering effort.

Baseband modification

I am interested in making some modifications to the way the baseband firmware works to expose some functionalities would it be possible with this to modify the code and re flash the modems?

Code license

What license the code is under? I'd like to use some great work from SoC/common/ in my projects but I haven't found a license.

The MD32 looks like heritage from Analog Devices Division

`/************************************************************************
*

  • cycle_count_md32.h
  • Platform specific functions to measure cycle counts
  • This header file is not meant to be included directly. Please
  • include <cycle_count.h> instead.

************************************************************************/

/*

  • Copyright (c) 2009 MediaTek Inc. All Rights Reserved.

  • This software is protected by copyright and the information
  • contained herein is confidential. The software may not be
  • copied and the information contained herein may not be used or
  • disclosed except with the written permission of MediaTek Inc.
  • (c) Copyright 2004-2008 Analog Devices, Inc. All rights reserved.
  • $Revision: 1.2 $
    */`

News from 2007

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.