[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCHv5 14/46] plat/include: Define macros for Arm64 to access registers
Hi Simon, > -----Original Message----- > From: Simon Kuenzer <simon.kuenzer@xxxxxxxxx> > Sent: 2018年9月6日 19:45 > To: Wei Chen (Arm Technology China) <Wei.Chen@xxxxxxx>; Julien Grall > <Julien.Grall@xxxxxxx>; minios-devel@xxxxxxxxxxxxxxxxxxxx > Cc: Kaly Xin (Arm Technology China) <Kaly.Xin@xxxxxxx>; nd <nd@xxxxxxx> > Subject: Re: [Minios-devel] [UNIKRAFT PATCHv5 14/46] plat/include: Define > macros for Arm64 to access registers > > > > On 04.09.2018 11:25, Wei Chen (Arm Technology China) wrote: > > Hi Julien, > > > >> -----Original Message----- > >> From: Julien Grall <julien.grall@xxxxxxx> > >> Sent: 2018年8月31日 1:34 > >> To: Wei Chen (Arm Technology China) <Wei.Chen@xxxxxxx>; minios- > >> devel@xxxxxxxxxxxxxxxxxxxx; simon.kuenzer@xxxxxxxxx > >> Cc: Kaly Xin (Arm Technology China) <Kaly.Xin@xxxxxxx>; nd <nd@xxxxxxx> > >> Subject: Re: [Minios-devel] [UNIKRAFT PATCHv5 14/46] plat/include: Define > >> macros for Arm64 to access registers > >> > >> Hi Wei, > >> > >> On 10/08/18 08:08, Wei Chen wrote: > >>> From: Wei Chen <Wei.Chen@xxxxxxx> > >>> > >>> In the progress of Arm64 system initialization, we need to access > >>> the system registers to configure some CPU features, we also need > >>> to access device registers to make device work. So in this patch, > >>> we define macros to access device registers and system registers. > >>> > >>> Signed-off-by: Wei Chen <Wei.Chen@xxxxxxx> > >>> --- > >>> plat/common/include/arm/arm64/cpu.h | 92 +++++++++++++++++++++++++++++ > >>> plat/common/include/arm/cpu.h | 44 ++++++++++++++ > >>> plat/common/include/cpu.h | 4 +- > >>> 3 files changed, 139 insertions(+), 1 deletion(-) > >>> create mode 100644 plat/common/include/arm/arm64/cpu.h > >>> create mode 100644 plat/common/include/arm/cpu.h > >>> > >>> diff --git a/plat/common/include/arm/arm64/cpu.h > >> b/plat/common/include/arm/arm64/cpu.h > >>> new file mode 100644 > >>> index 0000000..fac6cdb > >>> --- /dev/null > >>> +++ b/plat/common/include/arm/arm64/cpu.h > >>> @@ -0,0 +1,92 @@ > >>> +/* SPDX-License-Identifier: BSD-3-Clause */ > >>> +/* > >>> + * Authors: Wei Chen <wei.chen@xxxxxxx> > >>> + * > >>> + * Copyright (c) 2018, Arm Ltd. All rights reserved. > >>> + * > >>> + * Redistribution and use in source and binary forms, with or without > >>> + * modification, are permitted provided that the following conditions > >>> + * are met: > >>> + * > >>> + * 1. Redistributions of source code must retain the above copyright > >>> + * notice, this list of conditions and the following disclaimer. > >>> + * 2. Redistributions in binary form must reproduce the above copyright > >>> + * notice, this list of conditions and the following disclaimer in the > >>> + * documentation and/or other materials provided with the > >>> distribution. > >>> + * 3. Neither the name of the copyright holder nor the names of its > >>> + * contributors may be used to endorse or promote products derived > from > >>> + * this software without specific prior written permission. > >>> + * > >>> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS > "AS > >> IS" > >>> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, > >> THE > >>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR > >> PURPOSE > >>> + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS > >> BE > >>> + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR > >>> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF > >>> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR > BUSINESS > >>> + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER > IN > >>> + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR > >>> OTHERWISE) > >>> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF > >> THE > >>> + * POSSIBILITY OF SUCH DAMAGE. > >>> + * > >>> + * THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY. > >>> + */ > >>> + > >>> +#include <inttypes.h> > >>> + > >>> +static inline uint8_t ioreg_read8(const volatile uint8_t *addr) > >>> +{ > >>> + return *addr; > >>> +} > >>> + > >>> +static inline void ioreg_write8(volatile uint8_t *addr, uint8_t value) > >>> +{ > >>> + *addr= value; > >> > >> Missing space before = here as well as all the other ioreg_write*. > >> > > > > Uh, that may be caused by copy/paste, I will fix them in next version. > > > >> Also, I think you could also have macro-ed the creation of the helpers > >> to avoid having to write 4 time the same things. But that's more for a > >> clean-up :). > >> > >> Anyway, with the comestic change: > >> > >> Reviewed-by: Julien Grall <julien.grall@xxxxxxx> > >> > > > > Ahh, thank you ; ) > > I exceptionally give me the permission to fix this whitespace while > upstreaming this patch. ;-) > Thanks, and I will address Julien's another comment in a separate clean-up patch later :) > > > >> Cheers, > >> > >> -- > >> Julien Grall > > Thanks, > > Simon _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |