Enable CONFIG_UAPI_HEADER_TEST turns out the following build issues
HDRTEST usr/include/linux/mxc_asrc.h
In file included from <command-line>:32:0:
./usr/include/linux/mxc_asrc.h:125:2: error: unknown type name ‘snd_pcm_format_t’
snd_pcm_format_t input_format;
^~~~~~~~~~~~~~~~
./usr/include/linux/mxc_asrc.h:126:2: error: unknown type name ‘snd_pcm_format_t’
snd_pcm_format_t output_format;
^~~~~~~~~~~~~~~~
./usr/include/linux/mxc_asrc.h:134:2: error: unknown type name ‘uint64_t’
uint64_t supported_in_format;
^~~~~~~~
./usr/include/linux/mxc_asrc.h:135:2: error: unknown type name ‘uint64_t’
uint64_t supported_out_format;
But even add the missing/necessary header file, it finally failed too in the end:
HDRTEST usr/include/linux/mxc_asrc.h
In file included from ./usr/include/linux/mxc_asrc.h:23:0,
from <command-line>:32:
./usr/include/sound/asound.h:459:18: error: field ‘trigger_tstamp’ has incomplete type
struct timespec trigger_tstamp; /* time when stream was started/stopped/paused */
^~~~~~~~~~~~~~
./usr/include/sound/asound.h:460:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* reference timestamp */
^~~~~~
./usr/include/sound/asound.h:469:18: error: field ‘audio_tstamp’ has incomplete type
struct timespec audio_tstamp; /* sample counter, wall clock, PHC or on-demand sync'ed */
^~~~~~~~~~~~
./usr/include/sound/asound.h:470:18: error: field ‘driver_tstamp’ has incomplete type
struct timespec driver_tstamp; /* useful in case reference system tstamp is reported with delay */
^~~~~~~~~~~~~
./usr/include/sound/asound.h:472:37: error: invalid application of ‘sizeof’ to incomplete type ‘struct timespec’
unsigned char reserved[52-2*sizeof(struct timespec)]; /* must be filled with zero */
^~~~~~
./usr/include/sound/asound.h:479:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp */
^~~~~~
./usr/include/sound/asound.h:481:18: error: field ‘audio_tstamp’ has incomplete type
struct timespec audio_tstamp; /* from sample counter or wall clock */
^~~~~~~~~~~~
./usr/include/sound/asound.h:651:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp */
^~~~~~
./usr/include/sound/asound.h:763:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp - last update */
^~~~~~
./usr/include/sound/asound.h:813:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp;
^~~~~~
./usr/include/sound/asound.h:956:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp;
^~~~~~
./usr/include/sound/asound.h:957:36: error: invalid application of ‘sizeof’ to incomplete type ‘struct timespec’
unsigned char reserved[128-sizeof(struct timespec)];
This is kernel known issue, just like other fixes as the following, put mxc_asrc.h into the skip-list:
header-test- += sound/asequencer.h
header-test- += sound/asoc.h
header-test- += sound/asound.h
header-test- += sound/compress_offload.h
header-test- += sound/emu10k1.h
header-test- += sound/sfnt_info.h
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 4018355af34d9b25ff7bd4d27960d72b8d304e30)
Enable CONFIG_UAPI_HEADER_TEST turns on the following build issue
./usr/include/linux/ipu.h:167:2: error: unknown type name ‘u32’
u32 x;
^~~
./usr/include/linux/ipu.h:168:2: error: unknown type name ‘u32’
u32 y;
^~~
./usr/include/linux/ipu.h:173:2: error: unknown type name ‘u32’
u32 w;
^~~
./usr/include/linux/ipu.h:174:2: error: unknown type name ‘u32’
u32 h;
^~~
./usr/include/linux/ipu.h:179:2: error: unknown type name ‘u8’
u8 motion; /*see ipu_motion_sel*/
The fix is to use the __u32/__u8 instead and remove the internal definiton
But it finally will result in another failure as the followings:
HDRTEST usr/include/linux/ipu.h
In file included from ./usr/include/linux/ipu.h:29:0,
from <command-line>:32:
./usr/include/linux/videodev2.h:2353:20: error: field ‘timestamp’ has incomplete type
struct timespec timestamp;
This is kernel known issue. The fix is as others by adding the ipu.h to skip-list:
header-test- += linux/v4l2-mediabus.h
header-test- += linux/v4l2-subdev.h
header-test- += linux/videodev2.h
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 24c36527086fff43595bde2822f8277138ebcb55)
Enable CONFIG_UAPI_HEADER_TEST turns out the following build issues:
HDRTEST usr/include/linux/tsn.h
In file included from <command-line>:32:0:
./usr/include/linux/tsn.h:384:2: error: unknown type name ‘__u8’
__u8 admin_state;
^~~~
./usr/include/linux/tsn.h:390:2: error: unknown type name ‘__u32’
__u32 hold_advance;
^~~~~
./usr/include/linux/tsn.h:397:2: error: unknown type name ‘__u32’
__u32 release_advance;
^~~~~
./usr/include/linux/tsn.h:403:2: error: unknown type name ‘__u8’
__u8 preemption_active;
^~~~
./usr/include/linux/tsn.h:412:2: error: unknown type name ‘__u8’
__u8 hold_request;
^~~~
./usr/include/linux/tsn.h:426:2: error: unknown type name ‘__u8’
__u8 delta_bw; /* percentage, 0~100 */
^~~~
./usr/include/linux/tsn.h:427:2: error: unknown type name ‘__u32’
__u32 idleslope;
^~~~~
./usr/include/linux/tsn.h:428:2: error: unknown type name ‘__s32’
__s32 sendslope;
^~~~~
./usr/include/linux/tsn.h:429:2: error: unknown type name ‘__u32’
__u32 maxframesize;
^~~~~
The fix is to add the necessary header file into the tsn.h file
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 328bf99d8b42aca38538b6122878c7a9da9234d0)
Eanble CONFIG_UAPI_HEADER_TEST turns out the following build issues:
HDRTEST usr/include/linux/mxc_v4l2.h
In file included from <command-line>:32:0:
./usr/include/linux/mxc_v4l2.h:52:2: error: unknown type name ‘uint32_t’
uint32_t u_offset;
^~~~~~~~
./usr/include/linux/mxc_v4l2.h:53:2: error: unknown type name ‘uint32_t’
uint32_t v_offset;
^~~~~~~~
./usr/include/linux/mxc_v4l2.h:57:2: error: unknown type name ‘__u32’
__u32 type; /* enum v4l2_buf_type */
^~~~~
The fix is to add the necessary header file into mxc_v4l2.h
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit ca2be4571361d04aa291e0ed0fcb755feba8783a)
Enable CONFIG_UAPI_HEADER_TEST turns out the following build issues:
HDRTEST usr/include/linux/mxc_dsp.h
In file included from <command-line>:32:0:
./usr/include/linux/mxc_dsp.h:82:2: error: C++ style comments are not allowed in ISO C90
//UNIA_CHANNEL_MASK,
^
./usr/include/linux/mxc_dsp.h:82:2: error: (this will be reported only once per input file)
The fix is to use C style comment insteading of C++
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 4c016b8114b3db2bba7ec579c34e248766feac6e)
Enable CONFIG_UAPI_HEADER_TEST or make headers_install result in build issues:
include/uapi/linux/fmd/Peripherals/fm_port_ioctls.h: leak CONFIG_COMPAT to user-space
include/uapi/linux/fmd/Peripherals/fm_pcd_ioctls.h: leak CONFIG_COMPAT to user-space
include/uapi/linux/fmd/Peripherals/fm_ioctls.h: leak CONFIG_COMPAT to user-space
The comments from DN fix of the fmd related failure is to add to the skip-list due to the
historial reasons from DN(Layerscape) drivers - to avoid break the legacy users
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 569d6d3cc2a664de66ee980bd611687f4d785b4e)
Upgrade to mxm5x16210 verison:
- Fixed WPA3 SAE pre-cert requirement where there is no assoc
request from DUT, if EX-AP sends the Auth confirm frame
immediately after Auth commit frame
Reviewed-by: yang.tian <yang.tian@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
(cherry picked from commit: 0a14a53a273aecb7dfb837cf90f15744e893e6bf)
update the noc QoS setting for CPU & VPU on i.MX8MQ.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Jian Li <jian.li@nxp.com>
(cherry picked from commit 45d2dcaecce6d83e5c4a7e9488c651a05b0f05ac)
Config NOC to limit bandwidth to 4GB for both VPU
and CPU to avoid lcdif flickering only when lcdif is enabled.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
(cherry picked from commit 8ab89ebeb94a423792bf588bdf2354c5960d8f13)
The A53 900MHz opp is actually 896MHz when reading back from SCFW, so
use the 896MHz instead of 900MHz to make it accurate enough.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
(cherry picked from commit 58be8bf3e6e8f51ed3a3b8f992baaa9eeaf3516d)
Merge contiguous TCML/U regions into one to avoid load elf files which
has large sections failure.
Reviewed-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Correct LDO3/4OUT_MASK for pca9450 though that's not a real issue on
current i.mx8M family boards with pca9450 pmic since LDO3/4 used as
the default value and kernel never touch it.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
When set_params return error, we should avoid to delete the component
in free function again. This may cause kernel crash.
Check cstream state to avoid such issue.
Signed-off-by: Zhang Peng <peng.zhang_8@nxp.com>
Complete cts value for 32kHz and different pixel clock,
otherwise there is no sound for 32kHz.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Sandor Yu<Sandor.yu@nxp.com>
There have chance to re-enable the eee_ctrl_timer and fire the timer
in napi callback after delete the timer in .stmmac_release(), which
introduces to access eee registers in the timer function after clocks
are disabled then causes system hang.
It is safe to delete the timer after napi disabled and disable lpi mode.
Tested-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Reviewed-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
As the i.MX8MP DDR4 EVK board is running at ND mode, so the clock
frequency of bus & peripherals need to be updated to ND mode setting
accordingly. GIC, NOC & NOC_IO frequency is already configured as
ND mode setting when boot into linux kernel, so skip the configure
for them.
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
when system running at ND mode, the noc, noc_io & gic clock can be sourced
from system PLL1, then system PLL2 will be disable during boot stage. it
seems disabling system PLL2 will lead to system hang due to unknow reason.
As the system PLL1/PLL2 should be used as fixed rate PLL, so simplify the
complexity of clock tree management, change these two PLLs as fixed rate clock.
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
this support is similar as i.MX8MM.
for userspace monitor control of the K-divider dynamically,
we provide two interfaces to userspace: delta_k & pll_parameter
1): delta_k is used to adjust the K divider in PLL based on small
steps;
2): the pll_parameter interface is used for get PLL's current
M-divider, P-divider, S-divider & K-divider setting in PLL register
example for the usage of these two interfaces:
A): Get the current PLL setting of dividers:
root@imx8mmevk:~# cat /sys/kernel/debug/audio_pll_monitor/audio_pll1/pll_parameter
Mdiv: 0x106; Pdiv: 0x2; Sdiv: 0x3; Kdiv: 0x24dd
B): if want to adjust the K-divider by a delta_k '1', then
echo 0x1 > /sys/kernel/debug/audio_pll_monitor/audio_pll1/delta_k;
root@imx8mmevk:~# cat /sys/kernel/debug/audio_pll_monitor/audio_pll1/pll_parameter
Mdiv: 0x106; Pdiv: 0x2; Sdiv: 0x3; Kdiv: 0x24de
C): if want to adjust the K-divider by a delta_k '-1', then
echo -1 > /sys/kernel/debug/audio_pll_monitor/audio_pll1/delta_k;
root@imx8mmevk:~# cat /sys/kernel/debug/audio_pll_monitor/audio_pll1/pll_parameter
Mdiv: 0x106; Pdiv: 0x2; Sdiv: 0x3; Kdiv: 0x24dc
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Tested-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
Using spin_lock_irqsave instead of spin_lock to disable interrupt
when in irq handler to avoid potential race issue.
Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
Using list_del_init instead of list_del to remove list entry from list
Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
Remove redundant code for clean out pending and active list
Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
CHAIN_BUF occupy CHNL_CTRL[25:26], so the mask value should be 0x6000000.
Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
Reviewed-by: Robby Cai <robby.cai@nxp.com>
When DSP has no response with cplay and try to force exit, kernel
met crash. Reason is kernel locks a mutex proxy->lock twice then
kernel crash. Use MU_SendMessageTimeout instead MU_SendMessage
then kernel can release the mutex.
Signed-off-by: Zhang Peng <peng.zhang_8@nxp.com>
correct sdma device name as other socS, otherwise sdma firmware loaded in
Yocto will be failed since its rule is based on '30bd0000.dma-controller'
instead of '30bd0000.sdma' as other socS.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 1d3c451b9703cd7b3b59c25f58bc541f8c30e8ae)
Fix PTR_ERR build warning from below patch:
commit bb9da18bac ("MA-18186 mfd: pca9450: handle EPROBE_DEFER when get pmic_plat_data")
drivers/mfd/pca9450.c:169:25: warning: passing argument 1
of ‘PTR_ERR’ makes pointer from integer without a cast [-Wint-conversion]
169 | if (PTR_ERR(board_info->gpio_intr) != -EPROBE_DEFER)
Signed-off-by: Jindong Yue <jindong.yue@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Add USB PHY tuning of imx8mq/p for USB certification, mainly for eye
diagram test.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit 2ad925d1548144d2ce6cb7301e213ca1a9c326a4)
Add phy tuning result for USB certification, mainly for pass
eye pattern test, 6 parameters involved, details please check
its dt binding doc:
Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.txt
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit 87c832bb437df4a88a6331217ca64f6771ca569f)
Add USB PHY parameters tuning for USB certifications.
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit 4fee6f2d570373d53d83e2c1c76cf8b40326d20a)
Upgrade to mxm5x16207 verison:
- Fixed WPA3 SAE pre-cert requirement where there is no assoc
request from DUT, if EX-AP sends the Auth confirm frame
immediately after Auth commit frame.
Reviewed-by: yang.tian <yang.tian@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
i.MX8QM series MSI also break wireless function and suspend/resume
case since there have MSI interrupt lost. So keep previous behavior
that disable wireless MSI for i.MX8QM series.
Fixes: 6644cc2f3b ("MLK-24939 PCI: only disable MSI for i.MX8 dwc root port")
Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Get card name from model property, which is to align the name
with Linux Fractory.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
The DDR Alias address should be 0x40000000 according to RM, so correct
Reviewed-by: Fugang Duan <fugang.duan@nxp.com>
Reported-by: Terry Lv <terry.lv@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
This patch forwards ipuv3 LCD external port(mxc_lcdif) driver from
imx_4.19.y kernel.
Reviewed-by: Robby Cai <robby.cai@nxp.com>
Signed-off-by: Liu Ying <victor.liu@nxp.com>
The pinctrl settings for LCDIF were wrongly implemented, so correct
them.
Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Acked-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
Even though this panel uses 24bit input data mode, the connector from
8DXL-EVK board uses only 18bit data mode, so need to correct this in
panel driver.
Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Acked-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
Change to max frequency that defined in OD mode for higher performance.
G1: 800M
G2: 700M
VC8000E: 500M
VPU_BUS: 800M
Signed-off-by: Jian Li <jian.li@nxp.com>
Reviewed-by: Zhou Peng <eagle.zhou@nxp.com>
The PLL table count init is missed, then it will lead to
pll set rate failure due.
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
This checks if BT_HS is enabled relecting it on MGMT_SETTING_HS instead
of always reporting it as supported.
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Only sockets will have the chan->data set to an actual sk, channels
like A2MP would have its own data which would likely cause a crash when
calling sk_filter, in order to fix this a new callback has been
introduced so channels can implement their own filtering if necessary.
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This change introduces a wide band speech setting which allows higher
level clients to query the local controller support for wide band speech
as well as set the setting state when the radio is powered off.
Internally, this setting controls if erroneous data reporting is enabled
on the controller.
Signed-off-by: Alain Michaud <alainm@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This patch provides a mechanism for MGMT interface client to query the
capability of the controller to support WBS.
Signed-off-by: Alain Michaud <alainm@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>