Baikal Electronics is a Russian fabless semiconductor company specializing in ARM and MIPS-based SoC, and we’ve already covered their Baikal T1 MIPS SoC announcement, as well as Tavolga Terminal TP-T22BT Debian 8 All-in-One Computer based on the processor. The company also have Baikal T1 BFK 1.6 development board, which does not appear to be publicly available yet, but one member of Habrahabr.ru forums got hold of one sample, and tested the OpenWrt SDK in Debian 8 host computer.
I don’t have the full specs of the board, but we’ll learn a little more below, in the meantime we can see two USB ports, Gigabit Ethernet ports, a 10GbE SFP cage, an mPCIe slot (I think), and two DB9 connector, as well as a bunch of other headers and connectors with SATA, GPIO, UART, I2C, SPI…
I’ve then downloaded Baikal T1 BSP for Linux, and installed it in Ubuntu 16.04:
chmod +x bsp_baikal_mips_4_00_08.run
The good part is that everything appears to be in English, as the output from the installer shows:
Creating directory baikal
Verifying archive integrity… All good.
Uncompressing BAIKAL-T SoC BSP Pack. Version 4.08 build 84 (Fri Nov 11 14:50:17 MSK 2016) 100%
BAIKAL ELECTRONICS BAIKAL-T1 BFK BOARD BSP PACK
This package contains Board Support Package for Baikal Electronics BFK board including Software Development Kit (SDK) for Baikal-T series SoCs.
It provide our customers with a comprehensive starting point for their Linux development efforts on MIPS32 platform. These packages are developed and tested to support 34K, 74K and P5600 MIPS processors. This SDK is tested for use with a given processor and its supporting development system, ensuring an operational toolchain, kernel and specific peripherals that are ready to use together within a fixed configuration for specific hardware reference platforms.
Baikal Linux SDK typically include Linux kernel, device drivers, libraries, simulator, and GNU Tools like compilers, linkers, etc. The documentation will provide detailed information on the version of the kernel, glibc, gcc, etc., as well as information about simulator is included within a specific SDK.
For more information about BSP and Quick Start Guide please read README file.
For detailed information please read document “Software Development Kit for Baikal-T platform”.
That’s the directory structure of the BSP:
├── bin Binary executables files
├── doc Documentation
├── img Built image storage
├── lib Several libs for JTAG adapters
│ ├── bios BFK Board BIOS sources
│ ├── boot Baikal-T platform bootloader sources
│ ├── configs Basic config files
│ ├── dfu-util DFU utility for BFK board bios flashing
│ ├── examples Example files for test builds
│ ├── initrd Source of INITRD programs
│ ├── kernel Linux kernel source
│ ├── openocd Source of OpenOCD server
│ ├── qemu QEMU sources
│ ├── u-boot Source of U-Boot boot loader
│ └── x-tools Crosstools sources
├── scripts Scripts for building custom images and run simulator
├── share Shared files for OpenOCD server
└── x-tools Pre-build crosstools
I don’t have the board, so I’m not going to go through all steps, but instead summarize what the user in the forum did after that.
- Create image to be flash with the board using build-boot-img.sh script
- Flash the image with dfu-util after having connected the board to your computer via USB.
- The board should now boot to a serial console, but you’ll want to get OpenWrt 15.05 source code, patch it, build the rootfs, and flash it again with dfu-util.
- Your Baikal T1 board should now be running OpenWrt
The reviewer also tested Gigabit performance using iperf, and data could be transferred at 830 Mbps. A Quick look at the source in the BSP reveals the Linux 4.4.24 is used on the board, together with Uboot 2014.10.
I could not find ways to buy the board online easily even in Russian. But if you represent a company interested in the solution, you might be able to get more information, and/or purchase the board by contacting the company via Baikal T1 product page.
Thanks to Leon for the tip.