[PATCH v2 1/7] arm: firmware: Check firmware is running or not

Bartlomiej Zolnierkiewicz
2014-06-02T13:05:54Z

Hi,

On Monday, June 02, 2014 02:51:14 PM Tomasz Figa wrote:
> Hi,
>
> On 02.06.2014 14:35, Bartlomiej Zolnierkiewicz wrote:
> > From: Kyungmin Park <kyungmin.park@samsung.com>
> >
> > To support multi-platform, it needs to know it's running under secure
> > OS or not. Sometimes it needs to access physical address by SMC calls.
> >
> > e.g.,
> > if (firmware_run()) {
> > addr = physical address;
> > } else {
> > addr = virtual address;
> > }
> >
> > call_firmware_ops(read_address, addr, &value);
>
> Hmm, I don't understand the code above. It first asks whether the
> firmware is available and then calls a firmware operation anyway
> (assuming that firmware is available regardless of the check above)...
>
> I don't like the idea of this function, because we have designed the
> firmware API to not require this kind of checks. Instead, you just call
> whatever firmware operation you need and if it returns -ENOSYS you need
> to fallback to legacy (firmware-less) way of doing it.
>
> Could you provide your use case for which this doesn't work?

Please take a look at patch #7.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics