This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux: mcasp8 has no mclk

Other Parts Discussed in Thread: TLV320AIC3106

Tool/software: Linux

Hi all,

Environment : Linux kernel version 4.4.84.  Mcasp8 instead of mcasp3 as a communication for codec. There is no MCLK signal in the result.Here's my configuration,plase help me check. Thanks.

sound0: sound0 {
compatible = "simple-audio-card";
simple-audio-card,name = "DRA7xx-jamr3";

simple-audio-card,format = "dsp_b";
simple-audio-card,bitclock-master = <&jamr3_sound_master>;
simple-audio-card,frame-master = <&jamr3_sound_master>;
simple-audio-card,bitclock-inversion;

jamr3_sound_master: simple-audio-card,cpu {
sound-dai = <&mcasp8>;
system-clock-frequency = <11289600>;
};

simple-audio-card,codec {
sound-dai = <&tlv320aic3106>;
clocks = <&atl_clkin2_ck>;
};
};


&atl {
assigned-clocks = <&abe_dpll_sys_clk_mux>,
<&atl_gfclk_mux>,
<&dpll_abe_ck>,
<&dpll_abe_m2x2_ck>,
<&atl_clkin1_ck>,
<&atl_clkin2_ck>;
assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
assigned-clock-rates = <0>, <0>, <180633600>, <361267200>,
<11289600>, <11289600>;

status = "okay";

atl2 {
bws = <DRA7_ATL_WS_MCASP2_FSX>;
aws = <DRA7_ATL_WS_MCASP8_FSX>;
};

};


