[ Upstream commit 7b1a78babd0d2cd27aa07255dee0c2d7ac0f31e3 ]
Fix build errors in soc/fsl/qe/usb.c when QUICC_ENGINE is not set.
This happens when PPC_EP88XC is set, which selects CPM1 & CPM.
When CPM is set, USB_FSL_QE can be set without QUICC_ENGINE
being set. When USB_FSL_QE is set, QE_USB deafults to y, which
causes build errors when QUICC_ENGINE is not set. Making
QE_USB depend on QUICC_ENGINE prevents QE_USB from defaulting to y.
Fixes these build errors:
drivers/soc/fsl/qe/usb.o: in function `qe_usb_clock_set':
usb.c:(.text+0x1e): undefined reference to `qe_immr'
powerpc-linux-ld: usb.c:(.text+0x2a): undefined reference to `qe_immr'
powerpc-linux-ld: usb.c:(.text+0xbc): undefined reference to `qe_setbrg'
powerpc-linux-ld: usb.c:(.text+0xca): undefined reference to `cmxgcr_lock'
powerpc-linux-ld: usb.c:(.text+0xce): undefined reference to `cmxgcr_lock'
Fixes: 5e41486c40
("powerpc/QE: add support for QE USB clocks routing")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/all/202301101500.pillNv6R-lkp@intel.com/
Suggested-by: Michael Ellerman <mpe@ellerman.id.au>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Leo Li <leoyang.li@nxp.com>
Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Nicolas Schier <nicolas@fjasle.eu>
Cc: Qiang Zhao <qiang.zhao@nxp.com>
Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Nicolas Schier <nicolas@jasle.eu>
Signed-off-by: Li Yang <leoyang.li@nxp.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
45 lines
953 B
Plaintext
45 lines
953 B
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# QE Communication options
|
|
#
|
|
|
|
config QUICC_ENGINE
|
|
bool "QUICC Engine (QE) framework support"
|
|
depends on FSL_SOC && PPC32
|
|
select GENERIC_ALLOCATOR
|
|
select CRC32
|
|
help
|
|
The QUICC Engine (QE) is a new generation of communications
|
|
coprocessors on Freescale embedded CPUs (akin to CPM in older chips).
|
|
Selecting this option means that you wish to build a kernel
|
|
for a machine with a QE coprocessor.
|
|
|
|
config UCC_SLOW
|
|
bool
|
|
default y if SERIAL_QE
|
|
help
|
|
This option provides qe_lib support to UCC slow
|
|
protocols: UART, BISYNC, QMC
|
|
|
|
config UCC_FAST
|
|
bool
|
|
default y if UCC_GETH || QE_TDM
|
|
help
|
|
This option provides qe_lib support to UCC fast
|
|
protocols: HDLC, Ethernet, ATM, transparent
|
|
|
|
config UCC
|
|
bool
|
|
default y if UCC_FAST || UCC_SLOW
|
|
|
|
config QE_TDM
|
|
bool
|
|
default y if FSL_UCC_HDLC
|
|
|
|
config QE_USB
|
|
bool
|
|
depends on QUICC_ENGINE
|
|
default y if USB_FSL_QE
|
|
help
|
|
QE USB Controller support
|