Bus access error while accessing IO ports assigned to Flash controller driver

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Bus access error while accessing IO ports assigned to Flash controller driver

574 Views
sachingosavi
Contributor I

Hello Everyone,

I am trying to port Linux kernel version 4.15.13 to our MPC8270 processor board. I have used PQ2FADS board as the reference board from the new kernel source to perform the porting exercise. Currently I am facing issue in getting the IDE Flash controller driver in the kernel source to work with the NAND flash controller available on our board. In the older kernel 2.6.17.6 we used customized IO port addresses for the driver. This was achieved by setting up the IO port mapping addresses in the m8260_setup.c board setup file. I added code in the new kernel to setup the respective addresses and also used the same address in the flash controller driver code. However I am still not able to read the status of the driver using the IO port address. I continue to get the below error during bootup.

[   23.869828] ide: forcing hda as a disk (3543/255/63)
[   23.888709] Probing IDE interface ide0...
[   23.899692] Machine check in kernel mode.
[   23.907290] Caused by (from SRR1=49030):
[   23.907307] Transfer error ack signal
[   23.922747] IN from bad port e000000e at 0fec9785
[   23.932352]
[   23.932352] IDE Status value read: 255
[   23.932399] probing for hda: present=1, media=32, probetype=ATA
[   24.012090] Machine check in kernel mode.
[   24.019597] Caused by (from SRR1=49030):
[   24.019614] Transfer error ack signal
[   24.035039] Oops: Machine check, sig: 7 [#1]
[   24.043589] BE PREEMPT Freescale PQ2FADS

I googled some information and most of it suggests an addressing issue. But I am really not aware exactly how to fix this addressing issue. Please can somebody guide me in the right direction to resolve this issue.

Thanks,

Sachin.

0 Kudos
1 Reply

493 Views
alexander_yakov
NXP Employee
NXP Employee

The most probable reason for transfer error acknowledge is bus timeout, this error happens as a result of attempt to access to address space, not assigned to any memory controller, or memory controller is not properly configured to generate transfer acknowledge in time.

MPC8270 processor does not have NAND flash controller, so for further debugging please verify how exactly your memory device is connected. In case if UPM controller is used, than please check UPM ram words are loaded properly. In case if external memory controller, than please verify ORn/BRn settings.

0 Kudos