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!!
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!
-----------------------------------------------------------------------------------------------------------------------
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
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