hw/rtc/ls7a_rtc.c | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-)
Remove toy_val_to_time_mon and toy_val_to_time_year as unused,
and to avoid a build failure with clang. Remove all of the
other inline markers foo so that this does not creep back in.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
hw/rtc/ls7a_rtc.c | 27 ++++++---------------------
1 file changed, 6 insertions(+), 21 deletions(-)
diff --git a/hw/rtc/ls7a_rtc.c b/hw/rtc/ls7a_rtc.c
index e8b75701e4..1f9e38a735 100644
--- a/hw/rtc/ls7a_rtc.c
+++ b/hw/rtc/ls7a_rtc.c
@@ -86,46 +86,31 @@ struct LS7ARtcState {
};
/* switch nanoseconds time to rtc ticks */
-static inline uint64_t ls7a_rtc_ticks(void)
+static uint64_t ls7a_rtc_ticks(void)
{
return qemu_clock_get_ns(rtc_clock) * LS7A_RTC_FREQ / NANOSECONDS_PER_SECOND;
}
/* switch rtc ticks to nanoseconds */
-static inline uint64_t ticks_to_ns(uint64_t ticks)
+static uint64_t ticks_to_ns(uint64_t ticks)
{
return ticks * NANOSECONDS_PER_SECOND / LS7A_RTC_FREQ;
}
-static inline bool toy_enabled(LS7ARtcState *s)
+static bool toy_enabled(LS7ARtcState *s)
{
return FIELD_EX32(s->cntrctl, RTC_CTRL, TOYEN) &&
FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
}
-static inline bool rtc_enabled(LS7ARtcState *s)
+static bool rtc_enabled(LS7ARtcState *s)
{
return FIELD_EX32(s->cntrctl, RTC_CTRL, RTCEN) &&
FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
}
-/* parse toy value to struct tm */
-static inline void toy_val_to_time_mon(uint64_t toy_val, struct tm *tm)
-{
- tm->tm_sec = FIELD_EX32(toy_val, TOY, SEC);
- tm->tm_min = FIELD_EX32(toy_val, TOY, MIN);
- tm->tm_hour = FIELD_EX32(toy_val, TOY, HOUR);
- tm->tm_mday = FIELD_EX32(toy_val, TOY, DAY);
- tm->tm_mon = FIELD_EX32(toy_val, TOY, MON) - 1;
-}
-
-static inline void toy_val_to_time_year(uint64_t toy_year, struct tm *tm)
-{
- tm->tm_year = toy_year;
-}
-
/* parse struct tm to toy value */
-static inline uint64_t toy_time_to_val_mon(struct tm *tm)
+static uint64_t toy_time_to_val_mon(const struct tm *tm)
{
uint64_t val = 0;
@@ -137,7 +122,7 @@ static inline uint64_t toy_time_to_val_mon(struct tm *tm)
return val;
}
-static inline void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
+static void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
{
qemu_get_timedate(tm, s->offset_toy);
tm->tm_sec = FIELD_EX32(val, TOY_MATCH, SEC);
--
2.34.1
On 2022/7/5 下午4:28, Richard Henderson wrote:
> Remove toy_val_to_time_mon and toy_val_to_time_year as unused,
> and to avoid a build failure with clang. Remove all of the
> other inline markers foo so that this does not creep back in.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
Sorry for this problem, We need more CI tests before push code.
Reviewed-by: Song Gao <gaosong@loongson.cn>
> hw/rtc/ls7a_rtc.c | 27 ++++++---------------------
> 1 file changed, 6 insertions(+), 21 deletions(-)
>
> diff --git a/hw/rtc/ls7a_rtc.c b/hw/rtc/ls7a_rtc.c
> index e8b75701e4..1f9e38a735 100644
> --- a/hw/rtc/ls7a_rtc.c
> +++ b/hw/rtc/ls7a_rtc.c
> @@ -86,46 +86,31 @@ struct LS7ARtcState {
> };
>
> /* switch nanoseconds time to rtc ticks */
> -static inline uint64_t ls7a_rtc_ticks(void)
> +static uint64_t ls7a_rtc_ticks(void)
> {
> return qemu_clock_get_ns(rtc_clock) * LS7A_RTC_FREQ / NANOSECONDS_PER_SECOND;
> }
>
> /* switch rtc ticks to nanoseconds */
> -static inline uint64_t ticks_to_ns(uint64_t ticks)
> +static uint64_t ticks_to_ns(uint64_t ticks)
> {
> return ticks * NANOSECONDS_PER_SECOND / LS7A_RTC_FREQ;
> }
>
> -static inline bool toy_enabled(LS7ARtcState *s)
> +static bool toy_enabled(LS7ARtcState *s)
> {
> return FIELD_EX32(s->cntrctl, RTC_CTRL, TOYEN) &&
> FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
> }
>
> -static inline bool rtc_enabled(LS7ARtcState *s)
> +static bool rtc_enabled(LS7ARtcState *s)
> {
> return FIELD_EX32(s->cntrctl, RTC_CTRL, RTCEN) &&
> FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
> }
>
> -/* parse toy value to struct tm */
> -static inline void toy_val_to_time_mon(uint64_t toy_val, struct tm *tm)
> -{
> - tm->tm_sec = FIELD_EX32(toy_val, TOY, SEC);
> - tm->tm_min = FIELD_EX32(toy_val, TOY, MIN);
> - tm->tm_hour = FIELD_EX32(toy_val, TOY, HOUR);
> - tm->tm_mday = FIELD_EX32(toy_val, TOY, DAY);
> - tm->tm_mon = FIELD_EX32(toy_val, TOY, MON) - 1;
> -}
> -
> -static inline void toy_val_to_time_year(uint64_t toy_year, struct tm *tm)
> -{
> - tm->tm_year = toy_year;
> -}
> -
> /* parse struct tm to toy value */
> -static inline uint64_t toy_time_to_val_mon(struct tm *tm)
> +static uint64_t toy_time_to_val_mon(const struct tm *tm)
> {
> uint64_t val = 0;
>
> @@ -137,7 +122,7 @@ static inline uint64_t toy_time_to_val_mon(struct tm *tm)
> return val;
> }
>
> -static inline void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
> +static void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
> {
> qemu_get_timedate(tm, s->offset_toy);
> tm->tm_sec = FIELD_EX32(val, TOY_MATCH, SEC);
On 05/07/2022 10.28, Richard Henderson wrote:
> Remove toy_val_to_time_mon and toy_val_to_time_year as unused,
> and to avoid a build failure with clang. Remove all of the
> other inline markers foo so that this does not creep back in.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> hw/rtc/ls7a_rtc.c | 27 ++++++---------------------
> 1 file changed, 6 insertions(+), 21 deletions(-)
>
> diff --git a/hw/rtc/ls7a_rtc.c b/hw/rtc/ls7a_rtc.c
> index e8b75701e4..1f9e38a735 100644
> --- a/hw/rtc/ls7a_rtc.c
> +++ b/hw/rtc/ls7a_rtc.c
> @@ -86,46 +86,31 @@ struct LS7ARtcState {
> };
>
> /* switch nanoseconds time to rtc ticks */
> -static inline uint64_t ls7a_rtc_ticks(void)
> +static uint64_t ls7a_rtc_ticks(void)
> {
> return qemu_clock_get_ns(rtc_clock) * LS7A_RTC_FREQ / NANOSECONDS_PER_SECOND;
> }
>
> /* switch rtc ticks to nanoseconds */
> -static inline uint64_t ticks_to_ns(uint64_t ticks)
> +static uint64_t ticks_to_ns(uint64_t ticks)
> {
> return ticks * NANOSECONDS_PER_SECOND / LS7A_RTC_FREQ;
> }
>
> -static inline bool toy_enabled(LS7ARtcState *s)
> +static bool toy_enabled(LS7ARtcState *s)
> {
> return FIELD_EX32(s->cntrctl, RTC_CTRL, TOYEN) &&
> FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
> }
>
> -static inline bool rtc_enabled(LS7ARtcState *s)
> +static bool rtc_enabled(LS7ARtcState *s)
> {
> return FIELD_EX32(s->cntrctl, RTC_CTRL, RTCEN) &&
> FIELD_EX32(s->cntrctl, RTC_CTRL, EO);
> }
>
> -/* parse toy value to struct tm */
> -static inline void toy_val_to_time_mon(uint64_t toy_val, struct tm *tm)
> -{
> - tm->tm_sec = FIELD_EX32(toy_val, TOY, SEC);
> - tm->tm_min = FIELD_EX32(toy_val, TOY, MIN);
> - tm->tm_hour = FIELD_EX32(toy_val, TOY, HOUR);
> - tm->tm_mday = FIELD_EX32(toy_val, TOY, DAY);
> - tm->tm_mon = FIELD_EX32(toy_val, TOY, MON) - 1;
> -}
> -
> -static inline void toy_val_to_time_year(uint64_t toy_year, struct tm *tm)
> -{
> - tm->tm_year = toy_year;
> -}
> -
> /* parse struct tm to toy value */
> -static inline uint64_t toy_time_to_val_mon(struct tm *tm)
> +static uint64_t toy_time_to_val_mon(const struct tm *tm)
> {
> uint64_t val = 0;
>
> @@ -137,7 +122,7 @@ static inline uint64_t toy_time_to_val_mon(struct tm *tm)
> return val;
> }
>
> -static inline void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
> +static void toymatch_val_to_time(LS7ARtcState *s, uint64_t val, struct tm *tm)
> {
> qemu_get_timedate(tm, s->offset_toy);
> tm->tm_sec = FIELD_EX32(val, TOY_MATCH, SEC);
I wonder why the other Clang-based CI jobs (running on Linux) did not
complain about this...?
Reviewed-by: Thomas Huth <thuth@redhat.com>
On 7/5/22 14:01, Thomas Huth wrote: > I wonder why the other Clang-based CI jobs (running on Linux) did not complain about this...? I wondered about that too. We must be limiting them to a set of targets. r~ > > Reviewed-by: Thomas Huth <thuth@redhat.com> >
© 2016 - 2026 Red Hat, Inc.