[PATCH v2 11/12] x86: coral: Add sysinfo ops
Simon Glass
sjg at chromium.org
Thu Jan 21 18:32:56 CET 2021
Hi Bin,
On Wed, 20 Jan 2021 at 23:54, Bin Meng <bmeng.cn at gmail.com> wrote:
>
> Hi Simon,
>
> On Thu, Jan 21, 2021 at 10:07 AM Simon Glass <sjg at chromium.org> wrote:
> >
> > These ops are missing at present which is not permitted. Add an empty
> > operation struct.
> >
> > Signed-off-by: Simon Glass <sjg at chromium.org>
> > ---
> >
> > Changes in v2:
> > - Add new patch to fix crash on coral
> >
> > board/google/chromebook_coral/coral.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/board/google/chromebook_coral/coral.c b/board/google/chromebook_coral/coral.c
> > index 34b2c2ac5d5..f9fb3f163f0 100644
> > --- a/board/google/chromebook_coral/coral.c
> > +++ b/board/google/chromebook_coral/coral.c
> > @@ -8,6 +8,7 @@
> > #include <command.h>
> > #include <dm.h>
> > #include <log.h>
> > +#include <sysinfo.h>
> > #include <acpi/acpigen.h>
> > #include <asm-generic/gpio.h>
> > #include <asm/acpi_nhlt.h>
> > @@ -143,6 +144,9 @@ struct acpi_ops coral_acpi_ops = {
> > .inject_dsdt = chromeos_acpi_gpio_generate,
> > };
> >
> > +struct sysinfo_ops coral_sysinfo_ops = {
> > +};
> > +
> > #if !CONFIG_IS_ENABLED(OF_PLATDATA)
> > static const struct udevice_id coral_ids[] = {
> > { .compatible = "google,coral" },
> > @@ -154,5 +158,6 @@ U_BOOT_DRIVER(coral_drv) = {
> > .name = "coral",
> > .id = UCLASS_SYSINFO,
> > .of_match = of_match_ptr(coral_ids),
> > + .ops = &coral_sysinfo_ops,
> > ACPI_OPS_PTR(&coral_acpi_ops)
> > };
>
> Shouldn't we fix sysinfo-uclass to test op against NULL? That way we
> relax the driver a little bit.
In general I don't like missing out the operations struct. If the
uclass requires operations then the drivers should provide them. It is
true that the operation struct is currently empty, but I've sent
patches to add to it.
Checking for missing operations must be done in every uclass
operation, so it adds to code size.
Regards,
Simon
More information about the U-Boot
mailing list