Re: [PATCH RFC v3 0/7] mfd: ls2kbmc: multiple fixes for this driver
From: Huacai Chen
Date: Fri Jul 31 2026 - 04:11:49 EST
On Fri, Jul 24, 2026 at 5:28 PM Miao Wang <shankerwangmiao@xxxxxxxxx> wrote:
>
> Hi,
>
> > 2026年7月24日 16:55,Huacai Chen <chenhuacai@xxxxxxxxxx> 写道:
> >
> > Hi, Miao,
> >
> > On Fri, Jul 10, 2026 at 1:24 AM Miao Wang via B4 Relay
> > <devnull+shankerwangmiao.gmail.com@xxxxxxxxxx> wrote:
> >>
> >> Previously, the driver has been introduced to support the Loongson 2K
> >> BMC running on the Loongson Servers, which is essential to prevent
> >> the system from hanging when the BMC is being reset and the default
> >> efi-framebuffer is being used. However, there are some drawbacks in the
> >> driver.
> >>
> >> Firstly, the driver tries to read and write to the connected PCI-E host
> >> controller registers, assuming that the BMC is connected to LS7A PCI-E
> >> host controller. This assumption should be true for real products, but
> >> to prevent from accidentally reading and writing to the wrong PCI-E host
> >> controller, this driver should be modified to check this before
> >> accessing the registers.
> >>
> >> Secondly, the driver uses non-exported functions to tell the vt
> >> subsystem to redraw the screen, preventing the driver from being
> >> compiling as a module. This can be fixed by using the exported
> >> functions instead.
> > You can replace the redraw function, but I don't think it is necessary
> > to make the bmc driver modular.
> >
> > BMC core, IPMI and simpledrm display are usually (if not always)
> > supposed to work as early as possible.
>
> I believe that it should be the user's decision to choose whether to
> compile a module into the kernel or as a module and it would be better
> if we can provide the possibilities for the user to choose from.
> Additionally, I don't think these modules are supposed to work that
> early. The mfd module provide two functions, the display and the ipmi
> device. In the aspect of graphical display, without this module, the
> user can still see the output during booting on their monitors, since
> efifb is working, providing a basic display function. In the aspect of
> the ipmi device, I don't think the lack of such device will influence
> the boot of the system, since it is a common practice to compile ipmi
> device drivers as modules on other architectures. As a result, neither
> of the two functions are required to be loaded that early and it is
> reasonable to at lease leave the choice to compile it as a module
> to the user.
Flexibility is not always useful, if a config doesn't provide good
effect, then it just increases complexity and makes maintenance more
difficult.
Huacai
>
> Cheers,
>
> Miao Wang
>
>