Author Topic: Where can I find the official Linux distribution for v3s?  (Read 4190 times)

0 Members and 1 Guest are viewing this topic.

Offline albusdTopic starter

  • Newbie
  • Posts: 3
  • Country: ir
Where can I find the official Linux distribution for v3s?
« on: June 11, 2017, 09:56:50 am »
Hi, this is my first post here.

We are designing a custom board based on Allwinner v3s. I was wondering how can i build our own kernel and device driver? My framework is an Ubuntu based system. I have CrossCompiler installed.

Any help, hint, advice is appreciated.
 

Offline technix

  • Super Contributor
  • ***
  • Posts: 3507
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: Where can I find the official Linux distribution for v3s?
« Reply #1 on: June 12, 2017, 12:32:37 am »
Start here: http://linux-sunxi.org/

Allwinner have U-Boot and Kernel code drops that contains propertary blobs. Those code can make full use of the chip but does suffer from being an old fork of the code and severe GPL violation.

Mainline support exists in the latest revision but you need to verify that the peripheral you are interested in are supported.
 

Offline albusdTopic starter

  • Newbie
  • Posts: 3
  • Country: ir
Re: Where can I find the official Linux distribution for v3s?
« Reply #2 on: June 18, 2017, 09:03:25 am »
Dear technix,
Thanks for the info.
I downloaded "u-boot" from its GIT. I thought maybe start with a known board, then expand it to a custom board. ( I'm hoping it'll be a good approach. If you thick otherwise, please give me tips.)  I started with Beagle Bone Black. While trying to compile kernel i got the message: "*** No rule to make target 'zImage'.  Stop."

Order of commands ( as explained in https://linux-sunxi.org/Mainline_Kernel_Howto )

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_boneblack_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage dtbs

then I get *** No rule to make target 'zImage'.  Stop.

any suggestion?
 

Offline technix

  • Super Contributor
  • ***
  • Posts: 3507
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: Where can I find the official Linux distribution for v3s?
« Reply #3 on: June 18, 2017, 12:12:42 pm »
Dear technix,
Thanks for the info.
I downloaded "u-boot" from its GIT. I thought maybe start with a known board, then expand it to a custom board. ( I'm hoping it'll be a good approach. If you thick otherwise, please give me tips.)  I started with Beagle Bone Black. While trying to compile kernel i got the message: "*** No rule to make target 'zImage'.  Stop."

Order of commands ( as explained in https://linux-sunxi.org/Mainline_Kernel_Howto )

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_boneblack_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage dtbs

then I get *** No rule to make target 'zImage'.  Stop.

any suggestion?
Are you building Linux kernel or U-Boot bootloader? Those are different software and have different build commands.
 

Offline albusdTopic starter

  • Newbie
  • Posts: 3
  • Country: ir
Re: Where can I find the official Linux distribution for v3s?
« Reply #4 on: June 20, 2017, 08:56:25 am »
Actually I'm confused. All I want is to install Linux preferably Debian-based, on a custom board.

I know about device tree which is a text file and I have to create as device drivers.

The things that I don't know are FEX? SPL? u-boot-spl? kernel? filesystem? mainline?

I've check e-linux and linux-sunxi.

As you know I'm a newbie, and I don't know much, and this is why I'm asking out for help from those kind people who are willing to give me their precious time to help me.

Thanks again.
« Last Edit: June 20, 2017, 09:57:36 am by albusd »
 

Offline technix

  • Super Contributor
  • ***
  • Posts: 3507
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: Where can I find the official Linux distribution for v3s?
« Reply #5 on: June 20, 2017, 12:55:37 pm »
Actually I'm confused. All I want is to install Linux preferably Debian-based, on a custom board.

I know about device tree which is a text file and I have to create as device drivers.

The things that I don't know are FEX? SPL? u-boot-spl? kernel? filesystem? mainline?

I've check e-linux and linux-sunxi.

As you know I'm a newbie, and I don't know much, and this is why I'm asking out for help from those kind people who are willing to give me their precious time to help me.

Thanks again.
So here are some Allwinner and embedded Linux glossary:

* FEL (not FEX) is the first-stage bootloader of Allwinner chips, located in internal mask ROM. When the chip is powered on the processor core start fetching code from this location. It searches the peripherals for some code that it can load and execute, and falls back to a low level recovery mode if the search for bootable media failed. It is similar to the UEFI BIOS in your PC.
* SPL is the second-stage bootloader, and u-boot-spl is the version of SPL provided by U-Boot. When the microprocessor is just booted up the main dynamic memory is not initialized. Thus the FEL only have a few kB of built-in SRAM (often called core tightly-coupled RAM) to work with, hence the amount of code that can be loaded by the FEL is very limited. SPL initializes the main memory and loads the actual bootloader to the main memory.
* Concepts of kernels and filesystems are better explained on Wikipedia.
* The mainline of some software means the software directly from the original author. In the case of Linux kernel and U-Boot it means the Linux kernel code directly from Linus Torvalds. In the case of U-Boot it means the U-Boot code directly from Denx Software Engineering GmbH.

Speaking of, since you are having questions about the software side of things, you may also want to raise the questions on Stack Overflow. There are way more software engineers there than here.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf