AnsweredAssumed Answered

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

Question asked by Sachin Gosavi on Feb 12, 2019
Latest reply on Feb 12, 2019 by alexander.yakovlev

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 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.