Code refactor for ARM bsp MMU initialization
Rohini Kulkarni
krohini1593 at gmail.com
Thu Jul 9 12:25:41 UTC 2015
Hi,
I have made the suggested changes.
git send-email is failing to send the patch, need to settle it. Please
review the attached file.
Thanks.
On Wed, Jul 8, 2015 at 7:04 PM, Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:
>
>
> On 08/07/15 15:10, Rohini Kulkarni wrote:
>
>>
>>
>> On Wed, Jul 8, 2015 at 6:29 PM, Sebastian Huber
>> <sebastian.huber at embedded-brains.de
>> <mailto:sebastian.huber at embedded-brains.de>> wrote:
>>
>> Hello Rohini,
>>
>> please use git format-patch to generate the patches.
>>
>> Actually,that is what I have used. I pasted the patch here from the
>> resulting file.
>>
>
> Better use git send-email, or send the file as is since this will preserve
> the commit message and author.
>
>
>>
>> On 08/07/15 14:44, Rohini Kulkarni wrote:
>>
>> +++ b/c/src/lib/libbsp/arm/raspberrypi/startup/bspstartmmu.c
>> @@ -0,0 +1,30 @@
>> +#define ARM_CP15_TEXT_SECTION BSP_START_TEXT_SECTION
>> +
>> +#include <bsp/start.h>
>> +#include <bsp/arm-cp15-start.h>
>> +#include <bsp/linker-symbols.h>
>> +#include <libcpu/arm-cp15.h>
>> +#include <bsp/mm.h>
>> +#include <bsp.h>
>> +
>> +uint32_t bsp_initial_mmu_ctrl_set;
>> +uint32_t bsp_initial_mmu_ctrl_clear;
>> +uint32_t domain_set;
>> +
>> +void raspberrypi_setup_mmu_and_cache(void)
>> +{
>> +#if (BSP_IS_RPI2 == 1)
>> + /* Enable SMP in auxiliary control */
>> + uint32_t actlr = arm_cp15_get_auxiliary_control();
>> + actlr |= ARM_CORTEX_A9_ACTL_SMP;
>> + arm_cp15_set_auxiliary_control(actlr);
>> + bsp_initial_mmu_ctrl_clear = ARM_CP15_CTRL_A;
>> + bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE | ARM_CP15_CTRL_Z;
>> +#else
>> + bsp_initial_mmu_ctrl_clear = 0;
>> + bsp_initial_mmu_ctrl_set = ARM_CP15_CTRL_AFE |
>> ARM_CP15_CTRL_S | ARM_CP15_CTRL_XP;
>> +#endif
>> + domain_set = ARM_MMU_DEFAULT_CLIENT_DOMAIN;
>> +
>> + bsp_memory_management_initialize();
>> +}
>>
>>
>> Is there a reason, why you use global variables instead of
>> function parameters?
>>
>> I have set them as extern in mm.h and are directly used in mminit.c
>> instead of being passed to bsp_memory_management_initialize. They will
>> be set by the bsp the source is being compiled for.
>>
>
> You should avoid global variables and functions in general. I don't see a
> necessity for them here.
>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone : +49 89 189 47 41-16
> Fax : +49 89 189 47 41-09
> E-Mail : sebastian.huber at embedded-brains.de
> PGP : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
--
Rohini Kulkarni
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20150709/69018bbf/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0015-Code-refactor.patch
Type: text/x-patch
Size: 5582 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/devel/attachments/20150709/69018bbf/attachment-0002.bin>
More information about the devel
mailing list