Messages in this thread | | | Subject | Re: [PATCH v4 3/4] firmware: Drop bit ops in favor of simple state machine | From | Daniel Wagner <> | Date | Thu, 8 Sep 2016 14:44:29 +0200 |
| |
On 09/08/2016 03:45 AM, Luis R. Rodriguez wrote: > On Wed, Sep 07, 2016 at 10:45:07AM +0200, Daniel Wagner wrote: >> From: Daniel Wagner <daniel.wagner@bmw-carit.de> >> >> We track the state of the loading with bit ops. Since the state machine >> has only a couple of states and there are only a few simple state >> transition > > And they are all mutually exclusive ?
Yes, I'll updated the commit message
> >> we can model this simplify. >> >> UNKNOWN -> LOADING -> DONE | ABORTED > > So why unsigned long ? Why not a u8?
No reason, only a leftover. Changed it to u8.
> return ret; >> @@ -138,13 +140,11 @@ static int fw_status_wait_timeout(struct fw_status *fw_st, long timeout) >> static void __fw_status_set(struct fw_status *fw_st, >> unsigned long status) >> { >> - set_bit(status, &fw_st->status); >> + WRITE_ONCE(fw_st->status, status); >> >> if (status == FW_STATUS_DONE || >> - status == FW_STATUS_ABORTED) { >> - clear_bit(FW_STATUS_LOADING, &fw_st->status); >> + status == FW_STATUS_ABORTED) >> complete_all(&fw_st->completion); >> - } >> } >> >> #define fw_status_start(fw_st) \ > > See if all the above were prefixed with fw_umh or something like it > it would make this easier to read and tell this is all umh related.
Changed the prefix to fm_umh. Looks much better.
cheers, daniel
| |