[PATCH 2/3] celleb: add supporting for native CBE
Ishizaki Kou
kou.ishizaki at toshiba.co.jp
Thu Dec 6 17:43:55 EST 2007
Arnd Bergmann <arnd at arndb.de> wrote:
> On Tuesday 04 December 2007, Ishizaki Kou wrote:
> > This patch adds supporting for native CBE on Celleb. Many codes in
> > platforms/cell/ are used when native CBE environment.
> >
> > Signed-off-by: Kou Ishizaki <Kou.Ishizaki at toshiba.co.jp>
>
> Ah, excellent to hear that this is now working!
>
> I'd suggest doing the initialization in a different way, so that you don't
> need to decide on so many attributes dynamically. The easiest way would
> probably be to have two separate define_machine() calls in the celleb
> definition, like
>
> define_machine(celleb_beat) {
> .probe = celleb_probe_beat,
> .setup_arch = celleb_setup_arch_native,
> .show_cpuinfo = celleb_show_cpuinfo,
> .restart = beat_restart,
> .power_off = beat_power_off,
> .halt = beat_halt,
> .get_rtc_time = beat_get_rtc_time,
> .set_rtc_time = beat_set_rtc_time,
> .calibrate_decr = generic_calibrate_decr,
> .progress = celleb_progress,
> .power_save = beat_power_save,
> .nvram_size = beat_nvram_get_size,
> .nvram_read = beat_nvram_read,
> .nvram_write = beat_nvram_write,
> .set_dabr = beat_set_xdabr,
> .init_IRQ = beatic_init_IRQ,
> .get_irq = beatic_get_irq,
> .pci_probe_mode = celleb_pci_probe_mode,
> .pci_setup_phb = celleb_setup_phb,
> ...
> };
>
> define_machine(celleb_native) {
> .probe = celleb_probe_native,
> .setup_arch = celleb_setup_arch_native,
> .show_cpuinfo = celleb_show_cpuinfo,
> .restart = rtas_restart,
> .power_off = rtas_power_off,
> .halt = rtas_halt,
> .get_rtc_time = rtas_get_rtc_time,
> .set_rtc_time = rtas_set_rtc_time,
> .calibrate_decr = generic_calibrate_decr,
> .progress = celleb_progress,
> .init_IRQ = celleb_init_IRQ_native,
> .get_irq = celleb_get_irq_native,
> .pci_probe_mode = celleb_pci_probe_mode,
> .pci_setup_phb = celleb_setup_phb,
> ...
> };
>
> For this, you can either have the two machine definitions in the
> same celleb/setup.c, or split setup.c into machine specific files,
> depending on how much ends up being shared in the end.
Thanks for your suggestion. I'll try to split into two machine
definitions.
> An interesting question still is how close the native celleb machine
> definition is to the one from platforms/cell/setup.c. Maybe it's best
> to have a common machine definition for these two in the end.
You know celleb-native is between celleb-beat and cell blade. I also
think it's best if we can use a common machine definition and a common
setup code. But there are many differences mainly caused by their
firmwares, and this disturbs the integration. I think celleb-native is
closer to celleb-beat than to cell blade. So I put celleb-native code
in platforms/celleb.
> Arnd <><
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
Best regards,
Kou Ishizaki
More information about the Linuxppc-dev
mailing list