AnsweredAssumed Answered

How to set TAMPER pins as GPIO whose properties are equal to device tree.

Question asked by Hirotoshi Sato on Oct 19, 2017
Latest reply on Nov 17, 2017 by Jose Luis Zabalza

Hi, I am confused how can I set TAMPER pins as GPIO whose properties are equal to device tree.

 

I use imx6ull board.

I directly accessed register address with memtool and got following information.

SW_MUX_CTL_PAD_SNVS_TAMPER1: reg val 0x0

SW_PAD_CTL_PAD_SNVS_TAMPER1: reg val 0x0

other tamper pins are the same as above.

 

However I defined these pins for GPIO in device tree as follows.

&iomuxc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hog_1>;
imx6ul-evk {
pinctrl_hog_1: hoggrp-1 {
fsl,pins = <

MX6UL_PAD_SNVS_TAMPER1__GPIO5_IO01 0x000110B0
MX6UL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x0000B0A0
MX6UL_PAD_SNVS_TAMPER5__GPIO5_IO05 0x000110B0
MX6UL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x000110B0
MX6UL_PAD_SNVS_TAMPER8__GPIO5_IO08 0x000110B0
MX6UL_PAD_SNVS_TAMPER9__GPIO5_IO09 0x000110B0

The values of device tree do not set in the register.

 

The IMX6ULRM says that TAMPER_PIN_DISABLE in fuse has to be 11 to disable TAMPER0-9 and use as GPIO.

So I checked 0x430[21:20] and got 11. I think this means tamper pins are set as ALT5 GPIO mode.

I checked fuse in uboot too (refer to mx6ul tamper pin to gpio  ). The result is following.

Hit any key to stop autoboot: 0
=> fuse read 0 3
Reading bank 0:

Word 0x00000003: 71300070

note that 0x71300070 = 1110001001100000000000001110000

From the beggining, TAMPER_PIN_DISABLE is 11. Can I set them in device tree? I could not find any definition of tamper pins.

 

I could export these tamper pins in sysfs, but the values cannot be written even if I set them as output direction.

The values are always HIGH.

 

Why can't I set register values as defined in device tree ?

Why can't I change H/L even if I set tamper pins as output direction?

 

Outcomes