From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752343AbeEOIlp (ORCPT ); Tue, 15 May 2018 04:41:45 -0400 Received: from mail-it0-f68.google.com ([209.85.214.68]:54477 "EHLO mail-it0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752054AbeEOIln (ORCPT ); Tue, 15 May 2018 04:41:43 -0400 X-Google-Smtp-Source: AB8JxZr1oOe7vWwhRMDDda3FFMXi5bPg9Jya6MuObAo/Ya2lnMGbuoXGL1QbyrlFkbpBSKgdOJRhVn8henWxMVBfpdQ= MIME-Version: 1.0 In-Reply-To: References: <20180511162028.20616-1-brgl@bgdev.pl> <20180511162028.20616-10-brgl@bgdev.pl> From: Bartosz Golaszewski Date: Tue, 15 May 2018 10:41:42 +0200 Message-ID: Subject: Re: [PATCH 09/12] platform/early: add an init section for early driver data To: Geert Uytterhoeven Cc: Sekhar Nori , Kevin Hilman , David Lechner , Michael Turquette , Stephen Boyd , Arnd Bergmann , Greg Kroah-Hartman , Mark Rutland , Yoshinori Sato , Rich Felker , Andy Shevchenko , Marc Zyngier , "Rafael J . Wysocki" , Peter Rosin , Jiri Slaby , Thomas Gleixner , Daniel Lezcano , Magnus Damm , Johan Hovold , Rob Herring , Frank Rowand , Linux ARM , Linux Kernel Mailing List , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Linux-Arch , Bartosz Golaszewski Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 2018-05-14 23:29 GMT+02:00 Geert Uytterhoeven : > Hi Bartosz, > > On Fri, May 11, 2018 at 6:20 PM, Bartosz Golaszewski wrote: >> From: Bartosz Golaszewski >> >> Provide a separate section in which pointers to early platform driver >> structs will be stored. >> >> Signed-off-by: Bartosz Golaszewski > > Thanks for your patch! > >> --- a/include/asm-generic/vmlinux.lds.h >> +++ b/include/asm-generic/vmlinux.lds.h >> @@ -214,6 +214,16 @@ >> #define CPU_METHOD_OF_TABLES() OF_TABLE(CONFIG_SMP, cpu_method) >> #define CPUIDLE_METHOD_OF_TABLES() OF_TABLE(CONFIG_CPU_IDLE, cpuidle_method) >> >> +#ifdef CONFIG_EARLY_PLATFORM >> +#define EARLY_PLATFORM_DRIVERS_TABLE() \ >> + . = ALIGN(8); \ > > Should this use STRUCT_ALIGN() instead? > No, we're only using it to store pointers to structs, not the actual struct early_platform_driver objects. >> + VMLINUX_SYMBOL(__early_platform_drivers_table) = .; \ >> + KEEP(*(__early_platform_drivers_table)) \ >> + VMLINUX_SYMBOL(__early_platform_drivers_table_end) = .; >> +#else >> +#define EARLY_PLATFORM_DRIVERS_TABLE() >> +#endif > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > 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 Thanks, Bartosz