Hi,

I'm stumbling upon a problem noticed on the Ebony (440GP) eval board.
Here the first chip-select is connected to 512KiB of SRAM and 512KiB
NOR flash. The dts part look this way:

                                small-fl...@0,80000 {
                                        compatible = "jedec-flash";
                                        bank-width = <1>;
                                        reg = <0x00000000 0x00080000 
0x00080000>;
                                        #address-cells = <1>;
                                        #size-cells = <1>;
                                        partit...@0 {
                                                label = "OpenBIOS";
                                                reg = <0x00000000 0x00080000>;
                                                read-only;
                                        };
                                };

Chip-select 0 has this setup:
base-addr = 0xfff00000, size = 0x100000 (phys addr 0x1fff00000 .. 0x1ffffffff)

The problem/crash happens in the physmap_of driver, when the the driver
calls do_map_probe() with the following range:
base-addr = 0xfff80000, size = 0x100000 (phys addr 0x1fff80000 .. 0x20007ffff)

My question now is, should of_address_to_resource() subtract the
offset (here 0x80000) from the size? Is this is bug here? Or should
the physmap_of driver take care of this issue somehow?

Cheers,
Stefan
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to