Skip to content

MIPS architecture support #2

@ReimuNotMoe

Description

@ReimuNotMoe

Is your feature request related to a problem? Please describe.

I'm trying to interface a CYW43430-A1 chip with a Microchip PIC32 MCU. The PIC32 uses the MIPS architecture, but your btstack only has static libraries built for ARM architectures.

Describe the solution you'd like

Please add static libraries built for MIPS architectures. It's very easy with standard GCC toolchains.

Similar to the Thumb ISA of ARM, MIPS has MIPS16e and microMIPS. And MIPS is bi-endian. So (ideally) 12 versions needs to be built:

Endian

  • Little endian (-EL)
  • Big endian (-EB)

ISA

  • MIPS32 (-march=mips32r2)
  • MIPS16e (-march=mips32r2 -minterlink-compressed -mips16)
  • microMIPS (-march=mips32r2 -minterlink-compressed -mmicromips)

Floating point

  • Soft float (-msoft-float)
  • Hard float (-mhard-float -fpxx)

If this is too much for you, you can only add the combination of Little endian, MIPS32, Soft float, since it's mostly used.

Describe alternatives you've considered

  • Use paid 3rdparty Bluetooth stacks like BlueKitchen. But it would be very unwise.
  • Use WiFi+BT modules from other manufacturers.

Additional context

If you need help configuring or installing a MIPS GCC toolchain, feel free to ask me.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions