I'm using via82c686 south bridge chip as a IDE controller in our STB.
It has primary and secondary IDE interface and two devices
may be connected to each interface, total 4 as you know.
I enabled via's primary and secondary interface.
I connect one hard disk to primary interface as a master.
In initialization stage of devices which are connected primary interface,
I selected master disk(via device/head register) and read status register. and
no error.
Ok. Device 0(master) is present.
I selected slave disk and read status register. and with error. So I can be
notified
that device 1(slave) is not present.
However, In initialization stage of devices which are connected
secondary devices, I selected master disk and read status register,
and with no repsonse(more debugging impossible state).
Of course, primary and secondary command/control block i/o addresses
is mapped in pci bus. And I use appropriate i/o addresses for accessing devices.
So, I know the general method by which I can be notified that device
is not present whether or not it is primary master or primary slave, or
secondary master....
In recent PC Bios, if we set primary master/slave, secondary master/slave
devices to "auto" mode, they are detected at boot time automatically.
How can it be done?
Thanks a lot.