Hello @DRAVE,
The guide you mention does not provide steps to build the base BSP, instead it provides steps to build the GoldVIP BSP which is very different from the base one. As I mentioned if you use the GoldVIP you have to also flash the M7_0 and use an special bootloader to run a multicore application, this can get quite complicated and time consuming, if you do not require using the GoldVIP, you can download the Yocto configuration for the latest base BSP, which is BSP43 ,in:
https://github.com/nxp-auto-linux/auto_yocto_bsp/tree/release/bsp43.0
In the readme you can see the steps to build the image, please follow the steps to get fsl-image-auto, once you build it you should get a file with a name similar to this: .../build_s32g274ardb2/tmp/deploy/images/s32g274ardb2/fsl-image-base-s32g274ardb2-20241111184159.rootfs.sdcard, this is the file you should flash in your SD card.
Once you boot this image you can ping your windows computer following these steps:
- Using the same ethernet port you shared, connect the other end of the cable directly to your Windows PC.
- Since you are not using a router/modem, you need to configure the IP of both devices statically
- For windows (you will need admin access):
- Enter Control Panel
- Click on Network and Internet
- Click on Network and Sharing Center
- Click on the ethernet network connected to your board, for me it is Ethernet 2
- Now you will see the following windows from left to right, click on Propieties, then on Internet Protocol version 4 (TCP/IPv4), then on Properties, in the last window configure the IP address and Subnet mask as in the image:
- Press ok in all windows. Now the IP address of your PC is configured.
- For the Linux on your board please run the following commands:
- You can check the configuration of both devices in their respective terminals by running the following commands:
- In windows you should see your config in Ethernet adapter:
- In linux, you should see it in the pfe0 device:
root@s32g399ardb3:~# ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether ae:4e:a3:82:15:b0 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 55 base 0x6000
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 82 bytes 6220 (6.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 82 bytes 6220 (6.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
pfe0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::204:9fff:febe:ef00 prefixlen 64 scopeid 0x20<link>
ether 00:04:9f:be:ef:00 txqueuelen 1000 (Ethernet)
RX packets 22 bytes 1012 (1012.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 18 bytes 2582 (2.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x46000000-46ffffff
pfe1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 00:04:9f:be:ef:01 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x46000000-46ffffff
pfe2: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 00:04:9f:be:ef:02 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x46000000-46ffffff
root@s32g399ardb3:~# ifconfig pfe0
pfe0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::204:9fff:febe:ef00 prefixlen 64 scopeid 0x20<link>
ether 00:04:9f:be:ef:00 txqueuelen 1000 (Ethernet)
RX packets 57 bytes 2622 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 20 bytes 2977 (2.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x46000000-46ffffff
- Finally you can ping your devices IP:
- Windows -> linux
PS C:\Users\user> ping 192.168.1.50
Pinging 192.168.1.50 with 32 bytes of data:
Reply from 192.168.1.50: bytes=32 time<1ms TTL=128
Reply from 192.168.1.50: bytes=32 time<1ms TTL=128
Reply from 192.168.1.50: bytes=32 time<1ms TTL=128
Reply from 192.168.1.50: bytes=32 time<1ms TTL=128
Ping statistics for 192.168.1.50:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
- Linux -> windows
root@s32g399ardb3:~# ping 192.168.1.50
PING 192.168.1.50 (192.168.1.50) 56(84) bytes of data.
64 bytes from 192.168.1.50: icmp_seq=1 ttl=128 time=1.27 ms
64 bytes from 192.168.1.50: icmp_seq=2 ttl=128 time=0.617 ms
64 bytes from 192.168.1.50: icmp_seq=3 ttl=128 time=0.701 ms
64 bytes from 192.168.1.50: icmp_seq=4 ttl=128 time=0.721 ms
^C
--- 192.168.1.50 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3049ms
rtt min/avg/max/mdev = 0.617/0.826/1.266/0.256 ms
Please note that you can also get a precompiled BSP43 in the NXP FlexNet page:
- Sign in to your NXP account (NXP Semiconductors)
- Click on My NXP Account (top-right) and click on Software Licensing and Support under the Licensing section within the window it opens.
- This will redirect you to another page. In this new page, select the option View Accounts under the Software accounts section.
- This will again redirect you to another page. On this page, you should see an Automotive SW - S32G - Linux BSP (Cortex-A53) option, click on it.
- Now you should be able to see all the BSP versions available, click on SW32G3 Linux BSP version 43.0.0.
- Accept the Software Terms and Conditions, now you should be able to see all the documents related to the BSP, you can check the User manual for more detailed information about the features of the BSP. In the .tgz file you will find all the precompiled images.
Please let me know if this information solved your question.