Eric,
I am trying to make a change to my design to be able to do the steps described below but am running into problems. The example below is on a single core but of course I intend to extend the idea to multicore.
For IPv4 and UDP packets, I want the PA after matching on MAC address and then IP address and protocol type and ip type matching to be directed to a regular LUT2 port # matching, if it fails then I want it to be directed to a custom LUT2 entry with a arange of UDP ports. So for example UDP port 0x8000 could be the port # I am trying to match on using the pa_addPort command and then if it fails then I want to setup in the pa_addIp to have the nextrtFail set to use custom LUT2 with a range of UDP ports. I am trying to do this so that I can have the PA differentiate between say port 0x8000 and ports 0x8001-0x80FF and can then have the PA tag them with different swInfo words and also possible remove the ethernet and other headers for those packets received on port 0x8000.
Is what I am trying feasible? I cannot see any reason why it should not be the case but...
When I tried setting up by using the pa_addIp command with routeInfo set to {DEST_CONTINUE_LUT2, no custom type} and ntFailInfo set to {DEST_CONTINUE_LUT2, custom LUT2 type and custom Index = 1), the PA LLD returned error -10 which is errconfig. Looking through the pa LLD code for pa_addIp it points to only two cases when this happens:
1. if the ipInfo fields spi, greProto, sctpPort are non-zero which is not the case for my ipInfo structure.
2. if the iptype is not IPV4 or IPv6 which is again not the case for me.
Thanks, Aamir