@mango 我想将I2S PIN改成GPIO使用,将I2S的I2S_MODE BIT位改成GPIO模式后,测了一下只有LRCLK是可以正确输入输出,其他管脚都不行。是不是要将WM8960芯片摘下,I2S的PIN才能正常使用?
puzhicai
@puzhicai
Best posts made by puzhicai
Latest posts made by puzhicai
-
RE: I2S I2C 如何作为普通IO 来用?
-
MT7688 SPIS (SPI SLAVE)接口是否可以驱动起来并且使用?
在datasheet(V1.4版本)中关于SPIS的描述过于简单,并且感觉datasheet的描述是错误的。spis_intf寄存器,竟然起始地址是0???十分不理解。有大哥指点一下?
5.9.1 SPI Slave Control
spis_intf Base address: (+0h) -
RE: Widora-neo GPIO中断试验
gpio_int_handler 函数给一个返回值就好了。
static irqreturn_t gpio_int_handler(int irq,void *dev_id,struct pt_regs *regs)
{
static int i=0;if (i>20)
{
printk("-------- midas_GPIO Interrupt triggered! ------\n");
}if(((*GINT_STAT_0)>>GPIO_PIN_NUM)&0x1) //-----confirm the Interrupt
{
//printk("GPIO Interrupt confirmed!\n");
INT_STATUS=1; //----set intterupt token
}*GINT_STAT_0 &=~(0x1<<GPIO_PIN_NUM); //----reset GPIO INT STAT register
*GINT_REDGE_0 |=(0x1<<GPIO_PIN_NUM); //----re-enable Rising Edge interrupt//disable_irq_nosync(GPIO_INT_NUM);
DISABLE_IRQ_TOKEN=1;
return IRQ_HANDLED;
} -
RE: Widora-neo GPIO中断试验
按照楼主的github代码进行编译,加载,运行,每次中断都会有 CALL TRACE 出现,不知道你们的是否会这样?
我是直接用GPIO14联到GPIO17上,控制GPIO14高低电平,产生中断,不知道是不是这样引起的。谢谢![ 1108.570000] irq event 41: bogus return value 86ba0000
[ 1108.570000] CPU: 0 PID: 1334 Comm: ash Tainted: G W 3.18.29 #3
[ 1108.570000] Stack : 00000000 00000000 00000000 00000000 803541f2 0000003e 00000000 00000000
00000000 80310184 802b1cdc 8030a9e3 00000536 80353420 86b71f58 80310184
80310000 802b5384 802b5398 80047628 00000006 80024378 00000000 00000000
802b51e0 86bfdc14 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
...
[ 1108.570000] Call Trace:
[ 1108.570000] [<800141a8>] show_stack+0x50/0x84
[ 1108.570000] [<8004a9e4>] __report_bad_irq.isra.7+0x44/0xf8
[ 1108.570000] [<8004907c>] handle_irq_event_percpu+0x154/0x188
[ 1108.570000] [<800490ec>] handle_irq_event+0x3c/0x60
[ 1108.570000] [<8004b830>] handle_level_irq+0xcc/0x110
[ 1108.570000] [<80048900>] generic_handle_irq+0x28/0x44
[ 1108.570000] [<80162cec>] mediatek_gpio_irq_handler+0xa4/0x114
[ 1108.570000] [<80048900>] generic_handle_irq+0x28/0x44
[ 1108.570000] [<80048900>] generic_handle_irq+0x28/0x44
[ 1108.570000] [<800111b0>] do_IRQ+0x1c/0x2c
[ 1108.570000] [<80004830>] ret_from_irq+0x0/0x4
[ 1108.570000] [<80161b20>] gpio_value_store+0x98/0xb8
[ 1108.570000] [<800ecd80>] kernfs_fop_write+0x11c/0x19c
[ 1108.570000] [<8009fd5c>] vfs_write+0xb8/0x1bc
[ 1108.570000] [<800a0344>] SyS_write+0x58/0xc4
[ 1108.570000] [<80006b5c>] handle_sys+0x11c/0x140
[ 1108.570000]
[ 1108.570000] handlers:
[ 1108.570000] [<86ba0000>] 0x86ba0000
GPIO Interrupt Triggered!