[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cdadf72c-0233-91f4-73a5-cee9636d32cc@linaro.org>
Date: Wed, 11 Mar 2020 07:33:38 -0500
From: Alex Elder <elder@...aro.org>
To: Jon Hunter <jonathanh@...dia.com>,
David Miller <davem@...emloft.net>,
Arnd Bergmann <arnd@...db.de>
Cc: Bjorn Andersson <bjorn.andersson@...aro.org>,
Andy Gross <agross@...nel.org>,
Johannes Berg <johannes@...solutions.net>,
Dan Williams <dcbw@...hat.com>,
Evan Green <evgreen@...gle.com>,
Eric Caruso <ejcaruso@...gle.com>,
Susheel Yadav Yadagiri <syadagir@...eaurora.org>,
Chaitanya Pratapa <cpratapa@...eaurora.org>,
Subash Abhinov Kasiviswanathan <subashab@...eaurora.org>,
Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Ohad Ben-Cohen <ohad@...ery.com>,
Siddharth Gupta <sidgup@...eaurora.org>,
netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-arm-msm@...r.kernel.org, linux-soc@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 15/17] soc: qcom: ipa: support build of IPA code
On 3/11/20 5:54 AM, Jon Hunter wrote:
>
> On 06/03/2020 04:28, Alex Elder wrote:
>> Add build and Kconfig support for the Qualcomm IPA driver.
>>
>> Signed-off-by: Alex Elder <elder@...aro.org>
>> ---
>> drivers/net/Kconfig | 2 ++
>> drivers/net/Makefile | 1 +
>> drivers/net/ipa/Kconfig | 19 +++++++++++++++++++
>> drivers/net/ipa/Makefile | 12 ++++++++++++
>> 4 files changed, 34 insertions(+)
>> create mode 100644 drivers/net/ipa/Kconfig
>> create mode 100644 drivers/net/ipa/Makefile
>>
>> diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
>> index 66e410e58c8e..02565bc2be8a 100644
>> --- a/drivers/net/Kconfig
>> +++ b/drivers/net/Kconfig
>> @@ -444,6 +444,8 @@ source "drivers/net/fddi/Kconfig"
>>
>> source "drivers/net/hippi/Kconfig"
>>
>> +source "drivers/net/ipa/Kconfig"
>> +
>> config NET_SB1000
>> tristate "General Instruments Surfboard 1000"
>> depends on PNP
>> diff --git a/drivers/net/Makefile b/drivers/net/Makefile
>> index 65967246f240..94b60800887a 100644
>> --- a/drivers/net/Makefile
>> +++ b/drivers/net/Makefile
>> @@ -47,6 +47,7 @@ obj-$(CONFIG_ETHERNET) += ethernet/
>> obj-$(CONFIG_FDDI) += fddi/
>> obj-$(CONFIG_HIPPI) += hippi/
>> obj-$(CONFIG_HAMRADIO) += hamradio/
>> +obj-$(CONFIG_QCOM_IPA) += ipa/
>> obj-$(CONFIG_PLIP) += plip/
>> obj-$(CONFIG_PPP) += ppp/
>> obj-$(CONFIG_PPP_ASYNC) += ppp/
>> diff --git a/drivers/net/ipa/Kconfig b/drivers/net/ipa/Kconfig
>> new file mode 100644
>> index 000000000000..b8cb7cadbf75
>> --- /dev/null
>> +++ b/drivers/net/ipa/Kconfig
>> @@ -0,0 +1,19 @@
>> +config QCOM_IPA
>> + tristate "Qualcomm IPA support"
>> + depends on ARCH_QCOM && 64BIT && NET
>> + select QCOM_QMI_HELPERS
>> + select QCOM_MDT_LOADER
>> + default QCOM_Q6V5_COMMON
>> + help
>> + Choose Y or M here to include support for the Qualcomm
>> + IP Accelerator (IPA), a hardware block present in some
>> + Qualcomm SoCs. The IPA is a programmable protocol processor
>> + that is capable of generic hardware handling of IP packets,
>> + including routing, filtering, and NAT. Currently the IPA
>> + driver supports only basic transport of network traffic
>> + between the AP and modem, on the Qualcomm SDM845 SoC.
>> +
>> + Note that if selected, the selection type must match that
>> + of QCOM_Q6V5_COMMON (Y or M).
>> +
>> + If unsure, say N.
>> diff --git a/drivers/net/ipa/Makefile b/drivers/net/ipa/Makefile
>> new file mode 100644
>> index 000000000000..afe5df1e6eee
>> --- /dev/null
>> +++ b/drivers/net/ipa/Makefile
>> @@ -0,0 +1,12 @@
>> +# Un-comment the next line if you want to validate configuration data
>> +#ccflags-y += -DIPA_VALIDATE
>> +
>> +obj-$(CONFIG_QCOM_IPA) += ipa.o
>> +
>> +ipa-y := ipa_main.o ipa_clock.o ipa_reg.o ipa_mem.o \
>> + ipa_table.o ipa_interrupt.o gsi.o gsi_trans.o \
>> + ipa_gsi.o ipa_smp2p.o ipa_uc.o \
>> + ipa_endpoint.o ipa_cmd.o ipa_modem.o \
>> + ipa_qmi.o ipa_qmi_msg.o
>> +
>> +ipa-y += ipa_data-sdm845.o ipa_data-sc7180.
Yes, a needed patch defining field_max() is missing. I sent
an updated request to include it in net-next to resolve this
issue.
https://lore.kernel.org/netdev/20200311024240.26834-1-elder@linaro.org/
Thank you for pointing it out.
-Alex
> This patch is also causing build issues on the current -next ...
>
> CC [M] drivers/net/ipa/gsi.o
> In file included from include/linux/build_bug.h:5:0,
> from include/linux/bitfield.h:10,
> from drivers/net/ipa/gsi.c:9:
> drivers/net/ipa/gsi.c: In function ‘gsi_validate_build’:
> drivers/net/ipa/gsi.c:220:39: error: implicit declaration of function ‘field_max’ [-Werror=implicit-function-declaration]
> BUILD_BUG_ON(GSI_RING_ELEMENT_SIZE > field_max(ELEMENT_SIZE_FMASK));
> ^
> include/linux/compiler.h:374:9: note: in definition of macro ‘__compiletime_assert’
> if (!(condition)) \
> ^~~~~~~~~
> include/linux/compiler.h:394:2: note: in expansion of macro ‘_compiletime_assert’
> _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
> ^~~~~~~~~~~~~~~~~~~
> include/linux/build_bug.h:39:37: note: in expansion of macro ‘compiletime_assert’
> #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
> ^~~~~~~~~~~~~~~~~~
> include/linux/build_bug.h:50:2: note: in expansion of macro ‘BUILD_BUG_ON_MSG’
> BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
> ^~~~~~~~~~~~~~~~
> drivers/net/ipa/gsi.c:220:2: note: in expansion of macro ‘BUILD_BUG_ON’
> BUILD_BUG_ON(GSI_RING_ELEMENT_SIZE > field_max(ELEMENT_SIZE_FMASK));
> ^~~~~~~~~~~~
>
> Jon
>
Powered by blists - more mailing lists