Re: [REGRESSION] mipsel: no RTC CMOS on the Malta platform in QEMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




在2025年1月14日一月 上午8:02,Geert Uytterhoeven写道:
> Hi Jiaxun,
[...]
>>
>> You are right, this is what should be done.
>>
>> A quick fix would be #undef PCI_IOBASE in arch/mips/include/asm/io.h
>> just after including #include <asm-generic/io.h>, with ralink and loongson64
>> as exception.
>
> Shouldn't arch/mips/include/asm/io.h do
>
>     #define PCI_IOBASE mips_io_port_base
>
> unconditionally, _before_ including  <asm-generic/io.h>?

The problem here is defining PCI_IOBASE implied use of logic_pio and VM mapped
io access, which is not true for many MIPS systems...

>
>> In the long term, we should scrutinize platform usage of mips_io_base
>> following ralink's approach.
>
> Currently ralink handles that in a mach-specific include:
>
>     arch/mips/include/asm/mach-ralink/spaces.h:#define PCI_IOBASE
> mips_io_port_base
>
> Loongson does it differently:
>
>     arch/mips/include/asm/mach-loongson64/spaces.h:#define PCI_IOBASE
>      _AC(0xc000000000000000 + SZ_128K, UL)
>
> But still sets mips_io_port_base in prom_init():
>
>     arch/mips/loongson64/init.c:    set_io_port_base(PCI_IOBASE);
>
> so defining PCI_IOBASE to mips_io_port_base in the main <asm/io.h>
> should work.

Yes, we need to make sure malta problem won't happen on other platforms
before making this definition. 

Thanks

>
> Gr{oetje,eeting}s,
>
>                         Geert
>
> -- 
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds

-- 
- Jiaxun





[Index of Archives]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux