1 # SPDX-License-Identifier: GPL-2.0-only
3 # Copyright (C) 2007-2023 OpenWrt.org
5 include $(TOPDIR
)/rules.mk
7 PKG_NAME
:=ixp4xx-microcode
11 PKG_SOURCE
:=IPL_ixp400NpeLibraryWithCrypto-2_4.zip
12 PKG_SOURCE_URL
:=http
://downloads.openwrt.org
/sources
13 PKG_HASH
:=1b1170d0657847248589d946048c0aeaa9cd671966fc5bec5933283309485eaa
17 include $(INCLUDE_DIR
)/package.mk
19 # Ethernet or WAN support, pick one
20 define Package
/ixp4xx-microcode-ethernet
23 TITLE
:=IXP4xx ethernet firmware
24 DEPENDS
:=@TARGET_ixp4xx
26 define Package
/ixp4xx-microcode-wan
29 TITLE
:=IXP4xx WAN firmware
30 DEPENDS
:=@TARGET_ixp4xx
33 define Package
/ixp4xx-microcode-ethernet
/description
34 This package contains the microcode needed to use the network engines in
35 IXP4xx CPUs for ethernet on
all three NPEs.
37 define Package
/ixp4xx-microcode-wan
/description
38 This package contains the microcode needed to use the network engines in
39 IXP4xx CPUs for ethernet on NPE-A and NPE-B and WAN
(HSS
) on NPE-C.
43 rm -rf
$(PKG_BUILD_DIR
)
44 mkdir
-p
$(PKG_BUILD_DIR
)
45 unzip
-d
$(PKG_BUILD_DIR
)/ $(DL_DIR
)/$(PKG_SOURCE
)
46 mv
$(PKG_BUILD_DIR
)/ixp400_xscale_sw
/src
/npeDl
/IxNpeMicrocode.c
$(PKG_BUILD_DIR
)/
47 rm -rf
$(PKG_BUILD_DIR
)/ixp400_xscale_sw
48 $(CP
) .
/src
/* $(PKG_BUILD_DIR
)/
52 (cd
$(PKG_BUILD_DIR
); \
53 $(HOSTCC
) -Wall
-I
$(STAGING_DIR_HOST
)/include IxNpeMicrocode.c
-o IxNpeMicrocode
; \
54 .
/IxNpeMicrocode
-be \
58 define Package
/ixp4xx-microcode-ethernet
/install
59 $(INSTALL_DIR
) $(1)/lib
/firmware
60 $(INSTALL_DIR
) $(1)/usr
/share
/doc
61 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-A
$(1)/lib
/firmware
/
62 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-B
$(1)/lib
/firmware
/
63 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-C
$(1)/lib
/firmware
/
64 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/LICENSE.IPL
$(1)/usr
/share
/doc
/
66 define Package
/ixp4xx-microcode-wan
/install
67 $(INSTALL_DIR
) $(1)/lib
/firmware
68 $(INSTALL_DIR
) $(1)/usr
/share
/doc
69 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-A-HSS
$(1)/lib
/firmware
/
70 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-B
$(1)/lib
/firmware
/
71 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/NPE-C
$(1)/lib
/firmware
/
72 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/LICENSE.IPL
$(1)/usr
/share
/doc
/
76 $(eval
$(call BuildPackage
,ixp4xx-microcode-ethernet
))
77 $(eval
$(call BuildPackage
,ixp4xx-microcode-wan
))