Jump to content

respeaker rk3229 expected...


Go to solution Solved by SteeMan,

Recommended Posts

  • Solution
11 hours ago, jiapei100 said:

Which one should I select for https://respeaker.io/rk3229_core/ ???

I'll start with a basic question.  What are you trying to accomplish?  Looking at the link you provided, you are dealing with a device that Armbian does not support (and I doubt anyone around Armbian has any knowledge of this particular device).  You mention in your first post linux 6.0.  So I therefore assume you are looking to add support to linux 6.0 and Armbian for this device???  If that is the case, I would first ask do you have the skills and experience to undertake such a task?  Adding support for a new device into the mainstream kernel is a very difficult task, that often takes years of effort to get most of the features working (for someone experienced doing such tasks).

As for this particular respeaker 2.0 sbc, what are your plans for using it?  It would appear to be a specialized device for audio applications.  Which would lead me to believe that there are specific components on this sbc that will need proper driver support in the mainline kernel as well.  Which would likely make the task even more difficult to get these specialized features working on mainline.

As a general rule I would say that usually for a new device the process is to first become familiar with the manufacturer provided legacy linux code base (i.e. be able to build the legacy code from source and start building an understanding of what specialized components the sbc has that may need to be supported in mainline).  Then generally the next step would be to bring that legacy code base into the Armbian build framework to get it working there.  Then start working on getting basic functionality working on mainline (by basic I mean things like getting the board to boot  (building a mainline uboot and kernel that can boot the device)).  Once you get the device to boot on mainline, then you start working on getting each feature working, hdmi, networking, usb, etc.  Then finally getting any device specific features ported/working.

In looking at the respeaker 2.0 legacy source code download, it looks like the legacy code is linux 4.4 base.  There will be a significant effort necessary to bring a seven year old code base up to mainline.  All this is easier if you have the help of the manufacturer, but that rarely is the case.

Link to comment
Share on other sites

Well I heard about respeaker, me and @fabiobassa studied their source code and device tree to get clues about rk322x devices.

AFAIR is a board with a microphone array much like amazon echo/dot devices.

 

Getting respeaker work with armbian would not be a so incredible task, but judging by the tone and manners the guy is asking, it looks to me that he's not really interested in the matter and didn't spend more than a minute to document himself about.

Link to comment
Share on other sites

@SteeMan @jock @Igor

 

Hi, Sorry about my previous unclear description... Sorry, my bad...

 

  1. Actually, I'm not more interested in this particular board https://respeaker.io/rk3229_core/ than others. It's just because I happen to have this board in hand. I used to play with it long time ago .... I just don't put it aside and waste it.... And I happen to have some time these days and was trying to re-flash it again and have some fun, at least, make it work again... 
  2. Recent u-boot, there is a board support directly, https://github.com/u-boot/u-boot/tree/master/board/rockchip/evb_rk3229 , I guess this u-boot board support is suitable for  https://respeaker.io/rk3229_core/  .
  3. Recent kernel, I can see the support under https://github.com/torvalds/linux/tree/master/arch/arm/boot/dts , there are rk3229.dtsi and rk3229-evb.dts .
  4. What I'm asking, it looks Armbian build has been supporting this board, https://github.com/paolosabatino/armbian-build/tree/master/config/kernel . There are 3 configs under there, as follows.  For my simplicity, I think it's better I build Armbian directly for this rk3229 board ?? But, which one should I select ? 
    • linux-rk322x-current.config
    • linux-rk322x-edge.config
    • linux-rk322x-legacy.config

 

So, can you please give me some more suggestions anyway?? Thank you .... 

 

 

Link to comment
Share on other sites

Where you see armbian has been supporting the board?

This is the page of the armbian supported boards, there is no trace of respeaker.

 

You may want try to download an image for "generic" rk322x tv boxes (see this thread), it may work, or may not.

If you want to build an armbian image by yourself, you're welcome, but you should at least read a bit of documentation to get acquainted with the process.

 

Link to comment
Share on other sites

@jiapei100  I think you are confusing cpu support and board support.  While the rk3229 cpu has good support in modern linux kernels (good but not perfect yet) there is no support for your specific board.  It is very different work to support the cpu than support a specific board using that cpu.  It can take months of development effort to get a board to work well after the kernel supports the cpu.  Board support entails support for all the other hardware on the board (memory chips, networking/wifi and whatever else may be on the board).  That involves both making sure that the proper drivers are available for the hardware (often since there is generally no help from the board manufacturer, it is a guessing game to reverse engineer the hardware and try to find source code for the hardware componentes) and that the dtb file is created for that specific hardware.  The dtb is the mapping between the hardware and the linux kernel.  Generally to work well you will need a dtb specific to your board.  And then finally all of this work also needs to be done with the u-boot code to again get the hardware mapped correctly so the device can boot.

 

As jock stated you should read the armbian development documentation to understand what armbian is.  For example your final question about which config file to use, doesn't make sense if you understand the armbian build system.  'current', 'edge' and 'legacy' are labels for specific kernel versions - legacy generally is the original 4.x kernel released by the manufacturer, current is the current stable version (i.e. 5.15), and edge is the bleeding edge development kernel (i.e 6.x).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines