user27460468
user27460468

Reputation: 1

Change driver in yocto build imx93

I am a complete newbie to the Yocto world, i am trying to change a driver in yocto.

To build yocto i follow the guide from: https://variwiki.com/index.php?title=Yocto_Build_Release&release=mx93-yocto-mickledore-6.1.36_2.1.0-v2.3 but with langdale -m imx-6.1.1-1.0.1.xml instead of mickledore -m imx-6.1.36-2.1.0.xml.

$ mkdir -p ~/bin
$ curl https://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=~/bin:$PATH
$ mkdir ~/var-fsl-yocto
$ cd ~/var-fsl-yocto
$ repo init -u https://github.com/varigit/variscite-bsp-platform.git -b langdale -m imx-6.1.1-1.0.1.xml
$ repo sync -j$(nproc)
$ cd ~/var-fsl-yocto
$ MACHINE=imx93-var-som DISTRO=fsl-imx-xwayland . var-setup-release.sh build_xwayland
$ cd ~/var-fsl-yocto
$ source setup-environment build_xwayland
$ bitbake fsl-image-gui

with this i getting a working yocto image, now i want to add the driver for RC1337.

I add a new layer var-fsl-yocto/sources/meta-test with following files: layer.conf:

# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"

# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
            ${LAYERDIR}/recipes-*/*/*.bbappend"

BBFILE_COLLECTIONS += "meta-test"
BBFILE_PATTERN_meta-test = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-test = "6"

LAYERDEPENDS_meta-test = "core"
LAYERSERIES_COMPAT_meta-test = "kirkstone langdale"

ds1337.patch:

--- a/arch/arm64/boot/dts/freescale/imx93.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx93.dtsi

@@ -293,17 +293,12 @@
                clock-names = "pclk", "fast_clk", "slow_clk";
                status = "disabled";
            };
-
-           lpi2c1: i2c@44340000 {
-               compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c";
-               reg = <0x44340000 0x10000>;
-               interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
-               clocks = <&clk IMX93_CLK_LPI2C1_GATE>,
-                    <&clk IMX93_CLK_BUS_AON>;
-               clock-names = "per", "ipg";
-               dmas = <&edma1 7 0 0>, <&edma1 8 0 1>;
-               dma-names = "tx","rx";
-               status = "disabled";
+           
+           &i2c1 {
+               rtc: ds1337@68 {
+               compatible = "dallas,ds1337";
+               reg = <0x68>;
+               };
            };
 
            lpi2c2: i2c@44350000 {

rtc.cfg:

CONFIG_RTC_DRV_DS1337=y

linux-variscite_%.bbappend:

FILESEXTRAPATHS:prepend := "${THISDIR}/files:"

SRC_URI += "file://rtc.cfg \
            file://ds1337.patch"

after this i use the following commands:

$ bitbake fsl-image-gui -c cleansstate
$ bitbake fsl-image-gui -c patch

i dont get an Error massage but the file imx93.dtsi dont change.

Like a said i am very new to yocto, so maybe i am an the wrong path?

Upvotes: 0

Views: 91

Answers (1)

Hemant Kumar
Hemant Kumar

Reputation: 21

you should run "bitbake linux-variscite" to build just the patched kernel and dtb first. You can also do a devshell and ensure the patch changes takes place.

Upvotes: 0

Related Questions