diff mbox

[U-Boot,v1] imx6sx: Fix i.MX6SX HAB api function table offset

Message ID CAOMZO5CwyL3Q6hAFoN5+LAZ-RLBzCL5AA7C8b6OdB2TPbp5ptw@mail.gmail.com
State Changes Requested
Headers show

Commit Message

Fabio Estevam Sept. 30, 2014, 4:31 p.m. UTC
Hi Stefano,

On Tue, Sep 30, 2014 at 1:08 PM, Stefano Babic <sbabic@denx.de> wrote:

> I do not like this approach because we do not need an additional
> CONFIG_, that remains undocumented. If CONFIG_MX6SX, HAB_RVT_BASE is
> always 0x100 - CONFIG_ROM_UNIFIED_SECTIONS is like a redundant
> information, because it is not possible (or is it ?) to have a sx
> processor with a different base address.

Yes, I agree that we should avoid introducing a new config like
CONFIG_ROM_UNIFIED_SECTIONS.

What about this?

Comments

Stefano Babic Sept. 30, 2014, 5:43 p.m. UTC | #1
Hi Fabio,

On 30/09/2014 18:31, Fabio Estevam wrote:
> Hi Stefano,
> 
> On Tue, Sep 30, 2014 at 1:08 PM, Stefano Babic <sbabic@denx.de> wrote:
> 
>> I do not like this approach because we do not need an additional
>> CONFIG_, that remains undocumented. If CONFIG_MX6SX, HAB_RVT_BASE is
>> always 0x100 - CONFIG_ROM_UNIFIED_SECTIONS is like a redundant
>> information, because it is not possible (or is it ?) to have a sx
>> processor with a different base address.
> 
> Yes, I agree that we should avoid introducing a new config like
> CONFIG_ROM_UNIFIED_SECTIONS.
> 
> What about this?
> 
> diff --git a/arch/arm/include/asm/arch-mx6/hab.h b/arch/arm/include/asm/arch-mx6
> index 1f12695..c9e5318 100644
> --- a/arch/arm/include/asm/arch-mx6/hab.h
> +++ b/arch/arm/include/asm/arch-mx6/hab.h
> @@ -53,11 +53,17 @@ typedef void *hab_rvt_authenticate_image_t(uint8_t, ptrdiff_
>                 void **, size_t *, hab_loader_callback_f_t);
>  typedef void hapi_clock_init_t(void);
> 
> -#define HAB_RVT_REPORT_EVENT                   (*(uint32_t *)0x000000B4)
> -#define HAB_RVT_REPORT_STATUS                  (*(uint32_t *)0x000000B8)
> -#define HAB_RVT_AUTHENTICATE_IMAGE             (*(uint32_t *)0x000000A4)
> -#define HAB_RVT_ENTRY                          (*(uint32_t *)0x00000098)
> -#define HAB_RVT_EXIT                           (*(uint32_t *)0x0000009C)
> +#ifdef CONFIG_MX6SX
> +#define HAB_RVT_BASE                   0x00000100
> +#else
> +#define HAB_RVT_BASE                   0x00000094
> +#endif
> +
> +#define HAB_RVT_ENTRY                  (*(uint32_t *)(HAB_RVT_BASE + 0x04))
> +#define HAB_RVT_EXIT                   (*(uint32_t *)(HAB_RVT_BASE + 0x08))
> +#define HAB_RVT_AUTHENTICATE_IMAGE     (*(uint32_t *)(HAB_RVT_BASE + 0x10))
> +#define HAB_RVT_REPORT_EVENT           (*(uint32_t *)(HAB_RVT_BASE + 0x20))
> +#define HAB_RVT_REPORT_STATUS          (*(uint32_t *)(HAB_RVT_BASE + 0x24))
> 
>  #define HAB_RVT_REPORT_EVENT_NEW               (*(uint32_t *)0x000000B8)
>  #define HAB_RVT_REPORT_STATUS_NEW              (*(uint32_t *)0x000000BC)
> 


ok - I have seen V3, I will apply it.

Regards,
Stefano
Fabio Estevam Sept. 30, 2014, 5:51 p.m. UTC | #2
On Tue, Sep 30, 2014 at 2:43 PM, Stefano Babic <sbabic@denx.de> wrote:

> ok - I have seen V3, I will apply it.

Thanks, Stefano!
diff mbox

Patch

diff --git a/arch/arm/include/asm/arch-mx6/hab.h b/arch/arm/include/asm/arch-mx6
index 1f12695..c9e5318 100644
--- a/arch/arm/include/asm/arch-mx6/hab.h
+++ b/arch/arm/include/asm/arch-mx6/hab.h
@@ -53,11 +53,17 @@  typedef void *hab_rvt_authenticate_image_t(uint8_t, ptrdiff_
                void **, size_t *, hab_loader_callback_f_t);
 typedef void hapi_clock_init_t(void);

-#define HAB_RVT_REPORT_EVENT                   (*(uint32_t *)0x000000B4)
-#define HAB_RVT_REPORT_STATUS                  (*(uint32_t *)0x000000B8)
-#define HAB_RVT_AUTHENTICATE_IMAGE             (*(uint32_t *)0x000000A4)
-#define HAB_RVT_ENTRY                          (*(uint32_t *)0x00000098)
-#define HAB_RVT_EXIT                           (*(uint32_t *)0x0000009C)
+#ifdef CONFIG_MX6SX
+#define HAB_RVT_BASE                   0x00000100
+#else
+#define HAB_RVT_BASE                   0x00000094
+#endif
+
+#define HAB_RVT_ENTRY                  (*(uint32_t *)(HAB_RVT_BASE + 0x04))
+#define HAB_RVT_EXIT                   (*(uint32_t *)(HAB_RVT_BASE + 0x08))
+#define HAB_RVT_AUTHENTICATE_IMAGE     (*(uint32_t *)(HAB_RVT_BASE + 0x10))
+#define HAB_RVT_REPORT_EVENT           (*(uint32_t *)(HAB_RVT_BASE + 0x20))
+#define HAB_RVT_REPORT_STATUS          (*(uint32_t *)(HAB_RVT_BASE + 0x24))

 #define HAB_RVT_REPORT_EVENT_NEW               (*(uint32_t *)0x000000B8)
 #define HAB_RVT_REPORT_STATUS_NEW              (*(uint32_t *)0x000000BC)