Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - bsp6.5.0 ,GPIO interrupt of am335x beaglebone black : (1 Item)
   
bsp6.5.0 ,GPIO interrupt of am335x beaglebone black  
hello:
I am using the bsp I use the gpio3_20 to  get interrupt .
i have configure the gpio setting of am335x according to linux bsp which is work fine.
I add code following in the startup/initpinmux.c
out32(conf_mcasp0_axr1,(MODE(7) | RXACTIVE |PULLUDEN | PULLUP_EN));//gpio3_20
out32(AM335X_GPIO3_BASE + GPIO_OE , in32(AM335X_GPIO3_BASE + GPIO_OE) & (1<<20));
	out32(AM335X_GPIO3_BASE + GPIO_LEVELDETECT0 , in32(AM335X_GPIO3_BASE + GPIO_LEVELDETECT0) & (1<<20));
	out32(AM335X_GPIO3_BASE + GPIO_LEVELDETECT1 , in32(AM335X_GPIO3_BASE + GPIO_LEVELDETECT1) & 0xFFEFFFFF);
	out32(AM335X_GPIO3_BASE + GPIO_RISINGDETECT , in32(AM335X_GPIO3_BASE + GPIO_RISINGDETECT) & 0xFFEFFFFF);
	out32(AM335X_GPIO3_BASE + GPIO_FALLINGDETECT  , in32(AM335X_GPIO3_BASE + GPIO_FALLINGDETECT ) & 0xFFEFFFFF);

I use the gpio_irq 0x374 ,The irq num which is defined in  initintinfo.c
// GPIO3 interrupt
	{   0x360,                          // vector base
	    32,                             // number of vectors
	    62,                             // cascade vector
	    0,                              // CPU vector base
	    0,                              // CPU vector stride
	    0,                              // flags
	    { 0, 0, &interrupt_id_am335x_gpio},
	    { INTR_GENFLAG_LOAD_INTRMASK, 0, &interrupt_eoi_am335x_gpio},
	    &interrupt_mask_am335x_gpio,    // mask   callout
	    &interrupt_unmask_am335x_gpio,  // unmask callout
	    0,                              // config callout
	    &am335x_gpio3_base
	},
	
But I can not  get the interrupt in my ISR,can any one tell me why ?
I also find another guy meet the problem.
Can anyone also tell me where is the error he make?
Best regards
https://e2e.ti.com/support/arm/sitara_arm/f/791/t/293435