&mcasp8 {
#sound-dai-cells = <0>;

assigned-clocks = <&mcasp8_ahclkx_mux>;
assigned-clock-parents = <&atl_clkin2_ck>;

status = "okay";

op-mode = <0>; /* MCASP_IIS_MODE */
tdm-slots = <2>;
/* 4 serializer */
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
1 2 0 0
>;
tx-num-evt = <32>;
rx-num-evt = <32>;

shared-dai;
};

  • Your dts settings look good. Is the MCLK signal that you probed sourced from ATL_CLK2?

    Did you set the McASP8 and ATL_CLK2 pinmux accordingly? They're done in u-boot (i.e. board/ti/dra7xx/mux_data.h).
  • Hi,
    I have tried other ATL_CLKxxx. Only ATL_CLK2 can start normally,others will cause abnormal problems.I have setted the McASP8 and ATL_CLK2 pinmux. If I change "simple-audio-card, format" = "dsp_b"" to "simple-audio-card, format =" I2S ""; BCLK can have an output clock.
  • Is this still using tlv320aic3x codec driver? Please check for in your boot log and see if there is any McASP or audio codec error/warning messages. McASP as well as tlv320aic3x drivers support DSP_B and I2S format.
  • Hi,
    We do not use tlv320aic3x. Our codec is NAU88C22. Our drive code is a reference to the tlv320aic3x driver. NAU88C22 does not support DSP_B, support I2S format.
  • Well, then you must use I2S format. You shouldn't need the bitclock-inversion dts property for I2S mode.
  • Hi,

    Why don't  have  MCLK? The codec NAU88C22 needs MCLK. Is there anything wrong with it?

  • Continue using I2S mode and try changing C23's pinmux settings from mcasp8_ahclkx (muxmode 4) to atl_clk3 (muxmode 5). Also, in your dts file, change ATL clk2 to clk3 (i.e. atl_clkin2_ck -> atl_clkin3_ck, atl2 -> atl3).

  • Hi,

    According to your modification, kenrel starts an exception and halt. As follows:

    &atl {
    assigned-clocks = <&abe_dpll_sys_clk_mux>,
    <&atl_gfclk_mux>,
    <&dpll_abe_ck>,
    <&dpll_abe_m2x2_ck>,
    <&atl_clkin0_ck>,
    <&atl_clkin1_ck>,
    <&atl_clkin2_ck>,
    <&atl_clkin3_ck>;
    assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>;
    assigned-clock-rates = <0>, <0>, <180633600>, <361267200>,
    <11289600>, <11289600>, <11289600>, <11289600>;

    status = "okay";

    atl2 {
    bws = <DRA7_ATL_WS_MCASP2_FSX>;
    aws = <DRA7_ATL_WS_MCASP3_FSX>;
    };

    };

    &atl {
    atl3 {
    bws = <DRA7_ATL_WS_MCASP2_FSX>;
    aws = <DRA7_ATL_WS_MCASP8_FSX>;
    };
    };


    &mcasp8 {
    #sound-dai-cells = <0>;

    assigned-clocks = <&mcasp8_ahclkx_mux>;
    assigned-clock-parents = <&atl_clkin3_ck>;

    status = "okay";

    op-mode = <0>; /* MCASP_IIS_MODE */
    tdm-slots = <2>;
    /* 4 serializer */
    serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
    1 2 0 0
    >;
    tx-num-evt = <32>;
    rx-num-evt = <32>;

    shared-dai;
    };



    [ 2.338436] omap_hwmod: mcasp8: _wait_target_ready failed: -16
    [ 2.344317] Unhandled fault: asynchronous external abort (0x1211) at 0x00000000
    [ 2.344323] ------------[ cut here ]------------
    [ 2.344335] WARNING: CPU: 0 PID: 6 at drivers/bus/omap_l3_noc.c:147 l3_interrupt_handler+0x25c/0x368()
    [ 2.344340] 44000000.ocp:L3 Custom Error: MASTER MPU TARGET L4_PER2_P3 (Read): Data Access in User mode during Functional access
    [ 2.344344] Modules linked in:
    [ 2.344351] CPU: 0 PID: 6 Comm: kworker/u4:0 Tainted: G W 4.4.84-svn28400 #3
    [ 2.344354] Hardware name: Generic DRA74X (Flattened Device Tree)
    [ 2.344363] Workqueue: kmmcd mmc_rescan
    [ 2.344367] Backtrace:
    [ 2.344382] [<c00131d4>] (dump_backtrace) from [<c00133d0>] (show_stack+0x18/0x1c)
    [ 2.344393] r7:c02de328 r6:20000193 r5:00000000 r4:c093d1d0
    [ 2.344403] [<c00133b8>] (show_stack) from [<c02b1ec8>] (dump_stack+0x8c/0xa0)
    [ 2.344411] [<c02b1e3c>] (dump_stack) from [<c0035068>] (warn_slowpath_common+0x88/0xb8)
    [ 2.344421] r7:c02de328 r6:00000093 r5:00000009 r4:c2c8fb20
    [ 2.344427] [<c0034fe0>] (warn_slowpath_common) from [<c00350d0>] (warn_slowpath_fmt+0x38/0x40)
    [ 2.344438] r8:00000017 r7:c0832264 r6:00000002 r5:c0832324 r4:c08323c8
    [ 2.344445] [<c003509c>] (warn_slowpath_fmt) from [<c02de328>] (l3_interrupt_handler+0x25c/0x368)
    [ 2.344451] r3:c2dec7c0 r2:c08323c8
    [ 2.344454] r4:80080003
    [ 2.344465] [<c02de0cc>] (l3_interrupt_handler) from [<c0080950>] (handle_irq_event_percpu+0xb4/0x160)
    [ 2.344477] r10:c096b5cb r9:c2ddd300 r8:00000017 r7:00000000 r6:00000000 r5:c2ddd360
    [ 2.344480] r4:c2deccc0
    [ 2.344489] [<c008089c>] (handle_irq_event_percpu) from [<c0080a3c>] (handle_irq_event+0x40/0x64)
    [ 2.344500] r10:00000000 r9:00000001 r8:c2c08000 r7:00000000 r6:c0925e44 r5:c2ddd360
    [ 2.344503] r4:c2ddd300
    [ 2.344511] [<c00809fc>] (handle_irq_event) from [<c0083d80>] (handle_fasteoi_irq+0xc0/0x194)
    [ 2.344521] r7:00000000 r6:c0925e44 r5:c2ddd360 r4:c2ddd300
    [ 2.344528] [<c0083cc0>] (handle_fasteoi_irq) from [<c007ff7c>] (generic_handle_irq+0x2c/0x3c)
    [ 2.344537] r7:00000000 r6:00000000 r5:00000017 r4:c091a424
    [ 2.344545] [<c007ff50>] (generic_handle_irq) from [<c0080254>] (__handle_domain_irq+0x64/0xbc)
    [ 2.344553] [<c00801f0>] (__handle_domain_irq) from [<c000948c>] (gic_handle_irq+0x40/0x7c)
    [ 2.344563] r9:00000001 r8:fa213000 r7:fa212000 r6:c2c8fce0 r5:fa21200c r4:c09208ec
    [ 2.344569] [<c000944c>] (gic_handle_irq) from [<c0013ec0>] (__irq_svc+0x40/0x74)
    [ 2.344573] Exception stack(0xc2c8fce0 to 0xc2c8fd28)
    [ 2.344579] fce0: 09e1bfd7 00000000 df54e710 c04f0bd4 c09a1428 00001803 09e1afc6 066665b0
    [ 2.344585] fd00: c2c8fde0 00000001 00000000 c2c8fd3c c2c8fd40 c2c8fd30 c0016f30 c04f0be8
    [ 2.344587] fd20: a0000013 ffffffff
    [ 2.344599] r9:00000001 r8:c2c8fde0 r7:c2c8fd14 r6:ffffffff r5:a0000013 r4:c04f0be8
    [ 2.344609] [<c04f0bd4>] (arch_counter_get_cntvct) from [<c0016f30>] (arch_timer_read_counter_long+0x1c/0x20)
    [ 2.344616] [<c0016f14>] (arch_timer_read_counter_long) from [<c02afc98>] (__timer_delay+0x54/0x64)
    [ 2.344622] [<c02afc44>] (__timer_delay) from [<c02afcd0>] (__timer_const_udelay+0x28/0x2c)
    [ 2.344631] r7:066665b0 r6:c093d1b8 r5:c26fc000 r4:0000014f
    [ 2.344640] [<c02afca8>] (__timer_const_udelay) from [<c04d3a64>] (__mmc_start_request+0x88/0xdc)
    [ 2.344649] [<c04d39dc>] (__mmc_start_request) from [<c04d3bb0>] (mmc_start_request+0xf8/0x120)
    [ 2.344659] r9:00000001 r8:00000000 r7:c2c8fe9f r6:c26fc000 r5:c26fc000 r4:c2c8fde0
    [ 2.344669] [<c04d3ab8>] (mmc_start_request) from [<c04d3c70>] (__mmc_start_req+0x50/0x70)
    [ 2.344674] r5:c2c8fdf0 r4:c2c8fde0
    [ 2.344680] [<c04d3c20>] (__mmc_start_req) from [<c04d4220>] (mmc_wait_for_cmd+0x60/0x8c)
    [ 2.344689] r7:c2c8fe9f r6:00000000 r5:c26fc000 r4:c2c8fe2c
    [ 2.344697] [<c04d41c0>] (mmc_wait_for_cmd) from [<c04dec0c>] (mmc_io_rw_direct_host+0x9c/0x138)
    [ 2.344705] r6:c26fc000 r5:00000c00 r4:00000c00
    [ 2.344713] [<c04deb70>] (mmc_io_rw_direct_host) from [<c04df0dc>] (sdio_reset+0x2c/0x64)
    [ 2.344725] r10:c2c90000 r9:00000000 r8:c06e1fcc r7:c06e1fc0 r6:c26fc000 r5:00061a80
    [ 2.344728] r4:c26fc000
    [ 2.344735] [<c04df0b0>] (sdio_reset) from [<c04d67e8>] (mmc_rescan+0x274/0x318)
    [ 2.344739] r4:c26fc258
    [ 2.344748] [<c04d6574>] (mmc_rescan) from [<c004a3dc>] (process_one_work+0x124/0x3f4)
    [ 2.344759] r9:00000000 r8:c2f33300 r7:00000000 r6:c2c90000 r5:c2c5df00 r4:c26fc258
    [ 2.344767] [<c004a2b8>] (process_one_work) from [<c004a6f8>] (worker_thread+0x4c/0x524)
    [ 2.344778] r10:c2c90000 r9:c2c5df00 r8:00000088 r7:c2c8e000 r6:c2c90014 r5:c2c5df18
    [ 2.344782] r4:c2c90000
    [ 2.344790] [<c004a6ac>] (worker_thread) from [<c0050230>] (kthread+0x100/0x118)
    [ 2.344801] r10:00000000 r9:00000000 r8:c004a6ac r7:c2c5df00 r6:c2c8e000 r5:c2c5f940
    [ 2.344805] r4:00000000
    [ 2.344812] [<c0050130>] (kthread) from [<c000fb88>] (ret_from_fork+0x14/0x2c)
    [ 2.344822] r8:00000000 r7:00000000 r6:00000000 r5:c0050130 r4:c2c5f940
    [ 2.344825] ---[ end trace a10f15395ee1ec20 ]---
    [ 2.730840] mmc1: MAN_BKOPS_EN bit is not set
    [ 2.736295] mmc1: mmc_select_hs200 failed, error -74
    [ 2.736298] : switch to mmc1 failed
    [ 2.738066] mmc1: new MMC card at address 0001
    [ 2.748603] mmcblk0: mmc1:0001 MMC04G 3.57 GiB
    [ 2.758864] mmcblk0boot0: mmc1:0001 MMC04G partition 1 8.00 MiB
    [ 2.769117] mmcblk0boot1: mmc1:0001 MMC04G partition 2 8.00 MiB
    [ 2.828935] pgd = c0003000
    [ 2.831651] [00000000] *pgd=80000080004003, *pmd=00000000
    [ 2.837093] Internal error: : 1211 [#1] PREEMPT SMP ARM
    [ 2.842339] Modules linked in:
    [ 2.845416] CPU: 1 PID: 1 Comm: swapper/0 Tainted: G W 4.4.84-svn28400 #3
    [ 2.853365] Hardware name: Generic DRA74X (Flattened Device Tree)
    [ 2.859484] task: c2c78000 ti: c2c72000 task.ti: c2c72000
    [ 2.864912] PC is at __pm_runtime_idle+0x24/0x84
    [ 2.869555] LR is at davinci_mcasp_probe+0xa80/0xbe8
    [ 2.874542] pc : [<c03e8320>] lr : [<c054e768>] psr: 20000013
    [ 2.874542] sp : c2c73d10 ip : c2c73d30 fp : c2c73d2c
    [ 2.886069] r10: 00000000 r9 : 00000000 r8 : 00000000
    [ 2.891315] r7 : c2e47e10 r6 : 00000000 r5 : 00000005 r4 : c2e47e10
    [ 2.897869] r3 : c2e47ed8 r2 : 00000000 r1 : 00000005 r0 : c2e47e10
    [ 2.904424] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
    [ 2.911764] Control: 30c5387d Table: 80003000 DAC: 55555555
    [ 2.917533] Process swapper/0 (pid: 1, stack limit = 0xc2c72210)
    [ 2.923564] Stack: (0xc2c73d10 to 0xc2c74000)
    [ 2.927941] 3d00: c270a810 c2cb9110 00000000 c2e47e10
    [ 2.936154] 3d20: c2c73dc4 c2c73d30 c054e768 c03e8308 c2c73d50 c0182f10 c0874840 c0874830
    [ 2.944367] 3d40: 00000001 00000000 c2c73d6c 00000020 c31b21a4 00000002 0000008e 00000001
    [ 2.952580] 3d60: c2c73d8c c270eaa0 00000000 c270ebe0 c2e4d1e0 c083faf8 00000001 00000000
    [ 2.960793] 3d80: c2c73db4 c2c73d90 c01856bc c0181ed0 c2e47e10 00000000 c2e47e18 c09a9794
    [ 2.969005] 3da0: c2e47e10 c0961f74 fffffdfb 00000000 c08c9600 00000000 c2c73de4 c2c73dc8
    [ 2.977219] 3dc0: c03e0784 c054dcf4 c09a9794 c2e47e10 00000000 c0961f74 c2c73e0c c2c73de8
    [ 2.985432] 3de0: c03ded0c c03e073c c2e47e10 c0961f74 c2e47e44 00000000 000000aa c08c9600
    [ 2.993645] 3e00: c2c73e2c c2c73e10 c03dee94 c03deb14 00000000 c0961f74 c03dee00 00000000
    [ 3.001858] 3e20: c2c73e54 c2c73e30 c03dcf94 c03dee0c c2c9715c c2e4b3b4 c2c97170 c0961f74
    [ 3.010073] 3e40: c2cb9e80 c094d850 c2c73e64 c2c73e58 c03de5f8 c03dcf30 c2c73e8c c2c73e68
    [ 3.018284] 3e60: c03de234 c03de5e0 c087c010 c2c73e78 c0961f74 c08f9b08 c09236f0 c2cb7b80
    [ 3.026497] 3e80: c2c73ea4 c2c73e90 c03df634 c03de098 c094d850 c08f9b08 c2c73ebc c2c73ea8
    [ 3.034709] 3ea0: c03e06ac c03df5c0 c09236f0 c08f9b08 c2c73ecc c2c73ec0 c08f9b24 c03e0670
    [ 3.042922] 3ec0: c2c73f4c c2c73ed0 c000982c c08f9b14 c2c73ef4 c2c73ee0 c08c961c c02b8e1c
    [ 3.051134] 3ee0: c3fff700 c0698d7c c2c73f4c c2c73ef8 c004f954 c08c960c c2c73f34 c080da70
    [ 3.059347] 3f00: c080dabc c080d464 00000006 00000006 00000000 c08c5e88 c085b468 00000000
    [ 3.067560] 3f20: 00000478 c096e000 c096e000 c0917f20 c090a834 000000aa c08c9600 00000007
    [ 3.075772] 3f40: c2c73f94 c2c73f50 c08c9f68 c00097a0 00000006 00000006 00000000 c08c9600
    [ 3.083985] 3f60: c0133094 c08c5e88 c2c73f70 c096e000 c0672b08 00000000 00000000 00000000
    [ 3.092198] 3f80: 00000000 00000000 c2c73fac c2c73f98 c0672b20 c08c9da0 00000000 c0672b08
    [ 3.100411] 3fa0: 00000000 c2c73fb0 c000fb88 c0672b14 00000000 00000000 00000000 00000000
    [ 3.108624] 3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    [ 3.116837] 3fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
    [ 3.125045] Backtrace:
    [ 3.127516] [<c03e82fc>] (__pm_runtime_idle) from [<c054e768>] (davinci_mcasp_probe+0xa80/0xbe8)
    [ 3.136338] r7:c2e47e10 r6:00000000 r5:c2cb9110 r4:c270a810
    [ 3.142063] [<c054dce8>] (davinci_mcasp_probe) from [<c03e0784>] (platform_drv_probe+0x54/0xb8)
    [ 3.150796] r10:00000000 r9:c08c9600 r8:00000000 r7:fffffdfb r6:c0961f74 r5:c2e47e10
    [ 3.158701] r4:c09a9794
    [ 3.161256] [<c03e0730>] (platform_drv_probe) from [<c03ded0c>] (driver_probe_device+0x204/0x2f8)
    [ 3.170163] r7:c0961f74 r6:00000000 r5:c2e47e10 r4:c09a9794
    [ 3.175883] [<c03deb08>] (driver_probe_device) from [<c03dee94>] (__driver_attach+0x94/0x98)
    [ 3.184354] r9:c08c9600 r8:000000aa r7:00000000 r6:c2e47e44 r5:c0961f74 r4:c2e47e10
    [ 3.192180] [<c03dee00>] (__driver_attach) from [<c03dcf94>] (bus_for_each_dev+0x70/0xa4)
    [ 3.200389] r7:00000000 r6:c03dee00 r5:c0961f74 r4:00000000
    [ 3.206107] [<c03dcf24>] (bus_for_each_dev) from [<c03de5f8>] (driver_attach+0x24/0x28)
    [ 3.214141] r6:c094d850 r5:c2cb9e80 r4:c0961f74
    [ 3.218806] [<c03de5d4>] (driver_attach) from [<c03de234>] (bus_add_driver+0x1a8/0x220)
    [ 3.226845] [<c03de08c>] (bus_add_driver) from [<c03df634>] (driver_register+0x80/0x100)
    [ 3.234968] r7:c2cb7b80 r6:c09236f0 r5:c08f9b08 r4:c0961f74
    [ 3.240686] [<c03df5b4>] (driver_register) from [<c03e06ac>] (__platform_driver_register+0x48/0x50)
    [ 3.249768] r5:c08f9b08 r4:c094d850
    [ 3.253380] [<c03e0664>] (__platform_driver_register) from [<c08f9b24>] (davinci_mcasp_driver_init+0x1c/0x20)
    [ 3.263333] r5:c08f9b08 r4:c09236f0
    [ 3.266944] [<c08f9b08>] (davinci_mcasp_driver_init) from [<c000982c>] (do_one_initcall+0x98/0x1e4)
    [ 3.276038] [<c0009794>] (do_one_initcall) from [<c08c9f68>] (kernel_init_freeable+0x1d4/0x268)
    [ 3.284771] r10:00000007 r9:c08c9600 r8:000000aa r7:c090a834 r6:c0917f20 r5:c096e000
    [ 3.292675] r4:c096e000
    [ 3.295233] [<c08c9d94>] (kernel_init_freeable) from [<c0672b20>] (kernel_init+0x18/0xf4)
    [ 3.303443] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c0672b08
    [ 3.311346] r4:c096e000
    [ 3.313900] [<c0672b08>] (kernel_init) from [<c000fb88>] (ret_from_fork+0x14/0x2c)
    [ 3.321499] r5:c0672b08 r4:00000000
    [ 3.325106] Code: e1a04000 0a00000a f57ff05b e28030c8 (f593f000)
    [ 3.331228] ---[ end trace a10f15395ee1ec21 ]---
    [ 3.335947] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
    [ 3.335947]
    [ 3.336550] mmcblk0: p1 p2 p3
    [ 3.336886] mmcblk0: p3 size 8189952 extends beyond EOD, truncated
    [ 3.354385] CPU0: stopping
    [ 3.357107] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G D W 4.4.84-svn28400 #3
    [ 3.365056] Hardware name: Generic DRA74X (Flattened Device Tree)
    [ 3.371172] Backtrace:
    [ 3.373646] [<c00131d4>] (dump_backtrace) from [<c00133d0>] (show_stack+0x18/0x1c)
    [ 3.381246] r7:c091fef0 r6:20000193 r5:00000000 r4:c093d1d0
    [ 3.386968] [<c00133b8>] (show_stack) from [<c02b1ec8>] (dump_stack+0x8c/0xa0)
    [ 3.394225] [<c02b1e3c>] (dump_stack) from [<c0016520>] (handle_IPI+0x184/0x198)
    [ 3.401649] r7:c091fef0 r6:00000000 r5:00000000 r4:c091a424
    [ 3.407368] [<c001639c>] (handle_IPI) from [<c00094c4>] (gic_handle_irq+0x78/0x7c)
    [ 3.414966] r7:fa212000 r6:c091fef0 r5:fa21200c r4:c09208ec
    [ 3.420683] [<c000944c>] (gic_handle_irq) from [<c0013ec0>] (__irq_svc+0x40/0x74)
    [ 3.428197] Exception stack(0xc091fef0 to 0xc091ff38)
    [ 3.433270] fee0: 00000001 00000000 00000000 c0020980
    [ 3.441482] ff00: c091e000 c09204ac 00000000 00000000 c091ff60 c067b21c c092050c c091ff4c
    [ 3.449693] ff20: c091ff50 c091ff40 c0010614 c0010618 60000013 ffffffff
    [ 3.456332] r9:c067b21c r8:c091ff60 r7:c091ff24 r6:ffffffff r5:60000013 r4:c0010618
    [ 3.464161] [<c00105d8>] (arch_cpu_idle) from [<c0071190>] (default_idle_call+0x28/0x34)
    [ 3.472291] [<c0071168>] (default_idle_call) from [<c00713f0>] (cpu_startup_entry+0x200/0x260)
    [ 3.480944] [<c00711f0>] (cpu_startup_entry) from [<c0672b04>] (rest_init+0x90/0x94)
    [ 3.488716] r7:00000000
    [ 3.491273] [<c0672a74>] (rest_init) from [<c08c9d88>] (start_kernel+0x400/0x40c)
    [ 3.498784] r5:c096e000 r4:c096e040
    [ 3.502392] [<c08c9988>] (start_kernel) from [<80008090>] (0x80008090)
    [ 3.508945] r10:00000000 r9:412fc0f2 r8:80007000 r7:c0924b38 r6:c090aa24 r5:c0920484
    [ 3.516846] r4:c096e214
    [ 3.519401] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
    [ 3.519401]
  • The dts changes seem correct. Please look for any ATL errors in the boot log. I believe the external abort happened because the ATL clock fed into McASP is not running.

    For ATL clk3 to be active, the value of register at address 0x4843C390 must be 1.

  • Hi,

    Your own design board also has this problem.(board name: VAYU EVM  XC5777X CPU BOARD). I try mcasp3 and ATL clk3, run is ok, and the value of register at address 0x4843C390 is 1.

  • Could you please clarify what you meant by "run is ok"? Are you saying that in DRA7XX EVM, after changing from ATL clk2 to clk3, McASP driver is initialized correctly but there is no clock in AHCLKX pin?

    In the DRA7xx EVM ATL clk2 is connected to the aic3106's MCLK. The pin where ATL clk3 can be routed to is used for a different purpose in the board, so it's not possible to provide an MCLK to the aic3106 from ATL clk3.

  • Hi,
    Sorry,I didn't describe it clearly. For "run is ok", I mean that DRA7XX EVM and our board don't have crash on at the time of starting , when McASP3 and ATL clk3 together,as follows, but McASP8 not.
    &mcasp3 {
    #sound-dai-cells = <0>;

    assigned-clocks = <&mcasp3_ahclkx_mux>;
    assigned-clock-parents = <&atl_clkin3_ck>;

    status = "okay";

    op-mode = <0>; /* MCASP_IIS_MODE */
    tdm-slots = <2>;
    /* 4 serializer */
    serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
    1 2 0 0
    >;
    tx-num-evt = <32>;
    rx-num-evt = <32>;

    shared-dai;
    };
  • Hi,

    please check dra7xx-clocks.dtsi

    1. the bit-shift field of mcasp8_ahclkx_mux should be 24.
    2. the bit-shift field of mcasp8_aux_gfclk_mux should be 22.

    please refer to register CM_L4PER2_MCASP8_CLKCTRL for details.

    Please let us know how this goes.

  • Hi Peter,

    Thanks for  your valuable reply.The problem has been solved.

  • hello, I have encountered a similar problem, how do you solve it?
  • Hi @,

    the McASP experts has been notified and will reply to the new thread:

    I will close this one.

    Regards,

    Yordan