This patch introduces linker.ld file specific for ip_k66f board.
It reuses the "common" linker script for other NXP SoCs with defined
NETWORK_RAM_SECTIONS() macro for explicit placement of network
interfaces on ip_k66f board.
grep -A13 net_if_area zephyr/zephyr.map
net_if_area 0x00000000200012a0 0x820 load address 0x0000000000024ac4
0x00000000200012a0 _net_if_list_start = .
*(SORT_BY_ALIGNMENT(._net_if.static.dts*))
._net_if.static.dts_ord_51
0x00000000200012a0 0x208 zephyr/libzephyr.a(eth_mcux.c.obj)
*(SORT_BY_NAME(SORT_BY_ALIGNMENT(._net_if.static.dsa_slave*)))
._net_if.static.dsa_slave_port_DT_N_S_soc_S_spi_4002d000_S_dsa_0_S_lan_1
0x00000000200014a8 0x208 zephyr/libzephyr.a(dsa_ksz8794.c.obj)
._net_if.static.dsa_slave_port_DT_N_S_soc_S_spi_4002d000_S_dsa_0_S_lan_2
0x00000000200016b0 0x208 zephyr/libzephyr.a(dsa_ksz8794.c.obj)
._net_if.static.dsa_slave_port_DT_N_S_soc_S_spi_4002d000_S_dsa_0_S_lan_3
0x00000000200018b8 0x208 zephyr/libzephyr.a(dsa_ksz8794.c.obj)
0x0000000020001ac0 _net_if_list_end = .
As a result the eth0 (master DSA interface) is explicitly placed as the
first one (with the 'dts_ord_51' automatically assigned name) followed
by lan{123} interfaces (with 'dsa_slave_port' name assigned in
dsa_ksz8794.c).
After this patch network interfaces are explicitly placed in correct
order, so 'net_if_get_by_index()' will work correctly.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
|
||
|---|---|---|
| .. | ||
| doc | ||
| support | ||
| board.cmake | ||
| CMakeLists.txt | ||
| ip_k66f_defconfig | ||
| ip_k66f.dts | ||
| ip_k66f.yaml | ||
| Kconfig.board | ||
| Kconfig.defconfig | ||
| linker.ld | ||
| pinmux.c | ||