I would like to replace the atheros PHY with the micrel PHY driver in a core-image-base build for the imx6sxsabre board

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

I would like to replace the atheros PHY with the micrel PHY driver in a core-image-base build for the imx6sxsabre board

1,698 Views
terristewart
Contributor I

I am trying to replace the atheros PHY driver with the micrel PHY driver in a Yocto core-image-base SD card image for the imx6sxsabre board. 

I followed the Freescale Yocto Project User's Guide to build the core-image-base imagein ~/fsl-release-bsp/build-core-base-mdisp

Assuming dir=~fsl-release-bsp/build-core-base-mdisp/tmp/work/imx6sxsabresd-poky-linux-gnuabi/u-boot-imx/2014.04-r0/git:

I modified dir/include/configs/mx6sxsabresd.h to remove the #define CONFIG_PHY_ATHEROS and to add #define CONFIG_PHY_MICREL and #define CONFIG_PHY_MICREL_KSZ9021

I modified dir/include/autoconf.mk to remove CONFIG_PHY_ATHEROS=y and to add CONFIG_PHY_MICREL=y

I verified dir/drivers/net/phy/Makefile contains the line obj- $(CONFIG_PHY_MICREL) +=micrel.o

I then tried to rebuild the SD card core-image-base image via the following:

cd ~/fsl-release-bsp

source setup-environment build-core-base-mdisp

bitbake -f -c compile core-image-base

bitbake core-image-base

dir/drivers/net/phy/micrel.c was not even compiled...the image was built, but must still be using the atheros version...

I have a feeling modifying the files under the tmp/work... area is not being recognized by the bitbake build process.

I am sure there is a relatively simple solution to this if you understand the entire bitbake/Yocto process, but I am new to this and would REALLY APPRECIATE some insight from someone with experience and expertise in this area. 

I have been through much documentation and will continue to try to figure this out, but am hopeful someone can provide assistance.

Thank you very much!!

Labels (2)
0 Kudos
3 Replies

1,181 Views
Yuri
NXP Employee
NXP Employee

Hello,

  Please look at recommendations below how to change the kernel configuration

through menuconfig.

   $ bitbake -c menuconfig linux-imx

This creates a config file in (as an example)

tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.0.35-r33.10/git/.config

This file should be copied to the defconfig location in order to set the changes.

Below is an example of the devconfig location :

  meta-fsl-arm/recipes-kernel/linux/linux-imx-3.0.35/mx6

Then use the commands.

   $ bitbake -c cleansstate linux-imx

   $ bitbake linux-imx

As for configuring the kernel - more details are available on the following community document:

https://community.freescale.com/docs/DOC-95045


Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

1,181 Views
terristewart
Contributor I

Hello Yuri,

I appreciate your response and followed your instructions to configure the kernel and bitbake linux-imx.

$ cd ~/fsl-release-bsp$ source setup-environment built-core-base-disp$ bitbake -c menuconfig linux-imx

I then selected <*> the Micrel devices in menuconfig as follows:Device drivers > Ethernet driver support > Micrel devicesDevice drivers > Network device support> PHY Device Support and infrastructure> Driver for Micrel PHYs

I verified the resulting config file contained CONFIG_PHY_MICREL=y

I copied this config file to ~/fsl-release-bsp/sources/meta-fsl-arm/recipes-kernel/linux/linux-imx-3.10.17/mx6/defconfig

I then 

$bitbake -c cleansstate linux-imx  (verified ~fsl-release/bsp/build-core-base-disp/tmp/work/imx6sxsabresd-poky-linux-gnueabi/linux-imx/3.10.53-r0/git was empty$bitbake linux-imx

The bitbake was successful, but the ~fsl-release/bsp/build-core-base-disp/tmp/work/imx6sxsabresd-poky-linux-gnueabi/linux-imx/3.10.53-r0/defconfig file was new, but did not contain the CONFIG_PHY_MICREL=y and there was no micrel.o file in ~fsl-release/bsp/build-core-base-disp/tmp/work/imx6sxsabresd-poky-linux-gnueabi/linux-imx/3.10.53-r0/git/drivers/net/phy for the micrel.c source file.

I also tried $bitbake core-image-base instead of linux-imx and repeated the process with $bitbake core-image-base after the $bitbake linux-imx.

Any clues...I am really not sure how to configure ...

Thank you very much,Terri tstewart@milestoneconsult.com770-277-9456, ext 103

0 Kudos

1,181 Views
nishad_kamdar
Contributor IV

Hi Terri,

Re: Building kernel L3.10.53 with other defconfigs

Check out this link, this might be the problem that you are facing.

Nishad Kamdar

0 Kudos