Customize Kernel for Sabre Board for Smart Device

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Customize Kernel for Sabre Board for Smart Device

791 Views
EddyChiu
Contributor I

Hi all,

I am evaluating the use of the Sabre Board for Smart Device (SDB) as the reference design for our custom board, but the final design requires far less functionality then SDB design.  To save cost we must to take away the all the unused components such as the battery charging circuitry, audio codec, touchscreen interface, accelerator, etc; and on top of that we will be using a smaller size RAM and eMMC.

So anyone can shred some lights in how much effort is required on modifying the kernel to support a strip-down version of the SDB?

We are not kernel experts, so ideally we hope the Linux kernel provided by Freescale would work as-is even with all the hardware modifications.  Would it be as simple as changing some kernel options in LTIB?  Or we actually need to dig into the kernel sources and disable all the unused components?

Thanks,

Eddy

Labels (4)
Tags (1)
4 Replies

611 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, Eddy

     To support smaller RAM size, you can just change the setting of DRAM size in uboot.

     To disable those unused modules, for kernel L3.0.35 or earlier version, you can just remove those devices imx6q_add_xxx() function call in mx6_sabresd_board_init of arch/arm/mach-mx6/board-mx6q_sabresd.c(take SABRESD board as example, for other boards, please refer to other board files, arch/arm/mach-mx6/board-mx6q_xxx.c), then the driver will not be loaded. However, remove those config in menuconfig(kernel option) is the most clean way to disable those unused modules. for kernel L3.10 or later version, you can just add status of disabled in DTB, take i.MX6Q sabresd board for example, you can just set those unused modules status to disabled, see below, the hdmi audio will be disabled. Hope these info help.

     arch/arm/boot/dts/imx6qdl-sabresd.dtsi:

287 &hdmi_audio {

288         status = "disabled";

289 };

290

611 Views
EddyChiu
Contributor I

Thanks!  This will give me a starting point on evaluating how comfortable our team will be in using the SDB as reference design.

Correct me if I am wrong, LTIB supports 3.0.35 only and I need to use Yocto for the newer (3.10?) kernel right?  With a new project, which method (LTIB vs Yocto) should I use?

0 Kudos

611 Views
AnsonHuang
NXP Employee
NXP Employee

As far as I know, if you are using new kernel, better to use Yocto.

0 Kudos

611 Views
LeonardoSandova
Specialist I