• Home
  • History
  • Annotate
Name
Date
Size
#Lines
LOC

..--

dts/microchip/mec5/18-Mar-2025-7,0345,275

include/dt-bindings/pinctrl/18-Mar-2025-18,4459,193

mec/18-Mar-2025-54,25927,699

mec5/18-Mar-2025-49,30233,377

mpfs/18-Mar-2025-138,57179,623

pic32c/18-Mar-2025-520,093492,978

pinconfigs/18-Mar-2025-1,2781,202

scripts/18-Mar-2025-682496

zephyr/18-Mar-2025-54

.gitignoreD18-Mar-202587 1210

CMakeLists.txtD18-Mar-2025246 65

README.mdD18-Mar-20252.7 KiB6854

README.txtD18-Mar-20251.9 KiB6039

README.md

1# Introduction
2
3The **hal_microchip** is a set of register definitions for Microchip PIC32C/PIC32M SoC's.
4The HAL is organized following the directory structure detailed below.
5
6## Directory Structure
7
8The directory is composed by six parts:
9```
10.
11├── pic32c
12├── include
13├── pinconfigs
14├── README.md
15├── scripts
16└── zephyr
17```
18
19 - PIC32C SoC specific include libraries.
20 - Includes specific for these platforms
21   - devicetree bindings
22 - [Pin definitions](pinconfigs/README.md)
23 - [Scripts](scripts/README.md) used for code generation
24 - ZephyrRTOS module directory (`zephyr`).
25 - This README file.
26
27# How to submit code
28
29Any contribution should follow the `How to submit code` using as premisses the
30[Zephyr Contribution Guidelines](https://docs.zephyrproject.org/latest/contribute/index.html).
31For more information about External Modules see
32[Modules Section](https://docs.zephyrproject.org/latest/develop/modules.html) in special
33[Submitting Changes to Modules](https://docs.zephyrproject.org/latest/develop/modules.html#submitting-changes-to-modules)
34
35
36## Repository specific guidelines
37
38 - When submitting an updated firmware library version, it is important to make
39   sure that the last firmware version will be merged. The library version is
40   used to be checked at [Microchip packs download site](https://packs.download.microchip.com/).
41 - When submitting an updated firmware library version the patchset already
42   applied should be rebased on top of the newer version.
43 - The patchset must be sent as an individual commit per SoC series to easy rebase.
44 - This repository is managed mainly on Linux. This means that changes should
45   be submitted using Linux LF format. Usually running a similar command to
46   `find * type f -print0 | xargs -0 dos2unix -k` should be enough.
47 - Make sure directory structure is respected.
48 - The `pic32c/[pic32cxsg]/include/<soc>/README` file should be updated accordingly.
49   If for some reason the file not exists it should be created.
50 - Directory names should be converted to lowercase.
51 - The recommendation is add **all fixups** in the `hal_microchip` instead on the
52   ZephyrRTOS project.
53
54The above are general guidelines and exceptions could happen. In this case, the
55exception should be addressed at review phase.
56
57## The standard API
58
59The PIC32C/PIC32M standard API define all information to access Microchip SoC's
60peripherals. This library does not have namespaces and prefixes which
61easily results in name collision with ZephyrRTOS core and libraries. To avoid
62that situation, macros, enum values and function names should follow two
63general rules:
64
65 - Public API functions must be prefixed with `pic32cxsg_` or .
66 - Public defines and enum values must be uppercase and prefixed with `PIC32CXSG_`
67   or .
68

README.txt

1The MEC1701 HAL was downloaded from:
2
3https://github.com/MicrochipTech/Peripheral-mec1701
4
5Massaged the file with :
6sed -i -e 's/[ \t\r]*$//g' MCHP_MEC1701_bit_fields.h, then file was renamed
7to MCHP_MEC1701.h
8
9Field EOF was renamed to PEOF as it was collapsing with EOF defined in stdio.h
10
11Microchip HAL contianing the above MEC1701 single header and the
12MEC1501 component style is located at:
13
14https://github.com/MicrochipTech/hal_microchip
15
16Version: 1.2.1
17Add missing eSPI Virtual Wires groups 8 - 10 GIRQ definitions.
18Make sure all typedef's of structures are "typedef struct struct_name".
19Remove non-printable character from SAF header
20Add max name to GPIO ID enum
21Rename the SPISLV to SPIP
22
23Version: 1.2.1
24Update eSPI definitions
25Changed all hex upper case 'ABCDEF' to lower case
26Changed all 'ul/UL' unsigned numeric suffix to 'u'
27
28
29The Microchip Polarfire SOC HAL was downloaded from:
30
31https://github.com/polarfire-soc/platform
32
33Addditionally, the bare metal samples from https://github.com/polarfire-soc/polarfire-soc-bare-metal-examples
34are required to extract the Icicle Kit bopard configuration files.
35
36Both are from Tag 21.08
37
38The following changes were made:
39
40 - platform-2021.08 top folder renamed to mpfs and located at modules/hal/microchip
41 - The applications/mpfs-pmp-demo/mpfs-pmp-app-u54-1/src/boards folder is copied to modules/hal/microchip/mpfs
42
43========================================================================
44Microchip MEC5 HAL for MEC1723, MEC1743 and MEC1753 CMSIS based headers
45using common peripheral headers.
46NOTE: Due to a legacy version of MEC172x with register files is in the
47zephyr tree, MEC172x is named MECH172x in  the HAL.
48
49Location:
50https://github.com/MicrochipTech/hal_microchip
51
52Refer to the mec5 subdirectory.
53
54Initial version 0.1
55
56------------------------------------------------
572024-10-01: Microchip MEC5 HAL version 0.3.0 release
58Refer to the mec5 subdirectory.
59
60