Code Monkey home page Code Monkey logo

bpi-m4-bsp's Introduction

BPI-M4-bsp

Banana Pi M4 board bsp (u-boot 2015.7 & Kernel 4.9.119)


Prepare

Get the docker image from Sinovoip Docker Hub , Build the source code with this docker environment.

Build

Build all bsp packages, please run

#./build.sh 1

Target download packages in SD/bpi-m4 after build. Please check the build.sh and Makefile for detail

Build spi-loader, please run

$ cd u-boot-rtk
$ ./build_bananapi_m4_spi.sh 1   //1GB ddr
$ ./build_bananapi_m4_spi.sh 2   //2GB ddr

Target binary file in u-boot-rtk/DVRBOOT_OUT/

Build bootcode for spi-loader download, please run

$ cd u-boot-rtk
$ ./build_bananapi_m4_bootcode.sh

Target binary files in u-boot-rtk/DVRBOOT_OUT/, please refer to BPI-M4 Wiki to get how to download spi-loader.

Install

Get the image from bpi and download it to the SD card. After finish, insert the SD card to PC

# ./build.sh 7

Choose the type, enter the SD dev, and confirm yes, all the build packages will be installed to target SD card.

Install

bpi-m4-bsp's People

Contributors

bpi-sinovoip avatar dangku avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

bpi-m4-bsp's Issues

u-boot build errors with gcc8 and gcc9

gcc9:

  CC      common/cmd_rtkgpt.o                                                                                                                                                                          
common/cmd_rtkgpt.c: In function ‘fill_one_pte’:                                                                                                                                                       
common/cmd_rtkgpt.c:106:16: error: taking address of packed member of ‘struct _gpt_entry’ may result in an unaligned pointer value [-Werror=address-of-packed-member]                                  
  106 |     pu16Name = pte_curr->partition_name;                                                                                                                                                       
      |                ^~~~~~~~                                                                                                                                                                        
cc1: all warnings being treated as errors                                                                                                                                                              
make[2]: *** [scripts/Makefile.build:277: common/cmd_rtkgpt.o] Error 1                                                                                                                                 
make[1]: *** [Makefile:1377: common] Error 2                                                                                                                                                           
make[1]: Leaving directory '/root/BPI-M4-bsp/u-boot-rtk'                                                                                                                                               

gcc8:

  CC      common/avb_verify.o                                                                                                                                                                          
common/avb_verify.c:13:28: error: ‘avb_root_pub’ defined but not used [-Werror=unused-const-variable=]                                                                                                 
 static const unsigned char avb_root_pub[1032] = {                                                                                                                                                     
                            ^~~~~~~~~~~~                                                                                                                                                               
cc1: all warnings being treated as errors                                                                                                                                                              
make[2]: *** [scripts/Makefile.build:277: common/avb_verify.o] Error 1                                                                                                                                 
make[1]: *** [Makefile:1377: common] Error 2                                                                                                                                                           
make[1]: Leaving directory '/root/BPI-M4-bsp/u-boot-rtk'                                                                                                                                               

Solution for "'multiple definition of yylloc' error

If you are facing the following error,

usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of 'yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here

collect2: error: ld returned 1 exit status

edit the file ./linux-rtk/scripts/dtc/dtc-lexer-lex.c
Find the line 'YYLTYPE yylloc' and change it to 'extern YYLTYPE yylloc'

reference : https://lkml.org/lkml/2020/4/1/1206

u-boot build problems

chmod +x bindAllBins
#bind stuff
cp: cannot stat '/root/BPI-M4-bsp/u-boot-rtk/examples/flash_writer_vm/bootimage/rtd1395/0001/bootmon-new.bin': No such file or directory
make[2]: *** [Makefile:624: hw_setting] Error 1
make[1]: *** [Makefile:954: all] Error 2
make[1]: Leaving directory '/root/BPI-M4-bsp/u-boot-rtk'

Kernel 5.1+

Hello, I would like to use Wifi 6 PCIe cards on the BPI-M4 but for such the 5.1+ kernel is necessary. I checked the other repositories for BPI and found that only the R2 model has newer kernels.

If you can explain to me how I can do it myself and contribute I would appreciate this.

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.