Can't install MorphOS on Sam460LE
  • MorphOS Developer
    bigfoot
    Posts: 510 from 2003/4/11
    The Sam460le - apparently - has an extra PCI USB controller on-board compared to the Sam460ex. On the Sam460ex, the physical PCI slot is hooked up directly to the PCI controller of the CPU, where as on the Sam460le, both the physical PCI slot and the on-board USB controller are connected to a PCI-to-PCI bridge that's then connected to the CPU.

    To probe and set up devices on a PCI bus, the system software directs the PCI controller to generate configuration transactions on the PCI bus. These transactions are used to access the PCI configuration space of connected devices, which is the part of the PCI device that contains information such as the device's vendor and device IDs, as well as information about what memory and I/O are present on the device, and so on.

    There are two types of PCI configuration transactions: Type 0 and type 1. Type 0 is used to address a device on the current PCI bus segment, and type 1 is used to forward a transaction to a different PCI bus segment, ie, to a device that's behind one or more PCI-to-PCI bridges.

    Now the PCI controller in the CPU on the Sam460 is a bit special compared to other PCI controllers in that it's up to the system software to instruct the controller whether to generate type 0 or type 1 configuration transactions. MorphOS did have the code to do this, but as it turns out, the logic was faulty. Since the Sam460ex didn't have the PCI-to-PCI bridge that the Sam460le has, and PCI plug in boards that contain a PCI-to-PCI bridge are not very common, this faulty logic was never triggered before.

    In your case, this means that when MorphOS tried to probe the devices behind the PCI-to-PCI bridge, it'd use a type 0 configuration transaction instead of a type 1 configuration transaction, which in turn caused the request to be answered by devices on the PCI bus segment local to the PCI controller, ie, the one with the PCI-to-PCI bridge on it. This meant that MorphOS would think that you had an infinite number of PCI-to-PCI bridges stacked behind each other, and thus would never manage to finish probing the PCI bus.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »16.07.23 - 07:38
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 510 from 2003/4/11
    Quote:

    Skygecko wrote:
    Will these changes be included in future releases?


    Yes.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »16.07.23 - 07:40
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 510 from 2003/4/11
    I uploaded a new image, this time with all the extra debug output disabled so it won't slow down your boot. New md5sum is 7a3eae0da2a80ff3262c7fc79cd98e52.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »16.07.23 - 10:23
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12150 from 2003/5/22
    From: Germany
    > The Sam460le - apparently - has an extra PCI USB controller on-board
    > compared to the Sam460ex. On the Sam460ex, the physical PCI slot is
    > hooked up directly to the PCI controller of the CPU, where as on the
    > Sam460le, both the physical PCI slot and the on-board USB controller
    > are connected to a PCI-to-PCI bridge that's then connected to the CPU.

    Thanks for finding out, telling about and fixing MorphOS to cope with this design change from Sam460ex (and I guess Sam460cr) to Sam460LE. As of the next MorphOS release, this fix should enlarge the list of supported mainboards by one.
  • »16.07.23 - 10:45
    Profile
  • Butterfly
    Butterfly
    Posts: 78 from 2020/5/1
    Cool and good that the "fault" was found.
  • »19.07.23 - 19:34
    Profile