Re: [PATCH RFC v3 0/7] mfd: ls2kbmc: multiple fixes for this driver
Huacai Chen <[email protected]> Fri, 31 Jul 2026 16:07:40 +0800
| Newsgroups | org.kernel.vger.linux-gpio,dev.linux.lists.mfd,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CAAhV-H5wFZHN2jD-vGgNLuMqugGxwfyfq2TnK=HKyZXxZR7iRA@mail.gmail.com> |
On Fri, Jul 24, 2026 at 5:28=E2=80=AFPM Miao Wang <[email protected]= m> wrote: > > Hi, > > > 2026=E5=B9=B47=E6=9C=8824=E6=97=A5 16:55=EF=BC=8CHuacai Chen <chenhuaca= [email protected]> =E5=86=99=E9=81=93=EF=BC=9A > > > > Hi, Miao, > > > > On Fri, Jul 10, 2026 at 1:24=E2=80=AFAM Miao Wang via B4 Relay > > <[email protected]> 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 th= e > >> driver. > >> > >> Firstly, the driver tries to read and write to the connected PCI-E hos= t > >> 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 ho= st > >> 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 > >